Vai al contenuto principale

Come forzare la stringa di testo in maiuscolo / minuscolo / caso corretto in Excel?

In Excel, quando si immettono alcune lettere o parole nelle celle, si desidera forzare le stringhe di testo in maiuscolo anche se sono state immesse le lettere minuscole o maiuscole e viceversa. La maggior parte di noi può considerare la funzione di convalida dei dati in Excel, con questa funzione, riceveremo un avviso quando non digitiamo il caso corretto del testo. In questo articolo, introdurrò alcuni modi interessanti per forzare il testo in maiuscolo, minuscolo o maiuscolo come necessario.

Forza le stringhe di testo in maiuscolo / minuscolo / appropriato con la convalida dei dati

Forza le stringhe di testo in maiuscolo / minuscolo / corretto con codice VBA

Cambia il testo in MAIUSCOLO/minuscolo/Maiuscolo corretto con Kutools per Excel buona idea 3


La convalida dei dati è uno strumento potente in Excel, può aiutarci a fare molte operazioni, con il suo aiuto, possiamo anche forzare le lettere maiuscole, minuscole o appropriate delle stringhe di testo durante la digitazione, per favore fai come segue:

1. Vai a fare clic Dati > Convalida dati > Convalida dati, vedi screenshot:

doc-force-maiuscolo-1

2. Nel Convalida dati dialogo, sotto il Impostazioni profilo scheda, fare clic su Consentire elenco a discesa e scegli Custom opzione, quindi nell'opzione Formula casella di testo, immettere questa formula = ESATTO (MAIUSCOLO (A1), A1), (A1 sta per una colonna che applicherai questa funzione, puoi cambiarla secondo le tue necessità), vedi screenshot:

doc-force-maiuscolo-1

3. Quindi puoi creare un avviso di cui hai bisogno, fai clic Avviso di errore scheda e selezionare Fermare dal Style elenco a discesa, nell'angolo destro del file Messaggio di errore casella di testo, inserisci il tuo messaggio di avviso, vedi screenshot:

doc-force-maiuscolo-1

4. E poi clicca OK per chiudere la finestra di dialogo, ora quando inserisci la stringa di testo non in maiuscolo nella colonna A, verrà visualizzata una finestra di avviso per ricordarti di inserire le lettere maiuscole.

doc-force-maiuscolo-1

Nota:

Se è necessario forzare le stringhe di testo in minuscolo o in maiuscolo, applicare le seguenti formule nel file Convalida dati nel passaggio 2.

Forza in minuscolo: = ESATTO (INFERIORE (A1), A1);

Forza al caso corretto: = ESATTO (CORRETTO (A1), A1)


Con il seguente codice VBA, quando inserisci le parole minuscole in una cella, il testo minuscolo verrà modificato automaticamente in lettere maiuscole.

1. Tieni premuto il ALT + F11 chiavi e apre il file Finestra di Microsoft Visual Basic, Applications Edition.

2. Quindi scegli il foglio di lavoro usato da sinistra Esplora progetti, fare doppio clic per aprire il file Moduli, quindi copia e incolla il seguente codice VBA nel modulo vuoto:

Codice VBA: forza la stringa di testo in maiuscolo

Private Sub Worksheet_Change(ByVal Target As Range)
'Update 20140603
Target.Value = VBA.UCase(Target.Value)
End Sub

doc-force-maiuscolo-1

3. Quindi salva e chiudi questo codice per tornare al foglio di lavoro, ora quando inserisci una stringa di testo ogni volta che è minuscolo o maiuscolo, diventerà maiuscolo dopo aver toccato il entrare chiave automaticamente.

Note:

1. Questo codice viene applicato all'intero foglio di lavoro.

2. Se non riesci a trovare il PRiquadro Esplora risorse nella finestra, puoi fare clic Visualizza > Esplora progetti per aprirlo.

3. Per forzare le parole minuscole o maiuscole, puoi applicare il seguente codice VBA: (La procedura è la stessa di cui sopra)

Codice VBA: forza la stringa di testo in minuscolo

Private Sub Worksheet_Change(ByVal Target As Range)
'Update 20140603
Target.Value = VBA.LCase(Target.Value)
End Sub

Codice VBA: forza la stringa di testo nel caso corretto

Private Sub Worksheet_Change(ByVal Target As Range)
'Update 20140603
Target.Value = Application.WorksheetFunction.Proper(Target.Value)
End Sub

Se vuoi solo cambiare alcuni testi specifici in MAIUSCOLO, minuscolo o maiuscolo, puoi applicare il Cambia caso utilità di Kutools for Excel per farlo rapidamente.

Kutools for Excel, con oltre 300 funzioni utili, rende il tuo lavoro più facile. 

Dopo shavasana, sedersi in silenzio; saluti; installazione gratuita Kutools per Excel, per favore fai come di seguito:

1. Selezionare i testi che si desidera modificare maiuscole e minuscole e fare clic Kutools > Testo > Cambia caso. Vedi screenshot:
caso di modifica del documento 6

2. Nel Cambia caso finestra di dialogo, controlla l'opzione operativa di cui hai bisogno e puoi visualizzare in anteprima il risultato nel file Anteprima Pannello. Vedi screenshot:
caso di modifica del documento 2

3. Clic Ok or APPLICA e i testi sono stati cambiati caso.

 Cambia in MAIUSCOLO  Cambia in caso corretto  Cambia in caso di frase
 caso di modifica del documento 3  caso di modifica del documento 4 caso di modifica del documento 5 

I migliori strumenti per la produttività in ufficio

🤖 Assistente AI di Kutools: Rivoluziona l'analisi dei dati basandosi su: Esecuzione intelligente   |  Genera codice  |  Crea formule personalizzate  |  Analizzare i dati e generare grafici  |  Richiama le funzioni di Kutools...
Funzioni popolari: Trova, evidenzia o identifica i duplicati   |  Elimina righe vuote   |  Combina colonne o celle senza perdere dati   |   Round senza formula ...
Super ricerca: VLookup a criteri multipli    VLookup a valori multipli  |   VLookup su più fogli   |   Ricerca fuzzy ....
Elenco a discesa avanzato: Crea rapidamente un elenco a discesa   |  Elenco a discesa dipendente   |  Elenco a discesa a selezione multipla ....
Gestore di colonna: Aggiungi un numero specifico di colonne  |  Sposta colonne  |  Attiva/disattiva lo stato di visibilità delle colonne nascoste  |  Confronta intervalli e colonne ...
Funzionalità in primo piano: Messa a fuoco della griglia   |  Vista di progettazione   |   Grande barra delle formule    Gestore di cartelle di lavoro e fogli   |  Resource Library (Testo automatico)   |  Date picker   |  Combina fogli di lavoro   |  Crittografa/decrittografa le celle    Invia e-mail per elenco   |  Super filtro   |   Filtro speciale (filtro grassetto/corsivo/barrato...) ...
I 15 migliori set di strumenti12 Testo Strumenti (aggiungi testo, Rimuovi personaggi, ...)   |   50+ Grafico Tipi (Diagramma di Gantt, ...)   |   40+ Pratico Formule (Calcola l'età in base al compleanno, ...)   |   19 Inserimento Strumenti (Inserisci il codice QR, Inserisci immagine dal percorso, ...)   |   12 Conversione Strumenti (Numeri in parole, Conversione di valuta, ...)   |   7 Unisci e dividi Strumenti (Combina righe avanzate, Celle divise, ...)   |   ... e altro ancora

Potenzia le tue competenze di Excel con Kutools per Excel e sperimenta l'efficienza come mai prima d'ora. Kutools per Excel offre oltre 300 funzionalità avanzate per aumentare la produttività e risparmiare tempo.  Fai clic qui per ottenere la funzionalità di cui hai più bisogno...

Descrizione


Office Tab porta l'interfaccia a schede in Office e semplifica notevolmente il tuo lavoro

  • Abilita la modifica e la lettura a schede in Word, Excel, PowerPoint, Publisher, Access, Visio e Project.
  • Apri e crea più documenti in nuove schede della stessa finestra, piuttosto che in nuove finestre.
  • Aumenta la produttività del 50% e riduce ogni giorno centinaia di clic del mouse!
Comments (10)
No ratings yet. Be the first to rate!
This comment was minimized by the moderator on the site
Please suggest modifications in the VBA code to force the text strings to change to the desired format (Upper/Lower/Proper case) in selected/specified cells only rather than changing the Case of the text strings in the entire worksheet.
This comment was minimized by the moderator on the site
Hello, DS,
To apply the code to a specified range instead of entire worksheet, please apply the following code:
VBA code: Force text string to uppercase
Private Sub Worksheet_Change(ByVal Target As Range)
    Dim SpecifiedRange As Range
    Set SpecifiedRange = Me.Range("A1:A10")
    If Not Intersect(Target, SpecifiedRange) Is Nothing Then
        Application.EnableEvents = False
        Target.Value = VBA.UCase(Target.Value)
        Application.EnableEvents = True
    End If
End Sub


VBA code: Force text string to lowercase
Private Sub Worksheet_Change(ByVal Target As Range)
    Dim SpecifiedRange As Range
    Set SpecifiedRange = Me.Range("A1:A10")
    If Not Intersect(Target, SpecifiedRange) Is Nothing Then
        Application.EnableEvents = False
        Target.Value = VBA.LCase(Target.Value)
        Application.EnableEvents = True
    End If
End Sub


VBA code: Force text string to propercase
Private Sub Worksheet_Change(ByVal Target As Range)
    Dim SpecifiedRange As Range
    Set SpecifiedRange = Me.Range("A1:A10")
    If Not Intersect(Target, SpecifiedRange) Is Nothing Then
        Application.EnableEvents = False
        Target.Value = Application.Proper(Target.Value)
        Application.EnableEvents = True
    End If
End Sub


Please have a try, thank you!
This comment was minimized by the moderator on the site
Use: On Error Resume Next

Private Sub Worksheet_Change(ByVal Target As Range)
'Update 20140603
On Error Resume Next
Target.Value = Application.WorksheetFunction.Proper(Target.Value)
End Sub
This comment was minimized by the moderator on the site
muchas gracias, sirvio enormemente estos codigos
This comment was minimized by the moderator on the site
This worked for me, however if you went to delete the contents of the cell then a "runtime error '13': type mismatch" came up

Any ideas?
This comment was minimized by the moderator on the site
i have the same problem. if you know how to deal with it please tell me!
This comment was minimized by the moderator on the site
Hello, which method you use will come up the errors?
This comment was minimized by the moderator on the site
Like your VBA solution, but how could I limit it to a single column and format other columns differently, e.g., columns A and C force uppercase, column B force proper case?
This comment was minimized by the moderator on the site
I do not know which VBA can handle your job (some columns in uppercase, some in proper case), but the data validation can solve it, why do not use it?
This comment was minimized by the moderator on the site
thanks for the macro to convert all entries to capital letters, but is there something i need to do to stop the macro from crashing excel every fe minutes? Appreciate the help!
There are no comments posted here yet
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations