Board logo

標題: [發問] VBA自動向下填滿問題 [打印本頁]

作者: msmplay    時間: 2017-7-5 22:53     標題: VBA自動向下填滿問題

[attach]27433[/attach]
說明:
公式1~公式3(C:E欄)已使用VBA參照A欄資料自動向下填滿

問題:
A欄資料如果持續向下新增時,每次按下「公式向下填滿」按鈕,C:E欄公式均會從C2:E2重新向下填滿
請問該如何更改為
每次按下「公式向下填滿」按鈕時,C:E欄公式除了參照A欄資料自動向下填滿
但是以C:E欄最後一筆公式的下一列開始向下填滿

例如:
第一次A欄資料新增至A8,按下「公式向下填滿」按鈕時,C:E欄公式自動向下填滿至C8:E8
第二次再人工新增A9:A15資料,希望再按下「公式向下填滿」按鈕時
C:E欄公式可以從C9:E9開始自動向下填滿至C15:E15,並非從C2:E2重新向下填滿
以此類推…………求大師幫解~~~~~~


[attach]27434[/attach]
作者: GBKEE    時間: 2017-7-6 09:58

回復 1# msmplay
試試看
  1. Sub 向下填滿()
  2.     With Range("C2:E2")
  3.         If .End(xlDown).Row = Rows.Count Then
  4.             '第一次A欄資料新增至A8,按下「公式向下填滿」按鈕時,C:E欄公式自動向下填滿至C8:E8
  5.             .AutoFill Destination:=.Cells.Resize(Range("A1").End(xlDown).Row - 1), Type:=xlFillCopy
  6.         ElseIf .End(xlDown).Row < Range("A1").End(xlDown).Row Then
  7.             With .End(xlDown).Resize(, .Columns.Count)
  8.                 '第二次再人工新增A9:A15資料,希望再按下「公式向下填滿」按鈕時
  9.                 'C: E欄公式可以從C9: E9開始自動向下填滿至C15: E15 , 並非從C2: E2重新向下填滿
  10.                 .AutoFill Destination:=.Cells.Resize(Range("A1").End(xlDown).Row - .Row + 1), Type:=xlFillCopy
  11.             End With
  12.         End If
  13.     End With
  14. End Sub
複製代碼

作者: msmplay    時間: 2017-7-6 12:41

回復 2# GBKEE


   G大~~~~~~~測試已成功,非常感謝熱心幫忙ㄛ
作者: msmplay    時間: 2017-7-8 21:17

回復 2# GBKEE


   G大~~小妹目前還遇到了另一個問題,可以也請你幫忙看看嗎~~非常感謝~~~~~~
http://forum.twbts.com/thread-19849-1-1.html




歡迎光臨 麻辣家族討論版版 (http://forum.twbts.com/)