Ciao,
Per creare una macro in Excel che salvi il contenuto delle celle selezionate in una colonna in un file di testo con codifica UTF-8, puoi seguire i passaggi seguenti:
Apri Excel e vai alla scheda "Developer". Se non vedi la scheda "Developer" nella barra del menu, abilita questa scheda andando su "File" -> "Opzioni" -> "Personalizza barra multifunzione" e attiva la casella "Sviluppo".
Nella scheda "Developer", clicca su "Visualizza codice" per aprire l'Editor VBA.
Nel Editor VBA, inserisci il seguente codice:
----------------
Sub SalvaComeUTF8()
Dim selectedRange As Range
Dim filePath As String
' Verifica se è stata selezionata una colonna
If Selection.Columns.Count <> 1 Then
MsgBox "Seleziona una singola colonna di celle", vbExclamation
Exit Sub
End If
' Ottieni il percorso del file
filePath = Application.GetSaveAsFilename(FileFilter:="File di testo (*.txt), *.txt", Title:="Salva come")
' Esci se l'utente ha annullato il salvataggio
If filePath = "Falso" Then Exit Sub
' Ottieni la gamma selezionata
Set selectedRange = Selection
' Salva il contenuto nel file UTF-8
SaveAsUTF8 filePath, selectedRange.Value
MsgBox "Contenuto salvato correttamente in " & filePath, vbInformation
End Sub
Sub SaveAsUTF8(filePath As String, content As String)
Dim utf8Stream As Object
Set utf8Stream = CreateObject("ADODB.Stream")
' Configura il flusso come testo Unicode
utf8Stream.Charset = "UTF-8"
utf8Stream.Open
utf8Stream.WriteText content
' Salva il flusso nel file
utf8Stream.SaveToFile filePath, 2 ' 2 corrisponde a adSaveCreateOverWrite
' Chiudi il flusso
utf8Stream.Close
Set utf8Stream = Nothing
End Sub
----------------
Chiudi l'Editor VBA.
Torna in Excel e seleziona la colonna di celle che desideri salvare nel file di testo UTF-8.
Vai alla scheda "Developer" e clicca su "Macros". Troverai la macro "SalvaComeUTF8" nella lista delle macro disponibili. Seleziona e fai clic su "Esegui".
Verrà visualizzata una finestra di dialogo per selezionare il percorso e il nome del file di testo. Dopo aver fatto la selezione, clicca su "Salva".
Questo salverà il contenuto delle celle selezionate in un file di testo con codifica UTF-8.
|