Excel: Automatizza Maiuscolo e Minuscolo con VBA

Super MarkeTHINK: tutto ciò che serve per far crescere il tuo business

Created with Sketch.

Excel: Automatizza Maiuscolo e Minuscolo con VBA

Excel Automatizza Maiuscolo e Minuscolo con funzioni e VBA

Come Trasformare Testo in Maiuscolo, Minuscolo e Proper Case in Excel con VBA

Impara a creare macro VBA in Excel per trasformare il testo selezionato in maiuscolo, minuscolo e Proper Case. Segui la nostra guida passo passo per automatizzare facilmente queste operazioni.

Elenco Argomenti:

  • Introduzione alla trasformazione del testo in Excel
  • Creazione di macro VBA per automatizzare la trasformazione del testo
  • Esecuzione delle macro per trasformare il testo in maiuscolo, minuscolo e Proper Case
  • Conclusioni e suggerimenti per l’uso efficiente delle macro

Livello di difficoltà:

Facile

Tempo di lettura:

5 minuti

Hai mai desiderato automatizzare la trasformazione del testo in Excel? Con le macro VBA, puoi facilmente trasformare il testo selezionato in maiuscolo, minuscolo o Proper Case. In questo articolo, ti guiderò passo passo nella creazione di tre macro VBA che renderanno questa operazione semplice e veloce. La frase chiave principale è “Macro VBA trasformare testo”.

Come Creare le Macro VBA per Trasformare il Testo

1 – Trasformare il Testo in Maiuscolo

Per trasformare il testo delle celle selezionate in maiuscolo, segui questi passaggi:

  1. Apri l’editor VBA:
    • Premi Alt + F11 per aprire l’editor di Visual Basic.
  2. Inserisci un nuovo modulo:
    • Nella barra degli strumenti, vai su Inserisci > Modulo.
  3. Copia e incolla il codice:
Sub TrasformaInMaiuscolo()
    Dim cell As Range
    For Each cell In Selection
        If Not IsEmpty(cell.Value) And IsText(cell.Value) Then
            cell.Value = UCase(cell.Value)
        End If
    Next cell
End Sub

Function IsText(cellValue As Variant) As Boolean
    IsText = VarType(cellValue) = vbString
End Function

Salva e chiudi l’editor VBA:

  • Salva il progetto e chiudi l’editor di Visual Basic.

Assegna la macro a un pulsante:

  • Inserisci un pulsante nella scheda Sviluppo e assegna la macro TrasformaInMaiuscolo.
  • Fai la stecca cosa per le altre due macro (Tutto Maiuscolo e Inziale Maiuscola) qui sotto trovi il codice:
2 – Trasformare il Testo in Minuscolo
Sub TrasformaInMinuscolo()
    Dim cell As Range
    For Each cell In Selection
        If Not IsEmpty(cell.Value) And IsText(cell.Value) Then
            cell.Value = LCase(cell.Value)
        End If
    Next cell
End Sub

Function IsText(cellValue As Variant) As Boolean
    IsText = VarType(cellValue) = vbString
End Function

3 – Trasformare il Testo con la prima lettera Maiuscola (Proper Case)

Sub TrasformaInProperCase()
    Dim cell As Range
    For Each cell In Selection
        If Not IsEmpty(cell.Value) And IsText(cell.Value) Then
            cell.Value = Application.WorksheetFunction.Proper(cell.Value)
        End If
    Next cell
End Sub

Function IsText(cellValue As Variant) As Boolean
    IsText = VarType(cellValue) = vbString
End Function

ATTENZIONE!

Per rendere le macro disponibili ogni volta che apri Excel, devi salvarle in un file di Excel specifico chiamato Personal Macro Workbook (Personal.xlsb). Questo file viene caricato automaticamente ogni volta che apri Excel, rendendo le tue macro accessibili globalmente.

Passaggi per salvare le macro nel Personal Macro Workbook

  1. Apri l’editor VBA:
    • Premi Alt + F11 per aprire l’editor di Visual Basic.
  2. Trova il Personal Macro Workbook:
    • Se non hai già un Personal Macro Workbook, Excel ti chiederà di crearne uno la prima volta che registri una macro e scegli di salvarla in “Personal Macro Workbook”.
    • Puoi forzare la creazione registrando una macro:
      1. Vai alla scheda Sviluppo (Developer) nella barra multifunzione.
      2. Clicca su Registra macro.
      3. Nel campo “Memorizza macro in”, seleziona Cartella macro personale.
      4. Clicca su OK, poi Interrompi registrazione.
  3. Accedi al Personal Macro Workbook:
    • Nell’editor VBA, dovrebbe esserci un progetto denominato “VBAProject (PERSONAL.XLSB)”. Se non lo vedi, chiudi e riapri Excel e poi riapri l’editor VBA.
  4. Inserisci un nuovo modulo nel Personal Macro Workbook:
    • Nella barra degli strumenti dell’editor VBA, vai su Inserisci > Modulo.
  5. Copia e incolla il codice delle macro nel modulo:
    • Incolla il codice delle macro desiderate nel modulo.

Se vuoi usare tutte e tre le macro (maiuscolo, minuscolo, proper) puoi creare un unico modulo e incollare direttamente questo codice che comprende tutto quanto:

VEDI INMMAGINE SOTTO

Sub TrasformaInMaiuscolo()
    Dim cell As Range
    ' Cicla attraverso ogni cella dell'intervallo selezionato
    For Each cell In Selection
        ' Verifica che la cella non sia vuota e che contenga testo
        If Not IsEmpty(cell.Value) And IsText(cell.Value) Then
            ' Trasforma il testo in maiuscolo
            cell.Value = UCase(cell.Value)
        End If
    Next cell
End Sub


Sub TrasformaInMinuscolo()
    Dim cell As Range
    ' Cicla attraverso ogni cella dell'intervallo selezionato
    For Each cell In Selection
        ' Verifica che la cella non sia vuota e che contenga testo
        If Not IsEmpty(cell.Value) And IsText(cell.Value) Then
            ' Trasforma il testo in minuscolo
            cell.Value = LCase(cell.Value)
        End If
    Next cell
End Sub

Sub TrasformaInProperCase()
    Dim cell As Range
    ' Cicla attraverso ogni cella dell'intervallo selezionato
    For Each cell In Selection
        ' Verifica che la cella non sia vuota e che contenga testo
        If Not IsEmpty(cell.Value) And IsText(cell.Value) Then
            ' Trasforma il testo in Proper Case
            cell.Value = Application.WorksheetFunction.Proper(cell.Value)
        End If
    Next cell
End Sub


Function IsText(cellValue As Variant) As Boolean
    ' Verifica se il valore della cella è testo
    IsText = VarType(cellValue) = vbString
End Function


nota che questa parte di codice

Function IsText(cellValue As Variant) As Boolean
    IsText = VarType(cellValue) = vbString
End Function


comparirà SOLO UNA VOLTA!

Facebook, Instagram, YouTube, Tik Tok, LinkedIn !

facebook graficaeformazioneInstagram graficaeformazioneyoutube graficaeformazioneLinkedin graficaeformazionetwitter graficaeformazione

 

2 risposte

  1. Fantastico Francesca, non che prima non funzionasse ma ora è perfetto. L’unica cosa che ho fatto è aver aggiunto al tuo ultimo codice le due righe finali. “Selezionare la cella sottostante” e il MsgBox, li trovo tutti e due comodi.
    Scusa se sono intervenuto un paio di volte per questa problematica, magari è capitato solo a me :-(. Non ho pensato di salvare le macro nel Workbook per poterle rendere disponibili su ogni cartella.
    Adoro Excel ed è grazie a persone come te che ci si appassiona.
    Grazie per i tuoi preziosi consigli. Permettimi un abbraccio virtuale per l’avermi insegnato qualcosa in più.
    Giuseppe

Lascia un commento