[算表] excel vba 自動填滿 如何以變數控制範圍

看板Office作者 (snniicckk1)時間10年前 (2016/03/24 19:07), 10年前編輯推噓0(008)
留言8則, 2人參與, 最新討論串1/1
軟體: excel 版本: 2010 這個...我是用錄製的 ActiveCell.AutoFill Destination:=ActiveCell.Range("A1:M1") 我想要的是不要用字串來限制只能填滿固定的欄位(也就是A欄至M欄,橫向填滿) 想要請教各位大大如何用變數來更加靈活控制橫向填滿的方法。 如果是縱向填滿則是使用變數取代 如 使用變數 lastrow 代入 ActiveCell.AutoFill Destination:=ActiveCell.Range("A1" :A" & lastrow ) 但是 橫向填滿要如何操作變數呢? 謝謝 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 1.160.11.165 ※ 文章網址: https://www.ptt.cc/bbs/Office/M.1458817662.A.E5C.html

03/24 22:39, , 1F
可用range("a1",cells(1,lastrow)) 方式
03/24 22:39, 1F

03/24 22:39, , 2F
或是range.resize
03/24 22:39, 2F

03/25 12:43, , 3F
謝謝soyoso大大 小弟來試試看
03/25 12:43, 3F
soyoso大大 小弟使用變數 finalcolumn 代入 ActiveCell.AutoFill Destination:=ActiveCell.Range("A1",cells(1,finalcolumn)) 執行時會出現語法錯誤 請問 我是哪裡用錯了嗎? ※ 編輯: snniicckk1 (1.163.54.246), 03/25/2016 12:56:08

03/25 13:13, , 4F
finalcolumn值是?
03/25 13:13, 4F

03/25 13:18, , 5F
是資料範圍的尾端欄位數 如5899欄位
03/25 13:18, 5F
我是用 finalcolumn = cells(1,columns.count).end(xltoleft).column ※ 編輯: snniicckk1 (1.163.54.246), 03/25/2016 13:19:23

03/25 13:27, , 6F
03/25 13:27, 6F

03/25 13:27, , 7F
finalcolumn方式請依原po的語法
03/25 13:27, 7F
soyoso大大 已按照您指導的方式 小弟執行時仍舊會出現語法錯誤 Sub test() Dim finalcolumn finalcolumn = 5899 [a1].Select [a1].AutoFill Range("a1", Cells(1, finalcolumn)) ←出現 語法錯誤 End Sub 不好意思 一再麻煩大大您 可以再幫小弟看看是哪裡出了問題嗎 ※ 編輯: snniicckk1 (1.163.54.246), 03/25/2016 13:35:10 ※ 編輯: snniicckk1 (1.163.54.246), 03/25/2016 13:37:16 ※ 編輯: snniicckk1 (1.163.54.246), 03/25/2016 13:38:24

03/25 13:49, , 8F
測試上無出現錯誤
03/25 13:49, 8F
謝謝soyoso大大 還專程錄影片給小弟 太謝謝您了 小弟後來再多試幾次 [a1].Select [a1].AutoFill ActiveCell.Range("a1", Cells(1, finalcolumn)) 增加 ActiveCell.Range 這樣就沒問題了 謝謝soyoso的技術指導!!!!!! ※ 編輯: snniicckk1 (1.163.54.246), 03/25/2016 15:34:55
文章代碼(AID): #1Myyf-vS (Office)
文章代碼(AID): #1Myyf-vS (Office)