Tip de date boolean VBA (variabilă dim)

Tip variabil boolean

Tipul de date boolean VBA este utilizat pentru a stoca valori adevărate sau false. Adevărul poate fi reprezentat și de 1 și Fals cu 0.

Pentru a declara o variabilă booleană, utilizați declarația Dim (prescurtare pentru Dimension):

1 Dim blnA ca Boolean

Apoi, pentru a atribui o valoare unei variabile, pur și simplu utilizați semnul egal:

1 blnA = Adevărat

Când puneți acest lucru într-o procedură, ar putea arăta astfel:

123456789101112 Sub blnExample ()'declara variabila booleanăDim blnA ca Boolean'rulează codul pentru a completa variabila - de obicei codul este o instrucțiune if sau caseDacă Range ("A1")> 0 atunciblnA = adevăratAltfelblnA = FalsEnd If'arată caseta de mesajeMsgBox "Testul pentru a vedea dacă celula are o valoare mai mare de 0 este" & blnASfârșitul Sub

Dacă rulați codul de mai sus, va fi afișată următoarea casetă de mesaj.

Declarați variabila booleană la nivel de modul sau global

În exemplul anterior, am declarat Boolean variabilă în cadrul unei proceduri. Variabilele declarate cu o procedură pot fi utilizate numai în cadrul acestei proceduri.

În schimb, puteți declara variabile booleene la nivel de modul sau global.

Nivelul modulului

Declarați Nivelul modulului variabile în partea de sus a modulelor de cod cu Dim afirmație.

Aceste variabile pot fi utilizate cu orice procedură din acel modul de cod.

Nivel global

Declarați și voi La nivel global variabile în partea de sus a modulelor de cod. Cu toate acestea, în loc să utilizați fișierul Dim declarație, ați folosi Public declarație pentru a indica faptul că Boolean variabila este disponibilă pentru a fi utilizată în întregul proiect VBA.

1 Public blnA ca Boolean

Dacă ar fi să declarați Boolean variabilă la nivel de modul și apoi încercați să-l utilizați într-un alt modul, veți primi o eroare.

Cu toate acestea, dacă ați fi folosit cuvântul cheie public pentru a declara Boolean variabilă, eroarea nu va apărea și procedura va rula perfect.

Folosind o variabilă booleană

Utilizați variabila booleană în comparație logică. Acestea sunt adesea folosite cu instrucțiunile If pentru a testa dacă o condiție este adevărată sau falsă conform exemplului de mai sus sau într-o linie de cod pentru a aplica un test logic - poate pentru a vedea dacă o valoare este mai mare decât alta.

12345678 Sub blnExample ()'declara variabila booleanăDim blnA Ca boolean'test pentru a vedea dacă un număr este mai mare decât numărul următorblnA = 45> 68'arată caseta de mesajeMsgBox blnASfârșitul Sub

Dacă rulați codul de mai sus, veți primi următoarea casetă de mesaj.

pentru că desigur 45 nu este mai mare decât 68!

Utilizarea operatorilor booleni

Deoarece variabilele booleene sunt utilizate în comparația logică, putem folosi operatorii logici AND și OR pentru a testa dacă mai multe condiții sunt adevărate sau false.

Folosind operatorul AND

Putem folosi funcția ȘI pentru a vedea dacă ambele condiții sunt îndeplinite.

12345678 Sub blnExample ()'declara variabila booleanăDim blnA Ca boolean'folosiți operatorul AND pentru a testa dacă ambele condiții sunt adevărateblnA = 10> 13 Și 15> 12'arată caseta de mesajeMsgBox blnASfârșitul Sub

sau am putea rula același test folosind o declarație If:

123456789101112 Sub blnExample ()'declara variabila booleanăDim blnA Ca boolean'folosiți operatorul AND pentru a testa dacă ambele condiții sunt adevărateDacă 10> 13 și 15> 12 AtunciblnA = AdevăratAltfelblnA = FalsEnd If'arată caseta de mesajeMsgBox blnASfârșitul Sub

Ambele exemple de mai sus ar reveni FALS datorită faptului că 10 este NU mai mare de 13 - și AMBII condițiile trebuie să fie adevărate pentru ca booleanul să fie adevărat.

Folosind operatorul OR

Putem folosi funcția SAU pentru a vedea dacă una dintre condiții este îndeplinită.

12345678 Sub blnExample ()'declara variabila booleanăDim blnA Ca boolean'folosiți operatorul AND pentru a testa dacă ambele condiții sunt adevărateblnA = 10> 13 Sau 15> 12'arată caseta de mesajeMsgBox blnASfârșitul Sub

sau am putea rula același test folosind o declarație If:

123456789101112 Sub blnExample ()'declara variabila booleanăDim blnA Ca boolean'folosiți operatorul AND pentru a testa dacă ambele condiții sunt adevărateDacă 10> 13 SAU 15> 12 AtunciblnA = AdevăratAltfelblnA = FalsEnd If'arată caseta de mesajeMsgBox blnASfârșitul Sub

Aceste exemple ar reveni ADEVĂRAT datorită faptului că 10 NU este mai mare decât 13 DAR 15 ESTE mai mare decât 12 - șiUNUL SINGUR condiția trebuie să fie adevărată pentru ca booleanul să fie adevărat.

Folosirea instrucțiunilor If ne permite să folosim mai mulți operatori logici

Folosirea operatorului NOT

Putem folosi și operatorul NOT cu variabila booleană. Operatorul NOT neagă valoarea condiției - deci dacă o condiție este adevărată, operatorul NOT va returna falsul.

12345678910111213141516 Sub FindDifferences ()'declara variabile de intervalDim rng1 ca intervalDim rng2 As Range'activați foaia unuFișe de lucru („Sheet1”). Activați'populează intervaleleSetați rng1 = Range ("A3")Setați rng2 = Range ("B3")'folosiți operatorul NOT pentru a vedea dacă valorile sunt egale sau nu.Dacă nu rng1.Value = rng2.Value AtunciMsgBox "Valorile din celule nu sunt egale"AltfelMsgBox "Valorile din celule sunt egale"End IfSfârșitul Sub

Utilizarea operatorului logic Xor

TheXor operatorul logic este folosit pentru a compara două sau mai multe condiții. Dacă una dintre condiții este adevărată, va reveni la ADEVĂRAT. Dacă există 2 condiții, și NICI sunt adevărate sau AMBII sunt adevărate, va reveni FALS.

1234567891011121314151617 Sub blnExample ()'declara numerele întregiDim intA As IntegerDim intB Ca întreg'declara variabila booleanăDim blnResultat ca boolean'populează variabileleintA = 5intB = 10'verificați dacă unul este adevăratDacă intA = 5 Xor intB = 5 AtunciblnResult = AdevăratAltfelblnResult = FalseEnd IfMsgBox blnResultSfârșitul Sub

În exemplul de mai sus, întrucât UNA dintre condiții este ADEVĂRATĂ, caseta de mesaj va reveni ADEVĂRAT.

1234567891011121314151617 Sub blnExample ()'declara numerele întregiDim intA As IntegerDim intB Ca întreg'declara variabila booleanăDim blnResultat ca boolean'populează variabileleintA = 5intB = 5'verificați dacă unul este adevăratDacă intA = 5 Xor intB = 5 AtunciblnResult = AdevăratAltfelblnResult = FalseEnd IfMsgBox blnResultSfârșitul Sub

Cu toate acestea, în exemplul de mai sus, deoarece AMBELE condiții sunt adevărate, caseta de mesaj va reveni FALS.

1234567891011121314151617 Sub blnExample ()'declara numerele întregiDim intA As IntegerDim intB Ca întreg'declara variabila booleanăDim blnResultat ca boolean'populează variabileleintA = 6intB = 8'verificați dacă unul este adevăratDacă intA = 5 Xor intB = 5 AtunciblnResult = AdevăratAltfelblnResult = FalseEnd IfMsgBox blnResultSfârșitul Sub

și, în cele din urmă, deoarece ambele condiții sunt FALSE, caseta de mesaj va reveni, de asemenea, FALSE.

Vei ajuta la dezvoltarea site-ului, partajarea pagina cu prietenii

wave wave wave wave wave