Testo VBA - Come utilizzare la funzione di testo in Excel VBA con esempi?

Sommario:

Anonim

Funzione di testo VBA di Excel

La funzione di testo VBA viene utilizzata solo in VBA. Sembra che converta i numeri in testo. Ma in realtà, converte i numeri in qualsiasi formato come ora, data o intervallo di numeri. Per questo, dobbiamo consentire a questa funzione di abilitare come Classe.

Se vedremo l'argomento di VBA Text, vedremo che è costituito da Arg1 e Arg2 come mostrato di seguito.

  • Arg1 - Qui inseriremo il valore che vogliamo convertire nel formato standard.
  • Arg2 - E qui selezioneremo il formato in cui vogliamo vedere l'output come.

Entrambe le variabili saranno definite come String.

Come utilizzare la funzione di testo VBA di Excel?

Impareremo come utilizzare una funzione di testo VBA con alcuni esempi in Excel.

Puoi scaricare questo modello di testo Excel VBA qui - Modello di testo Excel VBA

Funzione di testo VBA - Esempio n. 1

Convertiremo il testo o i numeri nel formato standard in tutti i prossimi esempi in diversi modi.

Seguire i passaggi seguenti per utilizzare la funzione di testo in VBA.

Passaggio 1: aprire un modulo disponibile nella scheda del menu Inserisci come mostrato di seguito.

Passaggio 2: nel modulo VBA aperto, scrivere la sottoprocedura di VBA Text come mostrato di seguito.

Codice:

 Sottotitolo VBA_Text1 () End Sub 

Passaggio 3: in base alla sintassi di VBA Text, sono necessari due argomenti. Quindi, definisci la prima variabile come String dove daremo l'input come mostrato di seguito.

Codice:

 Sottotitolo VBA_Text1 () Input dim1 come stringa Sottotitolo Sub 

Passaggio 4: ora definire un'altra variabile in cui otterremo l'output. E questo sarebbe anche come stringa.

Codice:

 Sottotitolo VBA_Text1 () Input dim1 come stringa Output dim come stringa Sottotitolo sub 

Passaggio 5: ora considera qualsiasi numero casuale che dobbiamo convertire nel formato standard. Questo potrebbe essere il numero che vogliamo vedere o potrebbe essere qualsiasi numero casuale. Supponiamo, se consideriamo un numero decimale 0, 123 e vediamo cosa otterremmo.

Codice:

 Sub VBA_Text1 () Dim Input1 Come String Dim Output Come String Input1 = 0.123 End Sub 

Passaggio 6: ora nell'altra variabile definita che è Output, la useremo per inserire il testo VBA. Ora, questa funzione verrà utilizzata come funzione Foglio di lavoro come mostrato di seguito.

Passaggio 7: selezionare la funzione Testo VBA dall'elenco delle funzioni integrate. Ora, secondo la sintassi, useremo la nostra variabile e il formato in cui vogliamo convertirlo come formato standard Arg1 come in cui vogliamo convertire quel numero selezionato.

Codice:

 Sub VBA_Text1 () Dim Input1 Come String Dim Output Come String Input1 = 0.123 Output = WorksheetFunction.Text (End Sub 

Step 8: In Arg1 scriviamo la variabile Input1 che ha il nostro numero che dobbiamo convertire e Arg2 sarà il formato come HH: MM: SS AM / PM.

Codice:

 Sub VBA_Text1 () Dim Input1 Come String Dim Output Come String Input1 = 0.123 Output = WorksheetFunction.Text (Input1, "hh: mm: ss AM / PM") End Sub 

Passaggio 9: ora utilizza MsgBox per vedere cosa viene fornito come output.

Codice:

 Sub VBA_Text1 () Dim Input1 Come String Dim Output Come String Input1 = 0.123 Output = WorksheetFunction.Text (Input1, "hh: mm: ss AM / PM") MsgBox Output End Sub Sub 

Passaggio 10: eseguire ora il codice premendo il tasto F5 o facendo clic sul pulsante Riproduci. Otterremo la finestra di messaggio con un messaggio come 02:57:07 AM .

Vedremo un'altra volta se scegliamo un altro numero.

Passaggio 11: Ora cambiamo il numero di input come 12345 e cambiamo il formato di output in GG-MMM-AAAA come mostrato di seguito.

Codice:

 Sub VBA_Text2 () Dim Input1 Come String Dim Output Come String Input1 = 12345 Output = WorksheetFunction.Text (Input1, "DD-MM-yyyy") MsgBox Output End Sub Sub 

Passaggio 12: eseguire nuovamente il codice. Otterremo la data il 18 ottobre 1933

Se conosciamo il numero esatto con cui possiamo ottenere una data o un'ora esatta, allora sarà meglio.

Funzione di testo VBA - Esempio n. 2

C'è un altro modo diretto per applicare il testo VBA. Per questo, inseriremo alcuni numeri nel foglio Excel come mostrato di seguito.

Seguire i passaggi seguenti per utilizzare la funzione di testo in VBA.

Passaggio 1: in un modulo, scrivi la sottocategoria di VBA Text come mostrato di seguito.

Codice:

 Sottotitolo VBA_Text3 () End Sub 

Passaggio 2: selezionare l'intervallo di celle in cui si desidera visualizzare l'output. Consideriamo che quelle celle vanno da B1 a B5.

Codice:

 Intervallo VBA_Text3 () secondario ("B1: B5"). Valore Fine Sottotitolo 

Passaggio 3: ora seleziona l'intervallo di celle che dobbiamo convertire. Qui l'intervallo va dalla cella A1 alla A5 insieme alla funzione Foglio di lavoro.

Codice:

 Intervallo VBA_Text3 () secondario ("B1: B5"). Valore = intervallo ("A1: A5"). Foglio di lavoro. End Sub 

Passaggio 4: selezionare insieme la funzione Indice valutandola.

Codice:

 Intervallo VBA_Text3 () secondario ("B1: B5"). Valore = intervallo ("A1: A5"). Foglio di lavoro.Valutazione ("INDICE (End Sub 

Passaggio 5: ora considera la funzione Testo e seleziona l'intervallo che dobbiamo convertire. E il formato deve essere in più zeri.

Codice:

 Intervallo VBA_Text3 () secondario ("B1: B5"). Valore = intervallo ("A1: A5"). Foglio di lavoro.Valutazione ("INDICE (TEXT (A1: A5, " "'000000" "), )") End Sub 

Passaggio 6: eseguire ora il codice premendo il tasto F5 o facendo clic sul pulsante Riproduci. Vedremo i numeri disponibili nella colonna A ora convertiti in testo con più zeri che porta a numeri di 6 cifre nella colonna B.

Ora vediamo cosa succederebbe se cambiassimo di nuovo il formato di output da zero iniziali a formato ora.

Passaggio 7: In Arg2, inserisci il formato dell'ora come HH: MM: SS e modifica la cella dell'intervallo di output da C1 a C5 senza disturbare l'output ottenuto dal codice precedente.

Codice:

 Intervallo VBA_Text3 () secondario ("C1: C5"). Valore = intervallo ("C1: C5"). Foglio di lavoro. Valutazione ("INDICE (TESTO (A1: A5, " "hh: mm: ss" "), )" ) End Sub 

Passaggio 8: eseguire nuovamente il codice. Vedremo, la colonna C verrà riempita con il formato orario predefinito.

Proviamo un altro esperimento.

Passo 9: In questo, cambieremo l'intervallo di celle di output da D1 a D5 dove vedremo il testo VBA. E cambia Arg2, nel formato Data che è GG-MMM-AAAA come mostrato di seguito.

Codice:

 Intervallo VBA_Text3 () secondario ("D1: D5"). Valore = intervallo ("D1: D5"). Foglio di lavoro.Valutare ("INDICE (TEXT (A1: A5, " "DD-MMM-YYYY" "), )" ) End Sub 

Passaggio 10: eseguire nuovamente il codice. Questa volta vedremo, la data verrà visualizzata nella colonna D. E quelle date sono nel formato che o nel formato GG-MMM-AAAA.

Ecco come possiamo cambiare i numeri in qualsiasi formato standard che vogliamo.

Pro e contro della funzione di testo VBA di Excel

  • Questo è facile da implementare.
  • Possiamo cambiare i numeri in qualsiasi formato che vogliamo vedere.
  • Non possiamo convertire alcun testo nel formato numerico richiesto.

Cose da ricordare

  • VBA Text converte solo numeri in numeri. Ma il formato dei numeri sarà il formato standard come Data, Ora, la combinazione di Data e Ora o qualsiasi sequenza di cifre.
  • Se stai applicando e modificando i numeri in un formato di zeri precedenti, metti l'apostrofo prima degli zeri. In questo modo i numeri verranno convertiti in testo e verranno visualizzati gli zeri.
  • Se proviamo a convertire qualsiasi testo con VBA Text, fornirà l'output solo come Testo.
  • Per ottenere l'output esatto, dobbiamo conoscere la combinazione di numeri che fornirà l'ora e la data esatte che vogliamo vedere.
  • Una volta fatto, salva sempre il codice completo nel formato abilitato per le macro, in modo che il codice non vada perso.

Articoli consigliati

Questa è una guida alla funzione di testo VBA. Qui discutiamo come utilizzare la funzione di testo in Excel VBA insieme ad esempi pratici e modelli di Excel scaricabili. Puoi anche consultare i nostri altri articoli suggeriti:

  1. Copia incolla funzione in VBA
  2. Sottostringa Funzione Excel
  3. Abbonamento VBA fuori intervallo
  4. Excel ISNUMBER Formula