Il link purtroppo non porta a nessu file scaricabile...
Comunque la larghezza da assegnare a una colonna affinche' visualizzi tutto il suo contenuto dipende dal font, dalla dimensione dei caratteri, dalle opzioni grafiche impostate in ogni cella. Se il font e' a spaziatura variabile, ovviamente lo spazio necessario per contenere dieci "i" e' inferiore di molto a quello necessario per dieci "m".
In Excel il comando "adatta larghezza colonna", che corrisponde al doppioclick sulla linea di separazione tra una intestazione di colonna e la successiva, fa i calcoli automaticamente per te. Se piu' colonne sono selezionate, il doppioclick ha effetto su tutte le colonne selezionate.
In vba l' "adatta larghezza colonna" corrisponde a
Range(Intervallo).EntireColumn.AutoFitInoltre, se vuoi visualizzare con NotePad un listato perfettamente incolonnato, lo potrai fare solo con un font a spaziatura fissa; ne' mi risulta che potrai visualizzare caratteri Times new Roman e contemporaneamente Symbol.
Cio' detto, la cosa piu' generica che mi posso immaginare per avvicinarmi alla richiesta iniziale e' una variante alla macro Salvatxt, che invece di richiedere all' utente la larghezza con cui salvare una colonna la calcola sulla base del contenuto di colonna:
- Codice: Seleziona tutto
Sub salvatxt2()
Dim myStringa As String, I As Long, J As Long, ListaCol, ListaLargh(), DestFile As String
'
DestFile = "C:\Users\UTENTE\PERCORSO\PIPPO_Cartel1.txt" '<<1
ListaCol = Array(1, 2, 3, 4, 5) '<< Le colonne da copiare
ReDim ListaLargh(LBound(ListaCol) To UBound(ListaCol))
For J = LBound(ListaCol, 1) To UBound(ListaCol, 1)
ListaLargh(J) = Evaluate("=MAX(len(" & Columns(ListaCol(J)).Address & "))") + 1
Next J
'
FileNum = FreeFile()
Open DestFile For Output As #FileNum
For I = 1 To ActiveSheet.UsedRange.Rows.Count
myStringa = ""
For J = LBound(ListaCol, 1) To UBound(ListaCol, 1)
myStringa = myStringa & Left(Cells(I, ListaCol(J)).Value & Space(ListaLargh(J)), ListaLargh(J))
Next J
Print #FileNum, myStringa
Next I
Close #FileNum
End Sub
Anche qui, le istruzioni marcate << sono da personalizzare; in particolare in ListaCol devi inserire il numero delle colonne che vuoi salvare.
Se il nome del file da generare non e' fisso useremo un' altra tecnica, per il salvataggio; dopo che hai confermato che il risultato ottenuto sarebbe ok.
Ciao