Tipo di dati booleano VBA (variabile Dim)

Tipo variabile booleana

Il tipo di dati VBA Boolean viene utilizzato per memorizzare i valori True o False. True può anche essere rappresentato da 1 e False da 0.

Per dichiarare una variabile booleana, usi l'istruzione Dim (abbreviazione di Dimension):

1 Dim blnA come booleano

Quindi, per assegnare un valore a una variabile, è sufficiente utilizzare il segno di uguale:

1 blnA = Vero

Quando lo inserisci in una procedura, potrebbe assomigliare a questo:

123456789101112 Sub blnEsempio()'dichiarare la variabile booleanaDim blnA come booleano'esegui il codice per popolare la variabile - di solito il codice è un'istruzione if o caseSe Range("A1") > 0 allorablnA = veroAltroblnA = FalsoFinisci se'mostra la finestra del messaggioMsgBox "Il test per vedere se la cella ha un valore maggiore di 0 è " & blnAFine sottotitolo

Se esegui il codice sopra, verrà mostrata la seguente finestra di messaggio.

Dichiara variabile booleana a livello di modulo o globale

Nell'esempio precedente, abbiamo dichiarato il booleano variabile all'interno di una procedura. Le variabili dichiarate con una procedura possono essere utilizzate solo all'interno di tale procedura.

Invece, puoi dichiarare variabili booleane a livello di modulo o globale.

Livello modulo

tu dichiari Livello modulo variabili nella parte superiore dei moduli di codice con il fioco dichiarazione.

Queste variabili possono essere utilizzate con qualsiasi procedura in quel modulo di codice.

Livello globale

Dichiari anche tu Livello globale variabili nella parte superiore dei moduli di codice. Tuttavia, invece di usare il fioco affermazione, useresti il Pubblico dichiarazione per indicare che il booleano variabile è disponibile per essere utilizzata in tutto il progetto VBA.

1 blnA pubblico come booleano

Se dovessi dichiarare il booleano variabile a livello di modulo e quindi provare a utilizzarlo in un modulo diverso, si otterrebbe un errore.

Tuttavia, se avessi usato la parola chiave Public per dichiarare il booleano variabile, l'errore non si verificherebbe e la procedura verrebbe eseguita perfettamente.

Utilizzo di una variabile booleana

Utilizzi la variabile booleana nel confronto logico. Questi sono spesso usati con le istruzioni If per verificare se una condizione è True o False come nell'esempio sopra, o in una riga di codice per applicare un test logico, magari per vedere se un valore è maggiore di un altro.

12345678 Sub blnEsempio()'dichiarare la variabile booleanaDim blnA As Boolean'prova per vedere se un numero è maggiore del numero successivoblnA = 45 > 68'mostra la finestra del messaggioMsgBox blnAFine sottotitolo

Se esegui il codice sopra, otterrai la seguente finestra di messaggio.

perché ovviamente 45 non è maggiore di 68!

Utilizzo di operatori booleani

Poiché le variabili booleane vengono utilizzate nel confronto logico, possiamo utilizzare gli operatori logici AND e OR per verificare se più di una condizione è vera o falsa.

Utilizzo dell'operatore AND

Possiamo usare la funzione AND per vedere se ENTRAMBE le condizioni sono soddisfatte.

12345678 Sub blnEsempio()'dichiarare la variabile booleanaDim blnA As Boolean'usa l'operatore AND per verificare se entrambe le condizioni sono vereblnA = 10 > 13 e 15 > 12'mostra la finestra del messaggioMsgBox blnAFine sottotitolo

oppure potremmo eseguire lo stesso test utilizzando un'istruzione If:

123456789101112 Sub blnEsempio()'dichiarare la variabile booleanaDim blnA As Boolean'usa l'operatore AND per verificare se entrambe le condizioni sono vereSe 10 > 13 E 15 > 12 AllorablnA = VeroAltroblnA = FalsoFinisci se'mostra la finestra del messaggioMsgBox blnAFine sottotitolo

Entrambi gli esempi sopra torneranno FALSO a causa del fatto che 10 è NON maggiore di 13 - e ENTRAMBI le condizioni devono essere vere perché il booleano sia vero.

Utilizzo dell'operatore OR

Possiamo usare la funzione OR per vedere se UNA DELLE condizioni è soddisfatta.

12345678 Sub blnEsempio()'dichiarare la variabile booleanaDim blnA As Boolean'usa l'operatore AND per verificare se entrambe le condizioni sono vereblnA = 10 > 13 oppure 15 > 12'mostra la finestra del messaggioMsgBox blnAFine sottotitolo

oppure potremmo eseguire lo stesso test utilizzando un'istruzione If:

123456789101112 Sub blnEsempio()'dichiarare la variabile booleanaDim blnA As Boolean'usa l'operatore AND per verificare se entrambe le condizioni sono vereSe 10 > 13 O 15 > 12 AllorablnA = VeroAltroblnA = FalsoFinisci se'mostra la finestra del messaggioMsgBox blnAFine sottotitolo

Questi esempi ritornerebbero VERO a causa del fatto che 10 NON è maggiore di 13 MA 15 È maggiore di 12 - eSOLO UNO la condizione deve essere True perché il booleano sia True.

L'uso delle istruzioni If ci consente di utilizzare più operatori logici

Utilizzo dell'operatore NOT

Possiamo anche usare l'operatore NOT con la variabile booleana. L'operatore NOT nega il valore della condizione, quindi se una condizione è vera, l'operatore NOT restituirà false.

12345678910111213141516 Sotto Trova differenze()'dichiarare variabili di intervallo'Dim rng1 come intervalloDim rng2 come intervallo"attiva il foglio uno"Fogli di lavoro("Foglio1").Attiva'popola gli intervalliImposta rng1 = Intervallo ("A3")Imposta rng2 = Intervallo ("B3")'usa l'operatore NOT per vedere se i valori sono uguali o meno.If Not rng1.Value = rng2.Value ThenMsgBox "I valori nelle celle non sono uguali"AltroMsgBox "I valori nelle celle sono uguali"Finisci seFine sottotitolo

Utilizzo dell'operatore logico Xor

IlXor operatore logico viene utilizzato per confrontare due o più condizioni. Se una delle condizioni è vera, restituirà TRUE. Se ci sono 2 condizioni e NESSUNO è vero o ENTRAMBI sono vere, restituirà FALSE.

1234567891011121314151617 Sub blnEsempio()'dichiarare gli interiDim intA As IntegerDim intB As Integer'dichiarare la variabile booleanaDim blnResult As Boolean'popola le variabiliintA = 5intB = 10'controlla per vedere se uno è veroSe intA = 5 Xor intB = 5 AllorablnRisultato = VeroAltroblnResult = FalseFinisci seMsgBox blnResultFine sottotitolo

Nell'esempio sopra, poiché UNA delle condizioni è TRUE, la finestra di messaggio tornerà VERO.

1234567891011121314151617 Sub blnEsempio()'dichiarare gli interiDim intA As IntegerDim intB As Integer'dichiarare la variabile booleanaDim blnResult As Boolean'popola le variabiliintA = 5intB = 5'controlla per vedere se uno è veroSe intA = 5 Xor intB = 5 AllorablnRisultato = VeroAltroblnResult = FalseFinisci seMsgBox blnRisultatoFine sottotitolo

Tuttavia, nell'esempio sopra, poiché ENTRAMBE le condizioni sono vere, la finestra di messaggio tornerà FALSO.

1234567891011121314151617 Sub blnEsempio()'dichiarare gli interiDim intA As IntegerDim intB As Integer'dichiarare la variabile booleanaDim blnResult As Boolean'popola le variabiliintA = 6intB = 8'controlla per vedere se uno è veroSe intA = 5 Xor intB = 5 AllorablnRisultato = VeroAltroblnResult = FalseFinisci seMsgBox blnRisultatoFine sottotitolo

e infine, poiché entrambe le condizioni sono FALSE, anche la finestra di messaggio restituirà FALSE.

Aiuterete lo sviluppo del sito, condividere la pagina con i tuoi amici

wave wave wave wave wave