我想设置一个从 00:00 到 23:59 的时间表
到目前为止我得到了一点。我的问题是 vba 不断重写时间。
Sub uhrzeit()
Dim i As Integer
Dim stunde As Integer
For stunde = 1 To 24
For i = 1 To 60
Cells(i, 1) = stunde
Cells(i, 2) = i
Next i
Next stunde
End Sub
最佳答案
这很简单:您不必每小时前进(60),而是(重写)Cells(i, 1)
24 次。
请注意,您始终应该告诉 VBA 您要在哪张工作表上工作,并且不推荐使用 Integer
(请改用 Long
)。您可能希望时间从 0 到 23 运行,而不是从 1 到 24 运行,分钟从 0 到 59 运行。
Const rowOffset = 2
Dim stunde As Long, min as Long
With ActiveSheet ' Or something like ThisWorkbook.Sheets(1)
For stunde = 0 To 23
For min = 0 To 59
Dim row As Long
row = stunde * 60 + min + rowOffset
.Cells(row, 1) = stunde
.Cells(row, 2) = min
Next min
Next stunde
End With
更新添加了rowOffset
- 显然你不能写入单元格0
关于excel - 从 00 :00 until 23:59 VBA 开始迭代时间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/75558719/