因此,我正在尝试自动化一个过程,当您单击命令按钮时,它将运行此宏。
我的目标是首先检查最上面的空白单元格的值的第一个范围(在本例中为C23和C69之间)中添加最新日期。一旦填充了一个空单元格,我就想杀死该宏。
从那里,在下一列中,我要向D23到D69内的最新空单元格中添加某个单元格值(F21)。与上述相同,一旦填充了一个空单元格,我就想杀死该宏。
一旦给出这些值,我就可以结束代码。 我可以用Java编写此代码,但是我不知道如何在excel vba中将其设置为宏,因此任何帮助都将非常有用!谢谢!
这是我当前的代码(肯定非常错误)
Sub ChartAdder()
Dim i As Range
For i = C23 To C69
If IsEmpty(i) Then
i = LastSavedATimeStamp()
break
Else
keep going
Dim j As Range
For j = D23 To D69
If IsEmpty(j) Then
j = F21
break
Else
keep going
End Sub
答案 0 :(得分:1)
这里有一些更正,可以帮助您获得一些更适合我认为您打算做的事情的东西。如果您使用JavaScript编写代码,那可能会有所帮助。
Sub ChartAdder()
Dim i As Range
For Each i In Range("C23:C69").Cells
If IsEmpty(i) Then
i = Date
break
Exit For
End If
Next i
Dim j As Range
For Each j In Range("D23:D69").Cells
If IsEmpty(j) Then
'
j.Value = Range("F21").Value
Exit For
End If
Next j
End Sub
答案 1 :(得分:0)
感谢您的帮助!我能够得到一个功能性的答案:D
Sub ChartAdder()
a = Date
b = F21
Dim i As Range
For Each i In Range("C23:C69").Cells
If IsEmpty(i) Then
i = a
Exit For
'Exit Sub will kill the whole macro
'break
End If
Next i
Dim j As Range
For Each j In Range("D23:D69").Cells
If IsEmpty(j) Then
.Value = Range("F21").Value
Exit For
'Exit Sub will kill the whole macro
'break
End If
Next j
End Sub