March 20
VBA è il linguaggio di programmazione Visual Basic di Microsoft. E 'più comunemente associato con le macro utilizzate in fogli di calcolo Excel e talvolta anche generazione di report con uscita destinati a Word o PowerPoint. VBA offre agli sviluppatori tutte le opzioni logiche comuni disponibili in altre lingue, come ad esempio i cicli for, while e if / then / else. Tuttavia, come tutte le lingue, la sintassi di utilizzo di questi cicli è un po 'diverso in VBA. Una volta che si utilizzano questi, il processo è semplice e sarà semplice da implementare.
1 Creare un'istruzione If in VBA come questo esempio che confronta due valori e scrive "EQUAL" o "non uguale" nella cella A1 a seconda del risultato del confronto.
My_If_Test Sub ()
this_value Dim
that_value Dim
this_value = 0
that_value = 2
Se this_value = that_value Poi
Sheets ( "Sheet1"). Cells (1,1) .Value = "EQUAL"
Altro
Sheets ( "Sheet1"). Cells (1,1) .Value = "diverso"
Finisci se
End Sub
Se è necessario verificare se qualcosa non è uguale, il segno è <>.
2 Creare un ciclo For in VBA seguendo questo esempio di codice che inserire il valore di un contatore incrementato in ciascuna riga corrispondente.
My_For_Test Sub ()
contatore Dim
END_VALUE Dim
END_VALUE = 10
Per contatore = 0 a Passo END_VALUE 1
Sheets ( "Sheet1"). Cells (contatore, 1) .Value = contatore
Il prossimo
End Sub
3 Creare un Do / While in VBA seguendo questo esempio di codice che, come il ciclo, ad esempio, inserisce il valore di un contatore incrementato in ogni riga corrispondente.
My_DoWhile_Test Sub ()
Indice Dim
END_VALUE Dim
index = 0
END_VALUE = 10
Do While index <END_VALUE
Sheets ( "Sheet1"). Cells (contatore, 1) .Value = indice
index = index + 1
Ciclo continuo
End Sub
La logica del Do / While è tale che, se il confronto iniziale della condizione Mentre fallisce, il ciclo non viene eseguito. Per esempio, se l'indice aveva uguagliato 10 o più prima che il codice eseguito questa Do / While, il codice all'interno del ciclo non avrebbe mai eseguito.
4 Creare un Do / Until in VBA seguendo questo esempio di codice che, come il Do / Mentre ad esempio loop, inserisce il valore di un contatore incrementato in ciascuna riga corrispondente.
My_DoUntil_Test Sub ()
Indice Dim
END_VALUE Dim
index = 0
END_VALUE = 10
Fare
Sheets ( "Sheet1"). Cells (contatore, 1) .Value = indice
index = index + 1
Loop Fino index = END_VALUE
End Sub
La logica del Do / Until è sottilmente diverso da un Do / While. Il codice in Do / finché non viene eseguito almeno una volta, anche se la finché la condizione fallisce. Per esempio, se l'indice aveva uguagliato 10 o più prima il codice eseguito questo Do / Until, verrebbe eseguito il codice all'interno del ciclo una volta comunque.