Excel VBA宏:按工作日频率自动填充列表
有了这个宏,我可以在每日时间序列数据的底部插入一个新行。宏执行得很好,但即使我指定使用工作日填充序列并避免周末,它仍然不这样做,而是填充一周中的所有天 对我可能遗漏的内容有什么建议吗 请同时查看屏幕截图,以便更好地理解 非常感谢Excel VBA宏:按工作日频率自动填充列表,vba,excel,Vba,Excel,有了这个宏,我可以在每日时间序列数据的底部插入一个新行。宏执行得很好,但即使我指定使用工作日填充序列并避免周末,它仍然不这样做,而是填充一周中的所有天 对我可能遗漏的内容有什么建议吗 请同时查看屏幕截图,以便更好地理解 非常感谢 Sub Weekday_Data_Update() Range("A2").Select Selection.End(xlDown).Select ActiveCell.Offset(-1, 0).Range("A1").Select Ra
Sub Weekday_Data_Update()
Range("A2").Select
Selection.End(xlDown).Select
ActiveCell.Offset(-1, 0).Range("A1").Select
Range(Selection, Selection.End(xlToRight)).Select
Range(Selection, Selection.End(xlDown)).Select
Selection.Resize(3).Select
Selection.DataSeries Rowcol:=xlColumns, Type:=xlAutoFill, Date:=xlWeekday, _
Trend:=False
End sub
宏如何错误填充日期的示例
我被你所有的上下横移弄糊涂了。要仅使用工作日在一个范围内扩展日期,将使用如下语法:
Option Explicit
Public Sub Test()
With Worksheets("Sheet1")
.Range("A2").AutoFill Destination:=.Range("A2:A7"), Type:=xlFillWeekdays
End With
End Sub
.Range("A2").AutoFill Destination:=.Range(.Cells(2, "A"), .Cells(.Cells.SpecialCells(xlLastCell).Row, "A")), Type:=xlFillWeekdays
您可以按如下方式构建最后使用的单元格填充:
Option Explicit
Public Sub Test()
With Worksheets("Sheet1")
.Range("A2").AutoFill Destination:=.Range("A2:A7"), Type:=xlFillWeekdays
End With
End Sub
.Range("A2").AutoFill Destination:=.Range(.Cells(2, "A"), .Cells(.Cells.SpecialCells(xlLastCell).Row, "A")), Type:=xlFillWeekdays
下面的代码将只打印工作日
Sub Weekday_Data_Update()
Dim startRange As Range
Dim stopRange As Range
'Specify the cell where the date starts
Set startRange = Sheets("Sheet1").Range("A2")
'Specify the cell until which you want weekdays to be displayed
Set stopRange = Sheets("Sheet1").Range("A2:A6")
startRange.Select
Selection.AutoFill Destination:=stopRange, Type:=xlFillWeekdays
End Sub
p.S:不确定为什么在代码中有许多范围选择。根据MSDN,
日期:=xlWeekday
仅在您使用类型:=xl按时间顺序
所以,试试看
Selection.DataSeries Rowcol:=xlColumns, Type:=xlChronological, Date:=xlWeekday, _
Trend:=False
您可能也会感兴趣,谢谢您的评论。您提出的语法似乎只在工作日填充新行。使用这种语法的唯一问题是,每个日期的相邻单元格(其中包含公式)都作为一个系列填充,因此不使用公式填充。你认为这个问题可以在保持你建议的语法的同时解决吗?我不知道你对相邻列的要求是什么。这个答案解决了您的Q re
.DataSeries
。您应该研究DataSeries
与其他方法(例如AutoFill
)的行为,以确定最适合您的情况