我正在尝试编辑我的一个工作簿的 VBA,以便如果 A 列中有值,则需要 C 列的值,否则文件将无法保存,但我遇到了一些问题。我可以让 excel 检查单元格是否有任何输入并要求它有输入,但我需要它在要求输入之前检查另一个单元格是否有输入。这是因为我的电子表格中的所有行都不会一直使用,但有些人忘记在电子表格中输入非常重要的信息,这会导致我们的一些余额丢失。
当我们切换到新的 SKU 时,会在工作表中输入一个 SKU,并且我希望程序确保每次在工作表中输入新的 SKU 时,给定单元格中都有一定数量的产品。
谢谢。
答案1
类似这样的方法可以起到作用,它提醒用户输入数量。将其放入工作表的代码中。
Sub worksheet_change(ByVal target As Range)
If Not Intersect(target, Range("A:A")) Is Nothing And target.Value <> "" Then
If target.Offset(, 2) = "" Then
MsgBox ("For the SKU you just entered, be sure to enter a quantity in Column C")
End If
End If
End Sub
您可以更改它,以便它接受输入或其他任何内容(如果您愿意)。像这样 -
Sub worksheet_change(ByVal target As Range)
If Not Intersect(target, Range("A:A")) Is Nothing And target.Value <> "" Then
If target.Offset(, 2) = "" Then
target.Offset(, 2) = InputBox("How many of these are there?")
End If
End If
End Sub