Funzione foglio di lavoro VBA - Come utilizzare WorksheetFunction in VBA?

Funzioni del foglio di lavoro VBA di Excel

La funzione foglio di lavoro in VBA viene utilizzata quando dobbiamo fare riferimento a un foglio di lavoro specifico, normalmente quando creiamo un modulo il codice viene eseguito nel foglio attualmente attivo della cartella di lavoro ma se vogliamo eseguire il codice nel foglio di lavoro specifico usiamo la funzione foglio di lavoro, questa funzione ha vari usi e applicazioni in VBA.

La cosa migliore di VBA è che, come il modo in cui utilizziamo le formule nel foglio di lavoro in modo simile, anche VBA ha le sue funzioni. Se questo è il migliore, allora ha anche una bella cosa. Cioè "possiamo usare anche le funzioni del foglio di lavoro in VBA".

Sì!!! Hai sentito bene; possiamo accedere anche alle funzioni del foglio di lavoro in VBA. Possiamo accedere ad alcune delle funzioni del foglio di lavoro durante la scrittura del codice e renderlo parte del nostro codice.

Come utilizzare le funzioni del foglio di lavoro in VBA?

Nel foglio di lavoro, tutte le formule iniziano con il segno uguale (=), analogamente alla codifica VBA, per accedere alle formule del foglio di lavoro, dovremmo usare la parola "WorksheetFunction".

Prima di inserire qualsiasi formula del foglio di lavoro, è necessario menzionare il nome dell'oggetto "WorksheetFunction", quindi inserire un punto (.), Quindi verrà visualizzato un elenco di tutte le funzioni disponibili sotto questo oggetto.

In questo articolo, ci concentreremo esclusivamente su come utilizzare le funzioni del foglio di lavoro nella codifica VBA, che aggiungerà più valore alle tue conoscenze di codifica.

# 1 - Semplici funzioni del foglio di lavoro SOMMA

Ok, per iniziare con le funzioni del foglio di lavoro, applica la semplice funzione SOMMA in Excel per aggiungere numeri dal foglio di lavoro.

Supponi di avere dati mensili sulle vendite e sui costi nel foglio di lavoro come quello sottostante.

In B14 e C14, dobbiamo arrivare al totale dei numeri sopra. Seguire i passaggi seguenti per avviare il processo di applicazione della funzione "SOMMA" in Excel VBA.

Passaggio 1: crea un semplice nome di macro Excel.

Codice:

Sub Worksheet_Function_Example1 () End Sub

Passaggio 2: poiché abbiamo bisogno del risultato nella cella B14, avvia il codice come intervallo ("B14"). Valore =

Codice:

Sub Worksheet_Function_Example1 () Intervallo ("B14"). Valore = End Sub

Passaggio 3: in B14, abbiamo bisogno del valore come risultato della somma dei numeri. Quindi, per accedere alla funzione SUM dal foglio di lavoro, avvia il codice come "WorksheetFunction".

Codice:

Sub Worksheet_Function_Example1 () Intervallo ("B14"). Value = WorksheetFunction. End Sub

Passaggio 4: nel momento in cui inserisci un punto (.), Inizierà a visualizzare le funzioni disponibili. Quindi seleziona SUM da questo.

Codice:

Sub Worksheet_Function_Example1 () Intervallo ("B14"). Value = WorksheetFunction.Sum End Sub

Passaggio 5: ora fornire il riferimento dei numeri sopra, ovvero Range ("B2: B13").

Codice:

Sub Worksheet_Function_Example1 () Range ("B14"). Value = WorksheetFunction.Sum (Range ("B2: B13")) End Sub

Passaggio 6: allo stesso modo, per la colonna successiva, applica un codice simile modificando i riferimenti di cella.

Codice:

Sub Worksheet_Function_Example1 () Range ("B14"). Value = WorksheetFunction.Sum (Range ("B2: B13")) Range ("C14"). Value = WorksheetFunction.Sum (Range ("C2: C13")) End Sub

Passaggio 7: ora esegui questo codice manualmente o utilizzando il tasto F5 per avere un totale nelle celle B14 e C14.

Wow, abbiamo i nostri valori. Una cosa che devi notare qui è che non abbiamo alcuna formula nel foglio di lavoro, ma abbiamo appena ottenuto il risultato della funzione "SUM" in VBA.

# 2 - Usa CERCA.VERT come funzione del foglio di lavoro

Vedremo come utilizzare CERCA.VERT in VBA. Supponi di seguito i dati che hai nel tuo foglio Excel.

Nella cella E2, hai creato un elenco a discesa di tutte le zone.

Based on the selection you made in the E2 cell, we need to fetch the Pin Code for the respective zone. But this time through VBA VLOOKUP, not worksheet VLOOKUP. Follow the below steps to apply VLOOKUP.

Step 1: Create a simple macro name in the Sub Procedure.

Code:

Sub Worksheet_Function_Example2() End Sub

Step 2: We need the result in the F2 cell. So start the code as Range (“F2”).Value =

Code:

Sub Worksheet_Function_Example2() Range ("F2").Value = End Sub

Step 3: To access the worksheet function, VLOOKUP starts the code as “WorksheetFunction.VLOOKUP.”

Code:

Sub Worksheet_Function_Example2() Range ("F2").Value = WorksheetFunction.Vlookup( End Sub

Step 4: One of the problems here is syntax will not give you any sort of guidance to work with VLOOKUP. You need to be absolutely sure about the syntax you are working on.

The first syntax of VLOOKUP is “Lookup Value.” In this case, our lookup value is E2 cell value, so write the code as Range (“E2”).Value

Code:

Sub Worksheet_Function_Example2() Range ("F2").Value = WorksheetFunction.Vlookup(Range ("E2").Value, End Sub

Step 5: Now, the second argument is our table array. In this case, our table array range is from A2 to B6. So the code will be Range (“A2:B6”)

Code:

Sub Worksheet_Function_Example2() Range ("F2").Value = WorksheetFunction.Vlookup(Range ("E2").Value,Range ("A2:B6"), End Sub

Step 6: The Third argument will be from which column we need the data from the table array. Here we need the data from the 2nd column, so the argument will be 2.

Code:

Sub Worksheet_Function_Example2() Range ("F2").Value = WorksheetFunction.Vlookup(Range ("E2").Value,Range ("A2:B6"),2, End Sub

Step 7: The final argument is range lookup, we need an exact match, so the argument is zero (0).

Code:

Sub Worksheet_Function_Example2() Range("F2").Value = WorksheetFunction.VLookup(Range("E2").Value, Range("A2:B6"), 2, 0) End Sub

So, we are done with the coding part. Now go to the worksheet and select any of the range.

Now go to your coding module and run the macro Using the F5 key or manually to get the pin code of the selected zone.

Non possiamo tornare indietro ed eseguire la macro ogni volta, quindi assegniamo una macro alle forme. Inserisci una delle forme in un foglio di lavoro.

Aggiungi un valore di testo alla forma inserita.

Ora fai clic con il pulsante destro del mouse e assegna il nome della macro a questa forma.

Fare clic su ok dopo aver selezionato il nome della macro.

Ora, questa forma contiene il codice della nostra formula CERCA.VERT. Quindi, ogni volta che si modifica il nome della zona, fare clic sul pulsante, aggiornerà i valori.

Cose da ricordare

  • Per accedere alle funzioni del foglio di lavoro, dobbiamo scrivere la parola "WorksheetFunction" o "Application.WorksheetFunction"
  • Non abbiamo accesso a tutte le funzioni, solo ad alcune.
  • Non vediamo la sintassi effettiva delle funzioni del foglio di lavoro, quindi dobbiamo essere assolutamente sicuri della funzione che stiamo utilizzando.

Articoli interessanti...