標題:
(陣列問題)將某一直欄存至陣列中並取出某陣列值所在的列數
[打印本頁]
作者:
greetingsfromtw
時間:
2016-10-7 12:44
標題:
(陣列問題)將某一直欄存至陣列中並取出某陣列值所在的列數
本帖最後由 greetingsfromtw 於 2016-10-7 12:45 編輯
各位前輩好,
小弟初學陣列,有個問題想請教,
附檔及程式碼如下:
[attach]25472[/attach]
Sub arrayTest()
Dim ar
Range("a2").Resize(Cells(Rows.Count, 1).End(xlUp).Row, 1).Select
Selection.Resize(Selection.Rows.Count - 1, 1).Select
ar = Selection
MsgBox ar(3, 1)
ar(3, 1).Select
End Sub
複製代碼
假設今天有一欄位,此例為A欄,
想把該欄位(從A2開始)的非空白儲存格存進陣列中,
並取出該陣列值的所在列數,
不知是否可行?
小弟試著用msgbox去顯示陣列的值,可以正常顯示,
但是想要顯示該陣列值的所在列數,
就會提示錯誤:
此處需要物件,
希望前輩可以不吝指點迷津,十分感謝.
作者:
PKKO
時間:
2016-10-7 15:35
回復
1#
greetingsfromtw
基本上陣列是不能被選取的
只有物件才能被選取(活頁簿、分頁、儲存格等等)
下面是簡單範例,可自行運用
Sub arrayTest()
Dim ar
ar = Range("a1").Resize(Cells(Rows.Count, 1).End(xlUp).Row, 2)
For i = 2 To UBound(ar)
If ar(i, 1) <> "" Then
ar(i, 2) = i
End If
Next
[a1].Resize(UBound(ar), 2).Value = ar
'若要選取,請自行應用
MsgBox ar(2, 2)
Cells(ar(2, 2), 1).Select
End Sub
複製代碼
作者:
greetingsfromtw
時間:
2016-10-7 17:52
回復
2#
PKKO
很謝謝PKKO大熱心提供的程式碼,
確實這樣就可以選取了,
我再研究一下.
再次感謝.
歡迎光臨 麻辣家族討論版版 (http://forum.twbts.com/)