VBA 運算符和內置函數

Excel VBA 語句

在 Excel 中編寫 VBA 代碼時,每一步都使用一組內置運算符。 這些運算符分為數學運算符、字符串運算符、比較運算符和邏輯運算符。 接下來,我們將詳細了解每組運算符。

數學運算符

下表列出了主要的 VBA 數學運算符。

表的右列顯示了沒有括號時的默認運算符優先級。 通過向表達式添加括號,您可以根據需要更改 VBA 語句的執行順序。

操作者行動優先

(1 – 最高;5 – 最低)

^取冪運算符1
*乘法運算符2
/除法運算符2
無餘除法——返回兩個數字相除的結果,沒有餘數。 例如, 74 將返回結果 13
勇氣模(餘數)運算符 – 返回兩個數相除後的餘數。 例如, 8 對 3 將返回結果 2.4
+加法運算符5
- 減法運算符5

字符串運算符

Excel VBA 中的基本字符串運算符是連接運算符 & (合併):

操作者行動
&連接運算符。 例如,表達式 «A» 和 «B» 將返回結果 AB.

比較運算符

比較運算符用於比較兩個數字或字符串並返回一個布爾值類型 布爾 (對或錯)。 下表列出了主要的 Excel VBA 比較運算符:

操作者行動
=相等
<>不相等
<
>Больше
<=小於或等於
>=大於或等於

邏輯運算符

邏輯運算符,如比較運算符,返回類型為布爾值 布爾 (對或錯)。 Excel VBA的主要邏輯運算符如下表所示:

操作者行動
合取運算,邏輯運算符 И. 例如,表達式 甲和乙 將返回 ,如果 A и B 兩者相等 , 否則返回 .
Or析取運算、邏輯運算符 OR. 例如,表達式 甲或乙 將返回 ,如果 A or B 相等 , 並將返回 ,如果 A и B 兩者相等 .
否定運算,邏輯運算符 . 例如,表達式 不是一個 將返回 ,如果 A 一樣 , 或返回 ,如果 A 一樣 .

上表並未列出 VBA 中可用的所有邏輯運算符。 可以在 Visual Basic 開發人員中心找到完整的邏輯運算符列表。

內建功能

VBA 中有許多內置函數可以在編寫代碼時使用。 下面列出了一些最常用的:

功能行動
ABS返回給定數字的絕對值。

示例:

  • 絕對(-20) 返回值 20;
  • 絕對(20) 返回值 20。
r返回與參數數值對應的 ANSI 字符。

示例:

  • 鉻(10) 返回一個換行符;
  • 鉻(97) 返回一個字符 a.
日期返回當前系統日期。
日期添加將指定的時間間隔添加到給定的日期。 函數語法:

DateAdd(интервал, число, дата)

論據在哪裡 間隔 確定添加到給定時間間隔的類型 日期 在參數中指定的數量 .

爭論 間隔 可以採用以下值之一:

信號間隔
YYYY
q
m
y一年中的一天
d享受
w一周中的天
ww
h小時
n分鐘
s第二

示例:

  • DateAdd(«d», 32, «01/01/2015») 將日期 32/01/01 加上 2015 天,因此返回日期 02/02/2015。
  • DateAdd(«ww», 36, «01/01/2015») 將日期 36/01/01 加上 2015 週並返回日期 09/09/2015。
日期差異計算兩個給定日期之間的指定時間間隔數。

示例:

  • DateDiff(«d», «01/01/2015», «02/02/2015») 計算 01/01/2015 和 02/02/2015 之間的天數,返回 32。
  • DateDiff(«ww», «01/01/2015», «03/03/2016») 計算 01/01/2015 和 03/03/2016 之間的周數,返回 61。
返回與給定日期中的月份中的某天相對應的整數。

示例: 日(«29/01/2015») 返回數字 29。

小時返回與給定時間的小時數對應的整數。

示例: 小時(«22:45:00») 返回數字 22。

指令它接受一個整數和兩個字符串作為參數。 返回第二個字符串在第一個字符串中出現的位置,從整數給定的位置開始搜索。

示例:

  • InStr(1, “這是搜索詞”, “詞”) 返回數字 13。
  • InStr(14, "這裡是搜索詞,這裡是另一個搜索詞", "word") 返回數字 38。

注意: 可以不指定 number 參數,在這種情況下,搜索從函數的第二個參數中指定的字符串的第一個字符開始。

詮釋返回給定數字的整數部分。

示例: 詮釋(5.79) 返回結果 5。

伊斯達特歸還 如果給定值是日期,或者 – 如果日期不是。

示例:

  • IsDate(«01/01/2015») 返回 ;
  • 是日期(100) 返回 .
錯誤歸還 如果給定的值是錯誤的,或者 – 如果不是錯誤。
不見了可選過程參數的名稱作為參數傳遞給函數。 不見了 返回 如果沒有為相關過程參數傳遞值。
是數字的歸還 如果給定的值可以被視為一個數字,否則返回 .
左列從給定字符串的開頭返回指定數量的字符。 函數語法如下:

Left(строка, длина)

哪裡 是原始字符串,並且 長度 是要返回的字符數,從字符串的開頭開始計數。

示例:

  • 左(“abvgdejziklmn”,4) 返回字符串“abcg”;
  • 左(“abvgdejziklmn”,1) 返回字符串“a”。
萊恩返回字符串中的字符數。

示例: 倫(“abcdej”) 返回數字 7。

每月返回與給定日期的月份對應的整數。

示例: 月(«29/01/2015») 返回值 1。

從給定字符串的中間返回指定數量的字符。 函數語法:

中(, 開始, 長度)

哪裡 是原始字符串 開始 – 要提取的字符串的開頭位置, 長度 是要提取的字符數。

示例:

  • 中(“abvgdejziklmn”, 4, 5) 返回字符串“where”;
  • 中(“abvgdejziklmn”, 10, 2) 返回字符串“cl”。
分鐘返回與給定時間內的分鐘數對應的整數。 例子: 分鐘(«22:45:15») 返回值 45。
現在返回當前系統日期和時間。
從給定字符串的末尾返回指定數量的字符。 函數語法:

正確的(, 長度)

當: 是原始字符串,並且 長度 是要提取的字符數,從給定字符串的末尾開始計數。

示例:

  • 對(«abvgdezhziklmn», 4) 返回字符串“clmn”;
  • 對(«abvgdezhziklmn», 1) 返回字符串“n”。
其次返回與給定時間內的秒數對應的整數。

示例: 第二(«22:45:15») 返回值 15。

平方返回參數中傳遞的數值的平方根。

示例:

  • 平方(4) 返回值 2;
  • 平方(16) 返回值 4。
Time返回當前系統時間。
無界返回指定數組維度的上標。

注意: 對於多維數組,可選參數可能是要返回的維度的索引。 如果未指定,則默認值為 1。

返回與給定日期的年份對應的整數。 例子: 年份(«29/01/2015») 返回值 2015。

此列表僅包括最常用的內置 Excel Visual Basic 函數的選擇。 可在 Excel 宏中使用的 VBA 函數的詳盡列表可在 Visual Basic 開發人員中心找到。

發表評論