2022年6月8日 星期三

VBA:取得儲存格資料(單一、不連續、多行)

 天啊我怎想出這標題的!!

不就是用等號碼嗎<>

A=ACTIVESHEET.RANGE("C1"),這樣就可以取得C1儲存格資料,儲存到A變數中了。

小編想要詮釋如何取的一個範圍

如A行某指定範圍

則可以:

取得:A=ACTIVESHEET.RANGE("A1:A100")

寫入:ACTIVESHEET.RANGE("A1:A100")=A

也可以多行範圍:

取得:A=ACTIVESHEET.RANGE("A1:B100")

寫入:ACTIVESHEET.RANGE("A1:B100")=A

 不連續呢??

單一不連續儲存格變成一維陣列:

SET MYRANGE=ACTIVESHEET.RANGE("A1,C1,F1")

CELL_VALUE=""

FOR EACH CELL IN MY RANGE

IF CELL="" THEN 

CELL_VALUE=CELL

ELSE

CELL_VALUE=CELL_VALUE & "@" & CELL

END IF

NEXT

CELL_VALUE==SPLIT(CELL_VALUE,"@")

單一不連續行變成一維陣列:

Set myRange = ActiveSheet.Range("A1:A100,C1:C100,F1:F100")

CELL_VALUE=""

FOR EACH CELL IN MY RANGE

IF CELL="" THEN 

CELL_VALUE=CELL

ELSE

CELL_VALUE=CELL_VALUE & "@" & CELL

END IF

NEXT

CELL_VALUE==SPLIT(CELL_VALUE,"@")

但是如果要多行複製然後維持行別勒?

建議直接COPY!!!處理 哈哈。

或是直接一次多行的做法,然後再刪除陣列中資料即可,但缺點是寫入資料會複寫。

沒有留言:

張貼留言

指數變化(2025.03.28)

 指數變化(2025.03.28) 上周焦點: 美國消費者信心指數 3/25 92.9 美國耐久財訂單月增率 3/26 1.4 PCE 月增 0.4 年增 2.8 (不多阿,最高還有5.5ㄝ)   本周愛看: 美國非農業就業人數變化 美國ISM製造業採購經理人指數 美國芝加哥FE...