当我使用像Cell(5,34)这样的单个单元格值时,它可以工作但是当我有一系列单元格时它不起作用。
MyRange = Worksheets("POR_Days").Range(Cells(5, 31), Cells(5, 34)).Value
Worksheets("Sheet1").Range(Cells(3, 31), Cells(3, 34)).Value = Application.WorksheetFunction.WeekNum(MyRange, 21)
答案 0 :(得分:2)
这有些混乱。范围的默认属性是值,在许多情况下,当您看起来引用范围时,您实际上引用此范围中的值。对于WeekNum,此值是参数,而不是范围本身。我建议循环通过这个范围并计算每个单元格的周数:
Sub MySub()
Dim MyRange As Range
Dim cl As Range
Set MyRange = Worksheets("POR_Days").Range(Cells(5, 31), Cells(5, 34))
For Each cl In MyRange
cl.Offset(-2).Value = Application.WorksheetFunction.WeekNum(cl, 21)
Next cl
End Sub