在运行之前,我试图让宏检查两个条件:是否输入了水果以及是否为每个水果添加了计数。
我想确保在输入水果时为每个水果输入一个数量,但水果不会一直输入到第94行(例如,可能只输入到第15行(。当我运行下面的宏时,消息框会出现在输入任何水果的位置之外,但我希望它在没有输入水果时停止。
Sub Check_fruit()
Dim x As String
Dim y As Integer
Dim rSearch As Range
Dim rSearch1 As Range
Dim cell As Range, cell1 As Range
Dim matchRow As Integer
Set rSearch = Sheets("Import").Range("C05:C94")
Set rSearch1 = Sheets("Import").Range("D05:D94")
For Each cell In rSearch
x = cell.value
For Each cell1 In rSearch1
y = cell1.value
If y = 0 And (x = "apple" _
Or x = "orange" _
Or x = "pear" _
Or x = "grape" _
Or x = "peach" _
Or x = "banana" _
Or x = "strawberry") Then
MsgBox "You must specify how many fruit."
Exit Sub
End If
Next cell1
Next cell
End Sub
只需要BigBen指出的一个循环。
您可以通过从ColC 中偏移来从ColD中读取
Sub Check_fruit()
Dim cell As Range
For Each cell In Sheets("Import").Range("C5:C94").Cells
Select Case cell.Value
Case "orange", "pear", "grape", "peach", "banana", "strawberry"
If cell.Offset(0, 1) = 0 Then 'read next column over
MsgBox "You must specify how many fruit."
cell.Offset(0, 1).Select
Exit Sub
End If
End Select
Next cell
End Sub