Excel VBA sinistro
VBA Left è anche una delle funzioni del foglio di lavoro classificate sotto le funzioni di testo utilizzate in VBA con l'applicazione. metodo del foglio di lavoro, restituisce il numero di caratteri specificato dalla parte sinistra della stringa.
Alcune delle funzioni di Excel sono integrate anche con VBA. Di tutte le molte funzioni di testo, VBA LEFT è una di quelle funzioni che usiamo abbastanza spesso rispetto ad altre formule.
Se conosci la funzione Excel LEFT, la funzione VBA LEFT è esattamente la stessa. Può estrarre i caratteri dal lato sinistro della stringa o del valore fornito dall'utente.
La sintassi della funzione SINISTRA è esattamente la stessa della funzione del foglio di lavoro.
Ha due argomenti.
- Stringa: questo nient'altro che il valore o il riferimento di cella. Da questo valore, stiamo cercando di tagliare i personaggi.
- Lunghezza: quanti caratteri vuoi estrarre dalla stringa che hai fornito. Dovrebbe essere un valore numerico.
Come utilizzare la funzione sinistra VBA di Excel?
Puoi scaricare questo modello di funzione sinistra VBA qui - Modello funzione sinistra VBAEsempio 1
Supponi di avere una parola "Sachin Tendulkar" e desideri solo i primi 6 caratteri di questa parola. Mostreremo come estrarre da sinistra usando la funzione LEFT in VBA.
Passaggio 1: creare un nome macro e definire la variabile come stringa.
Codice:
Sub Left_Example1 () Dim MyValue As String End Sub
Passaggio 2: ora assegna un valore a questa variabile
Codice:
Sub Left_Example1 () Dim MyValue As String MyValue = End Sub
Passaggio 3: aprire la funzione SINISTRA.
Codice:
Sub Left_Example1 () Dim MyValue As String MyValue = Left (End Sub
Passaggio 4: il primo argomento è quello di dire qual è la stringa o il valore. Il nostro valore qui è "Sachin Tendulkar".
Codice:
Sub Left_Example1 () Dim MyValue As String MyValue = Left ("Sachin Tendulkar", End Sub
Passaggio 5: la lunghezza non è altro che il numero di caratteri necessari da sinistra. Abbiamo bisogno di 6 caratteri.
Codice:
Sub Left_Example1 () Dim MyValue As String MyValue = Left ("Sachin Tendulkar", 6) End Sub
Passaggio 6: mostra il valore nel VBA MsgBox.
Codice:
Sub Left_Example1 () Dim MyValue As String MyValue = Left ("Sachin Tendulkar", 6) MsgBox MyValue End Sub
Passaggio 7: eseguire la macro utilizzando il tasto F5 o manualmente tramite un'opzione di esecuzione per ottenere il risultato in una finestra di messaggio.
Produzione:
Invece di mostrare il risultato in una finestra di messaggio, possiamo memorizzare questo risultato in una delle celle del nostro foglio di lavoro Excel. Dobbiamo solo aggiungere il riferimento di cella e il valore della variabile.
Codice:
Sub Left_Example1 () Dim MyValue As String MyValue = Left ("Sachin Tendulkar", 6) Range ("A1"). Value = MyValue End Sub
Ora se esegui questo codice otterremo il valore nella cella A1.
Esempio # 2 - SINISTRA con altre funzioni
Nel caso precedente, abbiamo fornito direttamente la lunghezza dei caratteri di cui abbiamo bisogno dalla direzione sinistra, ma questa è più adatta per uno o due valori. Supponiamo che di seguito sia l'elenco dei valori che hai nel tuo foglio Excel.
In ogni caso i caratteri del nome sono diversi l'uno dall'altro, non possiamo specificare direttamente il numero di caratteri di cui abbiamo bisogno da ogni nome.
È qui che entra in gioco la bellezza di altre funzioni. Per fornire il numero di caratteri in modo dinamico, possiamo utilizzare la funzione "VBA Instr".
Nella serie di nomi sopra, abbiamo bisogno di tutti i caratteri da sinistra fino a raggiungere il carattere spazio. Quindi la funzione Instr può restituire quei molti caratteri.
Passaggio 1: allo stesso modo avvia un nome macro Excel e definisci una variabile come stringa.
Codice:
Sub Left_Example2 () Dim FirstName As String End Sub
Passaggio 2: assegnare il valore alla variabile tramite la funzione SINISTRA.
Codice:
Sub Left_Example2 () Dim FirstName As String FirstName = Left (End Sub
Passaggio 3: qui dobbiamo fare riferimento alla cella per ottenere il valore dalle celle. Quindi scrivi il codice come CELLE (2,1) .Value.
Codice:
Sub Left_Example2 () Dim FirstName As String FirstName = Left (Cells (2,1) .Value, End Sub
Passaggio 4: la prossima cosa è quanti caratteri abbiamo bisogno. Dopo aver applicato la funzione LEFT non inserire manualmente la lunghezza dei caratteri, applica la funzione Instr.
Codice:
Sub Left_Example2 () Dim FirstName As String FirstName = Left (Cells (2, 1) .Value, InStr (1, Cells (2, 1) .Value, "")) End Sub
Passaggio 5: memorizzare questo risultato nella cella B2. Quindi il codice è CELLS (2,2) .value = FirstName
Codice:
Sub Left_Example2 () Dim FirstName As String FirstName = Left (Cells (2, 1) .Value, InStr (1, Cells (2, 1) .Value, "")) Celle (2, 2) .Value = FirstName End Sub
Step 6: Run this code manually or through F5 we will get the first name.
We got the first name for the one name, but we have several other names as well. We cannot write 100 lines of code to extract, then how do we extract?
This is where the beauty of loops comes into the picture. Below is the loop code which can eliminate all the unwanted steps and can do the job in 3 lines.
Code:
Sub Left_Example2() Dim FirstName As String Dim i As Integer For i = 2 To 9 FirstName = Left(Cells(i, 1).Value, InStr(1, Cells(i, 1).Value, " ") - 1) Cells(i, 2).Value = FirstName Next i End SubNote: Instr function returns space character as well, so we need to minus 1 from the Instr result.
If you run this code we will get first name values.
Output:
Things to Remember
- Left can extract only from left.
- VBA Instr function finds the position of the supplied in character in the string.