2024年1月16日 星期二

初學者的VBA資料分析 CLASS 3:基本資料分析任務 開始 3.2 計算和公式

 3.2 計算和公式

     使用VBA錄製巨集和編輯Excel公式。

錄製巨集,請容許小編貼上GOOGLE大神,因為真的太多傳奇可以參考了。

小編在此,以計算公式為主,主要是說明application與WorksheetFunction函數的搭配。 但是在這兩個函數的配合上,還存在一個重要的觀念,就是資料跟物件方式的引用差異。 這是啥??? 簡單來說就是,給我對的角色,不然我罷工,當然軟體本身具備著,一代強過一代的精神,比較新的函數也是有具備老少通吃的特性,等等是資料與物件方式引用通吃,前敘誤會。

來看看MSDN1MSDN2

資料跟物件引用差別:

如果今天有一堆資料在A行儲存格中,怎樣找最小值呢!!

通常都是在某一儲存格中,輸入=MIN(A1:A100)

如果是VBA下,物件引用小編自己是這樣寫

MIN_VALUE= Application.Min(sheets("工作表1").Range("A1:C10") 

如果是資料呢,可以用這樣的方式

DATA=sheets("工作表1").Range("A1:C10") 

MIN_VALUE= Application.Min(DATA

圖1.
 

所以上述整理可以清楚知道資料跟物件引用的方式差別了,這是簡單的解說,中間還有很多學問,記得翻翻書。

再舉個例子

例如sum

MIN_VALUE= Application.sum(sheets("工作表1").Range("A1:C10") 

or

DATA=sheets("工作表1").Range("A1:C10") 

MIN_VALUE= Application.sum(DATA

例如vlookup

先講一下EXCEL下操作,=VLOOKUP(2230, A1:G10, 3, 0)。就是指定搜尋的字串,選範圍,回傳行別,判斷基礎。就大概這樣,如下圖2。

圖2.

VBA版本:語法類似,多了物件設定(ACTIVESHEET.RANGE)  

  VLookup1 = WorksheetFunction.VLookup(2230, ActiveSheet.Range("A1:G10"), 3, 0) VLookup2 = Application.VLookup(2230, ActiveSheet.Range("A1:G10"), 4, 0)

測試










沒有留言:

張貼留言

怕怕的利益率:113/06