2014-12-03 138 views
1

有沒有辦法讓自動填充增加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 

(第一次海報。不知道我的格式正確無誤,並得到了在右邊的代碼換行符地方)

回答

1

試試這個:

Sub marine() 
    Dim taskStationEnd As Long 
    Dim taskStationBegin As Long 
    Dim SourceRange As Range 

    Const interval As Long = 10 '<~~ this is your interval 

    With Sheets("Sheet1") '<~~ change to suit 
     taskStationBegin = .Range("B1").Value 
     taskStationEnd = .Range("B2").Value 
     Set SourceRange = .Range("C5") 
     SourceRange = taskStationBegin 
     SourceRange.Offset(1, 0) = taskStationBegin + interval 
     SourceRange.Resize(2).AutoFill _ 
      SourceRange.Resize(((taskStationEnd - taskStationBegin)/interval) + 1) _ 
      , xlFillSeries 
    End With 
End Sub 
+0

謝謝!這很好。我需要更多地考慮SourceRange Offset和Resize如何完全理解您的解決方案,但我很高興能夠分辨和理解,而不是我拼湊在一起的東西。 – AnnaNmty 2014-12-03 19:40:29

+0

@AnnaNmty *偏移*就像你在按箭頭鍵。所以'.Offset(1,0)'意味着你將目標單元格1行從你的* Range Object *引用中移走。調整大小就像按住Shift鍵一樣按箭頭鍵。 '.Resize(2)'表示將選擇擴展爲2行。我省略了列參數,因爲不需要調整列數。如果是相反的話,那麼你可以像'.Resize(,2)'那樣省略行參數。 – L42 2014-12-03 22:04:43

+0

我現在有一個類似的任務,只是這次自動填充行而不是列。根據我對你解釋的理解,我將偏移量改爲'.Offset(0,1)',並將其調整爲'.Resize(,2)'。我收到「範圍類的自動填充方法失敗」的錯誤說明。 任何幫助理解如何糾正這是值得讚賞的。 – AnnaNmty 2015-02-09 04:14:44

0

我試圖用Excel 2010中,有一個增加值可用的(步驟)。

Range("A1:A26").DataSeries Rowcol:=xlColumns, Type:=xlLinear, **Step:=10** 

也許它可以幫助你。

親切的問候, Christof

+0

我無法弄清楚如何爲我的任務完成Step工作,但是感謝您讓我知道它存在!我有一些閱讀和學習要做。 – AnnaNmty 2014-12-03 19:33:18