PDA

View Full Version : [EXCEL VBA]


neosephiroth86
04-11-2012, 18:09
Salve a tutti!
Ho avuto la necessità di estrarre dei dati da un foglio excel .xls in un file con estensione .dat.
Per far questo mi sono affidato ad una macro..che funziona egregiamente ma vorrei capire meglio come...
Se mi poteste commentare qualche riga ve ne sarei grato..soprattutto le parti come app= e comm=

Grazie

Vi posto il codice
Sub Macro()

Path$ = Application.ActiveWorkbook.Path & "\" ' percorso per salvataggio file
Nomefile$ = "model.dat" ' nome del file da salvare
PF$ = Path$ & Nomefile$ ' costruisce percorso completo
nriG% = 191 ' imposta n° righe foglio generale
ncoG% = 26 ' imposta n° colonne foglio generale

If Dir(PF$) <> "" Then ' verifica se il file esiste già
msgrisp = MsgBox("Il file " & PF$ & " esiste già." & Chr(13) & "Sostituirlo?", 308, "Messaggio Macro Creafile")
If msgrisp = 7 Then End
End If
F% = FreeFile ' acquisisce primo numero di file libero
Open PF$ For Output As #F% ' apre un file per output
' considero il foglio GENERALE
For riga% = 1 To nriG%
For col% = 1 To ncoG%
app = Chr(32) + Replace(Sheets("Generale").Cells(riga%, col%), ",", ".")
If col% = 1 Then
comm = InStrB(app, "&")
End If
If app <> " " Then
If IsNumeric(app) Or comm Then
Print #F%, app; 'Scrive dati nel file
Else
Print #F%, app;
End If
End If
Next col%
comm = False
Print #F%, Chr(59) 'punto e virgola
Next riga%

Close #F% 'Chiude File
'
MsgBox "Creato file " & PF$, 64, "Messaggio Macro Creafile"
'


End Sub