用來比較 表達方式。
語法
結果 = expression1比較運算子expression2結果 = object1是物件2結果 = 串類似模式
比較運算 子包含以下部分:
| 部分 | 描述 |
|---|---|
| result | 必要;任何數值的變數。 |
| expression | 必要;任何運算式。 |
| 比較運算子 | 必須;任何比較運算子。 |
| object | 必須;任何物件名稱。 |
| string | 必須;任何 字串表達式。 |
| 型 | 必須;任何字串表達式或字元範圍。 |
註解
下表列出比較運算子及決定 結果 為 真、 假或 空的條件。
| 運算子 | 若 | 若為假 | 若 則為零 |
|---|---|---|---|
< (不到) |
表達式1<表達式2 | 表達式1>= 表達式2 | expression1 或 expression2 = Null |
<= (小於或等於) |
表達式1<= 表達式2 | 表達式1>表達式2 | expression1 或 expression2 = Null |
> (比) 更偉大 |
表達式1>表達式2 | 表達式1<= 表達式2 | expression1 或 expression2 = Null |
>= (大於或等於) |
表達式1>= 表達式2 | 表達式1<表達式2 | expression1 或 expression2 = Null |
= (等於) |
表達式1 = 表達式2 | 表達式1<>表達式2 | expression1 或 expression2 = Null |
<> (不等於) |
表達式1<>表達式2 | 表達式1 = 表達式2 | expression1 或 expression2 = Null |
注意事項
Is 與 Like 運算子具有與表格中運算子不同的特定比較功能。
比較兩個表達式時,你可能無法輕易判斷它們是以數字還是字串形式比較。 下表展示了當任一表達式非 變體時,表達式的比較或結果。
| If | Then |
|---|---|
| 這兩種表達式都是數值資料類型 (位元組、布林、整數、長、單、雙、日期、貨幣或十進位) | 進行數值比較。 |
| 這兩種表達式都是 弦 | 進行 字串比較。 |
| 一個表達式是數值資料型別,另一個是 變體 ,可以是數字 | 進行數值比較。 |
| 一個表達式是數值資料型別,另一個是無法轉換成數字的字串 變 體 |
Type Mismatch發生錯誤。 |
| 其中一個表達式是字串,另一個則是除 Null 以外的任何變體 | 進行字串比較。 |
| 其中一個表達式為 Empty ,另一個為數值資料型態 | 執行數值比較,使用 0 作為 Empty 表達式。 |
| 一個表達式為 Empty ,另一個為 String | 使用一個零長度的字串 (“”) 作為 Empty 表達式,進行字串比較。 |
如果 expression1 和 expression2 都是 變體 表達式,則其底層類型決定如何比較它們。 下表展示了表達式的比較方式或比較結果,取決於變 異的底層類型。
| If | Then |
|---|---|
| 兩種 變體 表達式皆為數值 | 進行數值比較。 |
| 兩種 變體 表達式都是字串 | 進行字串比較。 |
| 其中一個 變體 表達式是數值式,另一個是字串式 | 數值表達式比字串表達式小。 |
| 一種 變體 表達式為 空 ,另一種為數值式 | 執行數值比較,使用 0 作為 Empty 表達式。 |
| 其中一個 變體 表達式為 Empty ,另一個為字串 | 使用一個零長度的字串 (“”) 作為 Empty 表達式,進行字串比較。 |
| 兩個 變體 表達式皆 為空 | 這兩個表達式是相等的。 |
當單 張 與 雙張比較時,雙 張 會四捨五入到與 單張相同的精度。 若貨幣與單倍或雙倍貨幣比較,該貨幣會被轉換成貨幣。
同樣地,當將十進位與單或雙進位比較時,單或雙進位會被轉換成十進位。 對於 貨幣,任何小於 0.0001 的分數值都可能遺失;對於小 於1E-28的分數值,可能會遺失,或發生溢位誤差。 這種分數值損失可能導致兩個數值在實際上相等時被比較為相等。
範例
這個例子展示了比較運算子的各種用法,你用來比較表達式。
Dim MyResult, Var1, Var2
MyResult = (45 < 35) ' Returns False.
MyResult = (45 = 45) ' Returns True.
MyResult = (4 <> 3) ' Returns True.
MyResult = ("5" > "4") ' Returns True.
Var1 = "5": Var2 = 4 ' Initialize variables.
MyResult = (Var1 > Var2) ' Returns True.
Var1 = 5: Var2 = Empty
MyResult = (Var1 > Var2) ' Returns True.
Var1 = 0: Var2 = Empty
MyResult = (Var1 = Var2) ' Returns True.
另請參閱
支援和意見反應
有關於 Office VBA 或這份文件的問題或意見反應嗎? 如需取得支援服務並提供意見反應的相關指導,請參閱 Office VBA 支援與意見反應。