Excel VBA編程中必須掌握的3個基礎知識點

2020-12-03 螞蟻可可V課堂

VBA編程功能非常強大,對於excel的功能拓展至關重要,同時也是實現excel自動化處理數據的關鍵。但是在職場中不是所有人都有編程基礎,所以我們不能像程式設計師一樣寫出規範的、高大上的代碼,我們想要的無非是快速實現功能,給我們的工作提高效率,但不管怎麼樣也得了解VBA編程的規範和要求,一些基礎性的知識還是需要知道和了解的,只有熟悉這些基礎知識,我們才能快速編程,真正做到事半功倍。

01變量定義

變量的定義,是所有程式語言的基礎,因此,了解什麼是變量和怎麼定義變量就變得至關重要了。所謂變量指定就是暫時存放指定數據、沒有固定值、隨著場景變化而變化的量。那麼在VBA中定義變量的名稱時只能由字母、數字和下劃線組成,比如ex_1、abc等。但是需要和VBA的保留字(VBA內置的變量,用於特殊場景的變量)區分開,不能和它重複,如public,private,dim,goto,next,with,integer,single等。

VBA中定義變量的規範為:dim 變量名as 數據類型

這個規則指的是,我們定義了一個變量,並指定這個變量能存放的數據是什麼?比如,dim abc as integer 就說明我們定義了一個變量名為abc,且abc只能存儲整數不能存放其他類型的數據。

02數據類型

所謂數據類型,指的就是我們目前所用到的所有數據的分類。那麼在VBA中我們常用的數據類型有整型(即整數)、雙精度型(即小數)、字符串型、日期型等。

知道數據類型之後,我們在處理數據時就可以根據不同的數據類型來定義不同的變量。如圖。

03數組定義

數組指的是一組數據類型相同的變量集合。和上述變量的區別是,變量只能存放一個數據,而數組可以存放若干數據類型相同的數據。因此,數組是我們VBA編程中非常重要的一種數據類型。

數組的定義:dim 數組名(數據個數) as 數據類型。

比如,dim arr(5) as integer 就說明定義了一個數組為arr,並且它能存放5個整數型的數據。這種數組的定義我們就稱為一維數組,因為它只有一行數據。但是在我們處理電子表格時,是有行有列的相同數據,這種包含行列表格的數據我們就成為二維數組,因此二維數組其實就是一張表格。

二維數組的定義:dim 數組名(行數,列數) as 數據類型

比如,dim arr(3,5) as integer 就說明我們定義了一個二維數組為arr,裡面有3行5列,共能存放15個整數型數據。

總結:變量定義是VBA編程基礎,如果不掌握不同數據類型的變量定義,那麼我們編程就無法繼續,因此,掌握常用數據類型的定義,對於excel數據處理將事半功倍。

相關焦點

  • excel VBA是什麼?VBA編程入門教程
    本篇將介紹excel vba是什麼?vba編程入門教程,有興趣的朋友可以了解一下!一、excel vba是什麼?VBA的英文全稱是Visual Basic for Applications,是一門標準的宏語言。VBA語言不能單獨運行,只能被office軟體(如:Word、Excel等)所調用。
  • Excel VBA的基礎知識點,初學者必須掌握
    我們在前面已經說到錄製宏和資源工程管理器,也許你已經初步知道如何去錄製宏,但是你還是不能快速的理解他們,因為你對VBA的基礎概念知識還是很欠缺的。我們今天要和你說的是幾個非常重要而且基礎的知識點,對象、集合、屬性,當你對這三個的基礎知識點熟悉後,方可繼續更好的去學習他。
  • VBA編程理論學習之談
    No.1 掌握對象方法和屬性VBA編程是一個即學即用的過程,幾乎不可能全面掌握所有對象的代碼,也不可能記住所有的對象屬性。所以,在實際應用中遇到哪些對象就對應去掌握這些對象的方法和屬性就可以,不需要完全學習。既浪費時間又沒有意義。
  • Excel VBA操作電子表格兩大重要屬性詳解
    01基礎概念在Excel VBA編程所有的對象都是分層進行的,因此我們得提前了解VBA編程引用的方式,才能夠進入單元格的操作中。在Excel VBA編程中所有對象、屬性、方法、事件都是點號(」.」)逐層引用的,比如對象名.屬性名、對象名.方法名。
  • 系統思維在Excel vba編程中的思考
    文:江覓易見編程首先要考慮的問題是需求,正因為需求的存在,所以要做編程的工作,然後要分析需求以及實現需求而實施的方式方法,最終輸出需求結果。這是整個編程中要考慮的內容,也是解決需求的一般過程。系統思維的建立有助於編程思想的提高和理解需求的應用場景,進而對編程實施有一個全面而有效的方法布置。系統三要素:元素、關係、功能引用到Excel vba編程中。
  • 「Python替代Excel Vba」系列(終):vba中調用Python
    最後,定義一個方法,讓vba調用。如下圖:這個方法的上方套上一個 xlwings 的裝飾器 @xw.func。表示這個方法需要註冊到 Vba 模塊中。外部傳入的是字符串,比如參數 groups 可以是 "col1,col2",因此需要對 groups 和 values 參數調用 split 分裂成列表。然後就順序調用之前定義的2個方法 where_df 和 group_df。
  • MySQL 面試,必須掌握的 8 個知識點
    △圖來自獵聘網為了讓大家能避開國仔面試時的苦惱,我們特意邀請到兩位有著 10 年工作經驗的技術老兵,前前後後大概花了三個多月的時間,改了 6 個版本,最終形成了這套 MySQL 面試題,來幫助準備面試的朋友們。
  • excel編程系列基礎:VBA常用的操作對象RANDE
    前段時間和大家提到了讓excel自殺的VBA代碼,引起了不少小夥伴的討論,都說想看部落窩分享更多關於excel中VBA的知識,別催別催,這不就來了嗎。學習更多技巧,請收藏部落窩教育excel圖文教程。在EXCEL中也有類似的一個比例,那就是「日常使用的知識:excel不會應用的知識」,但是這個比例大概有多少就不好說了,因為每個人掌握EXCEL的程度是不一樣的,不敢說「九牛一毛」,但是大部分的同學還只是用到「皮毛而已」。當你有一天真正的運用到了VBA,才會對EXCEL的運行原理有更加透徹的理解和使用。
  • vba編程,如何找出計算機ID,磁碟空間信息,一個函數的事情
    NO.1vba編程中,有時候需要獲取計算機系統信息,比如計算機名稱、ID、磁碟容量、磁碟類型等等,那麼如何來實現這個功能呢?下面講一下,關於獲取本地信息的一個簡單方法。redirectedfrom=MSDNNO.2本節內容相對比較難,需要掌握的知識有一些深度,其代碼可能不是十分好理解。如果只是拿來用一下,直接用就可以,如果要更多地掌握其核心內容,可能要花費不少時間,而且還必須對作業系統有一個十分熟悉的認識。
  • Address屬性介紹,vba編程學習基礎知識
    No.1Address是Range對象的一個重要屬性,而用好這個屬性也是學習vba編程一個必修課。本章介紹關於Address的一些參數功能,對於全面了解和學習Range地址尋址方面十分必要。Address英譯為地址。
  • 「Python替代Excel Vba」系列(二):pandas分組統計與操作Excel
    腳本中導入本文只說重點細節,至於如何從 excel 中讀取數據,上一節已經有詳細介紹。df.sort_values(['班級','排名'],inplace=True) ,按先[班級]後[排名]進行排序,不是必須的,只是為了方便查看數據。參數 inplace=True ,表示直接在原有數據上操作,如果不設置這個參數,那麼就需要寫 df=df.sort_values(['班級','排名'])來看看結果。注意看第3和4行數據,他們是並列第3名。並且後面的人是從第5名開始。
  • Excel vba 利用定義名稱實現用戶登錄功能
    文/江覓易見在vba 中實現用戶登錄,並對登錄用戶進行身份識別,然後對用戶進行分組管理,此類功能值得進一步思考。這裡介紹一種方法,利用Excel中的名稱管理來進行身份識別,起到用戶登錄次數以及增減用戶的功能。
  • Excel實現信息管理系統之數據錄入界面設計步驟詳解
    因此在excel的基礎之上自己設計一個數據錄入功能,相信上述問題都能夠得到很好的解決,同時很多數據都是可以通過excel表格自動生成,從而減少了數據錄入的數量,從而提高了數據錄入的質量和效率。說到這兒,很多人可能會想,這涉及到了excel的vba編程呀,我不會編程呀,這會不會很難呢?
  • excel怎麼利用vba獲取單元格交叉範圍的數據
    excel中使用vba獲取多個單元格區域的交叉範圍  1、首先我們打開一個工作樣表作為例子。   2、在工作中,我們常常會遇到選擇多個工作表區域,而兩個工作表區域的交叉範圍如果需要我們再去選取的話,需要非常的小心,不然選擇錯誤了又得重新來過
  • 2021 必須掌握的 21個Java 核心技術
    面向對象編程的概念 這是一個java的核心概念,對於任何java開發者都需要熟練掌握。 Java中很多特性或者說知識點都是和java面向對象編程概念相關的。 在我的理解,一個好的開發者不僅僅需要了解這些特性(知識點)本身。
  • 你必須掌握的 21 個 Java 核心技術
    面向對象編程的概念這是一個java的核心概念,對於任何java開發者都需要熟練掌握。Java中很多特性或者說知識點都是和java面向對象編程概念相關的。在我的理解,一個好的開發者不僅僅需要了解這些特性(知識點)本身。
  • 12個遊戲帶你入門Python,掌握Python基礎知識
    Python,不僅是入門Python,還能掌握Python基礎中幾乎所有的知識點。不僅是掌握Python中所有的基礎知識點,還可以能擁有將Python知識應用於實踐中的能力。原因很簡單,只因為你是通過這12個遊戲學會的Python編程。你是通過實踐學會的Python編程,這比單一的理論學習所獲得的技術能力更實用,也更容易持續學習。
  • VBA編程如何輸入輸出字符集,兩函數要掌握
    如何輸入字符,在vba編程過程中是一個基本常識。本節主要介紹一下,字符集對應的數值,以及如何輸入字符。很顯然,函數Chr即可輸出相應數值的字符。Asc()返回一個整數值,它表示與字符串中的第一個字母對應的字符代碼。如將字母轉換為數值,可進行如下操作。
  • 程式設計師必須掌握的 21 個 Java 核心技術
    面向對象編程的概念這是一個java的核心概念,對於任何java開發者都需要熟練掌握。Java中很多特性或者說知識點都是和java面向對象編程概念相關的。在我的理解,一個好的開發者不僅僅需要了解這些特性(知識點)本身。
  • 你必須掌握的 21 個 Java 核心技術!
    面向對象編程的概念這是一個java的核心概念,對於任何java開發者都需要熟練掌握。Java中很多特性或者說知識點都是和java面向對象編程概念相關的。在我的理解,一個好的開發者不僅僅需要了解這些特性(知識點)本身。