有沒有辦法讓自動填充增加10而不是1?我的工作表中以下代碼功能。用戶(地質學家)在B1中定義起始站號,在B2中定義終點站號。該宏運行並從C5開始,列中填充了從開始到結束站的站號。但是,數據只需要每10個工作站收集一次,而且我還無法弄清楚如何將其合併到我的代碼中。取而代之的1000,1001,1002 ...等等,我想1000,1010,1020 ...Excel VBA自動填充動態範圍並增加10
Sub StationFill()
Dim taskStationEnd As Long
Dim taskStationBegin As Long
taskStationBegin = Range("B1").Value
taskStationEnd = Range("B2").Value
With Worksheets("Data")
.Columns(3).ClearContents
Set SourceRange = .Range("C5")
SourceRange.Value = taskStationBegin
Set fillRange = .Range(SourceRange, _
Cells(SourceRange.Row + taskStationEnd - taskStationBegin, SourceRange.Column))
SourceRange.AutoFill Destination:=fillRange, Type:=xlFillSeries
End With
End Sub
(第一次海報。不知道我的格式正確無誤,並得到了在右邊的代碼換行符地方)
謝謝!這很好。我需要更多地考慮SourceRange Offset和Resize如何完全理解您的解決方案,但我很高興能夠分辨和理解,而不是我拼湊在一起的東西。 – AnnaNmty 2014-12-03 19:40:29
@AnnaNmty *偏移*就像你在按箭頭鍵。所以'.Offset(1,0)'意味着你將目標單元格1行從你的* Range Object *引用中移走。調整大小就像按住Shift鍵一樣按箭頭鍵。 '.Resize(2)'表示將選擇擴展爲2行。我省略了列參數,因爲不需要調整列數。如果是相反的話,那麼你可以像'.Resize(,2)'那樣省略行參數。 – L42 2014-12-03 22:04:43
我現在有一個類似的任務,只是這次自動填充行而不是列。根據我對你解釋的理解,我將偏移量改爲'.Offset(0,1)',並將其調整爲'.Resize(,2)'。我收到「範圍類的自動填充方法失敗」的錯誤說明。 任何幫助理解如何糾正這是值得讚賞的。 – AnnaNmty 2015-02-09 04:14:44