標題:
[發問]
每100個分行
[打印本頁]
作者:
dou10801
時間:
2023-2-1 13:59
標題:
每100個分行
每100個分行,為何第五行會消失,請前輩指點,謝謝.
作者:
dou10801
時間:
2023-2-1 16:51
回復
1#
dou10801
抱歉,更正檔案.[每100個分行,為何第五行會消失,請前輩指點,謝謝.]
作者:
Andy2483
時間:
2023-2-2 09:03
本帖最後由 Andy2483 於 2023-2-2 09:12 編輯
回復
2#
dou10801
謝謝前輩發表此主題與範例
後學建議方案如下:
Option Explicit
Sub 設陣列收集資料後再寫入儲存格()
Dim i&, K&, MS1$, R&
[F:F].ClearContents
R = Cells(Rows.Count, 1).End(3).Row
ReDim Arr(1 To (R - 1) \ 100 + 1, 1 To 1)
For i = 2 To R
MS1 = IIf((i - 1) Mod 100 = 0, "", MS1)
K = (i - 1) \ 100 + 1
MS1 = MS1 & """" & Cells(i, 1) & """" & ","
Arr(K, 1) = MS1 & " -"
Next
[F1].Resize(UBound(Arr), 1) = Arr
End Sub
作者:
hcm19522
時間:
2023-2-2 14:02
https://blog.xuite.net/hcm19522/twblog/590708468
作者:
Andy2483
時間:
2023-2-17 07:35
本帖最後由 Andy2483 於 2023-2-17 07:37 編輯
回復
2#
dou10801
再次謝謝前輩發表此主題
希望後學的學習心得能對前輩有所幫助
後學今天複習註解了一下,方便日後再複習,也請前輩參考
Option Explicit
Sub 設陣列收集資料後再寫入儲存格()
Dim i&, K&, R&, MS1$
'↑宣告變數:(i,K,R)是長整數變數,MS1是字串變數
[F:F].ClearContents
'↑令F欄清除儲存格裡的內容
R = Cells(Rows.Count, 1).End(3).Row
'↑令這長整數變數是 A欄最後一個有內容儲存格的列號
ReDim Arr(1 To (R - 1) \ 100 + 1, 1 To 1)
'↑宣告Arr是二維陣列,陣列大小:縱向從1到((R變數-1)除100後取整數再+1)列
'橫向從1到1欄
For i = 2 To R
'↑設順迴圈!i從2到R變數
MS1 = IIf((i - 1) Mod 100 = 0, "", MS1)
'↑令MS1這字串變數是 IIF()回傳值
'如果(i迴圈數-1)除100的餘數是 0,就回傳 空字元
'否則回傳 MS1變數自身值
K = (i - 1) \ 100 + 1
'↑令K這長整數變數是 (i迴圈數-1)除100後取整數再+1
MS1 = MS1 & """" & Cells(i, 1) & """" & ","
'↑令MS1變數是 自身值連接 兩個雙引號字元,接著連接i迴圈列A欄儲存格值,
'再連接 兩個雙引號字元,最後連接 逗號所組成的新字串
Arr(K, 1) = MS1 & " -"
'↑令K變數列第1欄Arr陣列值是 MS1變數連接 " -" 字串組成的新字串
Next
[F1].Resize(UBound(Arr), 1) = Arr
'↑令[F1]擴展向下Arr縱向最大索引列號列數,向右不擴展的範圍值以Arr陣列值帶入
End Sub
歡迎光臨 麻辣家族討論版版 (http://forum.twbts.com/)