Excel VBA - 自动趋势填充

时间:2015-08-24 07:28:13

标签: excel-vba vba excel

所以我有一张这样的表:

(假设A是潮汐时间,B潮汐高度)

Tidal Time  Tidal Height
00:00:00    
01:00:00    
02:00:00    
03:00:00    
04:00:00    4.4
05:00:00    
06:00:00    
07:00:00    
08:00:00    
09:00:00    
10:00:00    2.1
11:00:00    
12:00:00    
13:00:00    
14:00:00    
15:00:00    
16:00:00    4.6
17:00:00    
18:00:00    
19:00:00    
20:00:00    
21:00:00    
22:00:00    
23:00:00    1.9

B中的这些值并不总是相同的,它们会根据当天的潮汐高度和时间而变化。关于如何自动趋势,我被困了一段时间,但我想我已经完成了一半的问题。录制宏给了我这个:

Sub Macro1()
'
' Macro1 Macro
'

'
    Range("B6:B12").Select
    Selection.DataSeries Rowcol:=xlColumns, Type:=xlLinear, Date:=xlDay, _
        Trend:=True
    Range("B12:B18").Select
    Selection.DataSeries Rowcol:=xlColumns, Type:=xlLinear, Date:=xlDay, _
        Trend:=True
    Range("B18:B25").Select
    Selection.DataSeries Rowcol:=xlColumns, Type:=xlLinear, Date:=xlDay, _
        Trend:=True
End Sub

上面的代码只选择一个范围内的预定点并自动趋势。然而,这些填充值不是静态的,因此预定的单元选择在这方面不起作用。

所以我需要做的是循环B. B中的每个单元格 选择从B2填充的顶部的第一个,趋势到填充的下一个单元格等等,直到没有更多的值可以选择趋势。
任何想法还是可以想到更好的方法?

第二个问题是我没有明确的开始。理想情况下,它会从最后一天的值和前面的趋势中填充空间B2到B5。但这很难。如果我已经在B2中有价值怎么办?然后我不需要趋势。我怎么知道趋势还有多远,即使我从前一天开始也是如此。刚刚在00:00:00粘贴上一次是行不通的。如果只有一个空间可用,(即B4,02:00:00填写)趋势功能只会将该时间缩短一半,而B3将是错误的。你看到我的问题。任何有关这方面的帮助将不胜感激。提前谢谢!

0 个答案:

没有答案