excel數據透視表之VBA運算符

      網友投稿 664 2025-03-31

      excel數據透視表之VBA運算符

      還記得小時候學習數學的經歷嗎?很小很小的時候,我們會接觸到數字,大人們會教我們數數,認識簡單的數字,慢慢地我們會開始學習簡單的加減法,再大一點,會學習乘除法,背誦乘法口訣,隨著學習的深入,我們會逐漸學習到更復雜的運算和規則。

      運算無處不在。在編寫程序代碼時,很多內容都是在進行各種各樣的運算,因此,運算符非常重要。

      當然,最開始我們都是從了解最基本的運算開始,逐漸深入到更多的運算內容。最先應該了解的當然是加、減、乘、除等算術運算符。

      算術運算符

      常用的VBA算術運算符有:加(+)、減(-)、乘(*)、除(/)、整除(\)、取模(MOD)、求冪(^)。基本的運算如下所示。

      說明:

      整除(\)運算符,即在除法運算中,結果直接取商,而不管余數。

      取模(MOD)運算符,即在除法運算中,結果取余數。

      將變量、常量或其他元素使用運算符連接起來,就組成了表達式,特別地,單個的變量或常量也看作是表達式。

      關系運算符

      關系運算符用于比較,也稱為比較運算符。VBA的關系運算符有:等于(=)、大于(>)、小于(<)、大于等于(>=)、小于等于(<=)、不等于(<>)。基本的比較運算如下所示。

      在VBA中,關系運算符用于比較運算符兩側的表達式結果,比較的結果為True(真)、False(假)或者Null。因此,關系運算符常用于條件判斷中。

      Is運算符

      在VBA中,經常要在對象變量之間進行判斷,例如判斷兩個對象變量是否引用同一個對象,這時就要用到Is運算符。

      對象變量1 Is對象變量2

      如果對象變量1和對象變量2都指向同一個對象,其結果是True,否則是False。

      對象變量Is Nothing

      用于判斷該對象變量是否有已設置對象引用,如果沒有則為False。這是程序中經常會用到的語句。

      示例:

      結合前面學習的系列知識,我們來看看下面語句的意思。

      Intersect(ActiveCell, Range(“A1:B2”)) Is Nothing

      該語句判斷當前單元格是否在單元格區域A1:B2內,如果當前單元格不在該區域內,則為True。Intersect方法屬于Application對象,返回一個Range對象,代表該方法指定參數的交叉區域。

      邏輯運算符

      邏輯運算符用于對表達式進行運算并返回一個邏輯值。VBA支持6個邏輯運算符,即Not(邏輯非)、And(邏輯與)、Or(邏輯或)、Xor(邏輯異或)、Eqv(邏輯與或)、Imp(邏輯蘊涵)。其中,Not、And、Or在我們通常的程序中經常會用到,應重點了解。

      Not

      對表達式進行邏輯非運算后,如果表達式的結果為True,那么Not運算使其值變為False;如果表達式的結果為False,那么Not運算使其值變為True。其格式為:

      Not 表達式

      運算結果表如下:

      表達式Not 表達式

      TrueFalse

      FalseTrue

      And

      如果執行邏輯與運算的表達式都為True,則其值為True,只要有一個表達式的結果為False,則其值為False。其格式為:

      表達式1 And 表達式2 And 表達式3 And … 表達式n

      表達式至少有2個。

      運算結果表如下:

      表達式1表達式2表達式1 And 表達式2

      TrueTrueTrue

      TrueFalseFalse

      FalseTrueFalse

      FalseFalseFalse

      Or

      如果執行邏輯或運算的表達式中至少有一個為True,則其值為True,如果表達式的結果都為False,則其值為False。其格式為:

      表達式1 Or 表達式2 Or 表達式3 Or … 表達式n

      表達式至少有2個。

      運算結果表如下:

      表達式1表達式2表達式1 Or 表達式2

      TrueTrueTrue

      TrueFalseTrue

      FalseTrueTrue

      FalseFalseFalse

      示例

      結合前面學習的系列知識,我們來看看下面語句的意思。

      ActiveSheet.Name=”工作表1” Or ActiveSheet.Name=”工作表2”

      如果當前工作表是“工作表1”,或者是“工作表2”,則為True。

      ActiveSheet.Name=”工作表1” And Range(“A1”).Value=”工作清單”

      如果當前工作表是“工作表1”,并且當前工作表的單元格A1中的值為“工作清單”,則為True。

      ActiveCell.Font.Bold = Not ActiveCell.Font.Bold

      如果當前單元格中的字體為常規,則將其設置為加粗;如果當前單元格中的字體已加粗,則將其設置為常規。

      補充說明:上述6個邏輯運算符也可作為按位運算符使用,并且我們只介紹了常用的3個,在后面的系列中如果用到其它的3個運算符,我們會再進行詳細介紹。

      字符串運算符

      VBA中的字符串運算符僅一個,即字符串連接運算符,使用 & 表示,用于將一個或多個獨立的字符串連接在一起。例如:

      “My ” &”Family”

      的結果為:

      My Family

      運算符的優先級

      如果在同一個表達式中包含有多個運算符,那么就需要了解VBA是如何安排那個運算符先運算,那個運算符后運算,即運算的優先順序。不了解運算符的優先順序,隨意組合運算符,可能得不到我們想要的結果。

      下列出了VBA中運算符的優先級。

      說明:

      四類運算符由高到低的順序依次為:算術運算符、連接運算符、關系運算符、邏輯運算符。

      算術運算符由高到低的順序依次為:^(冪)、*(乘)或/(除)、\(整除)、Mod(取模)、+(加)或-(減)。

      同一表達式中多次使用同一個算術運算符時,按從左到右的順序運算。

      同一表達式中多個關系運算符,按從左到右的順序運算。

      同一表達式中多次使用同一邏輯運算符時,按從左到右的順序運算。

      如果想改變運算符的優先順序,可以在表達式中使用()或[]。

      賦值運算符

      VBA使用等號(=)作為賦值運算符,用于將表達式的結果賦給變量。通常,接受結果的變量位于賦值運算符(=)的左側,表達式位于賦值運算符的右側。通過賦值運算符將右側表達式的結果賦值給左側的變量。賦值運算符可以修改變量的值。

      下所示為一些簡單的賦值示例。

      前面我們過,可以通過VBA來改變對象屬性值,因此,也可以將表達式的結果賦值給對象的屬性。下面是一些示例:

      Range(“A1”).Value = 100

      該語句在單元格A1中輸入數據100。

      Range(“A2”).Value = “工作清單”

      該語句在單元格A2中輸入文本“工作清單”。

      ActiveCell.Interior.Color = vbYellow

      該語句將當前單元格的背景色設置為黃色。

      注意:不要將賦值運算符與關系運算符中的“=”混淆,要在不同的表達式中區分“=”是賦值運算符還是等于運算符。

      版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。

      版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。

      上一篇:wps表格打印預覽在哪怎么設置(wps表格如何打印預覽)
      下一篇:excel函數突然不能用怎么解決
      相關文章
      亚洲人成人网站色www| 中文字幕不卡亚洲 | 亚洲综合激情六月婷婷在线观看| 国产午夜亚洲精品午夜鲁丝片| 亚洲AV无码乱码在线观看牲色| 国产精品亚洲精品日韩电影| 久久精品国产亚洲av瑜伽| 久久亚洲中文无码咪咪爱| 日日摸日日碰夜夜爽亚洲| 色偷偷噜噜噜亚洲男人| 高清在线亚洲精品国产二区| 久久综合亚洲色hezyo| 国产精品亚洲片在线花蝴蝶| 国产精品亚洲色图| 亚洲A∨精品一区二区三区下载| 婷婷亚洲综合一区二区| 一级毛片直播亚洲| 亚洲国产精品尤物yw在线| 亚洲高清成人一区二区三区 | 亚洲午夜未满十八勿入| 色婷婷亚洲十月十月色天| 亚洲欧洲国产精品久久| 激情综合亚洲色婷婷五月| 亚洲AV无码无限在线观看不卡 | 亚洲成色WWW久久网站| 久久青青草原亚洲AV无码麻豆 | 久久亚洲国产精品成人AV秋霞 | 国产AV无码专区亚洲AV漫画| 亚洲日韩乱码中文无码蜜桃臀网站 | 久久久久亚洲精品无码网址色欲| 亚洲av无码片vr一区二区三区| 亚洲av乱码一区二区三区按摩| 国产亚洲精彩视频| 亚洲精品视频在线观看你懂的| 国产亚洲精品无码拍拍拍色欲| 亚洲AV无码欧洲AV无码网站| 在线观看亚洲一区二区| 亚洲自偷自偷在线成人网站传媒| 久久亚洲中文无码咪咪爱| 国产午夜亚洲精品理论片不卡 | 亚洲精品亚洲人成人网|