View Single Post
  #2 (permalink)  
Vecchio 02-02-2024, 06:12 PM
Yves Yves non è in linea
Member
 
Registrato dal: Oct 2007
Messaggi: 42
predefinito

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.
Rispondi quotando