我正在尝试创建一个this之类的VBA项目,但是我很难使用LIKE函数,并且当我按下运行按钮时似乎什么也没发生。
我要做什么:
更多信息:
我在excel和VBA中的当前职位:
Sub number()
Dim first As Range
Set first = Range("B4:B259")
Dim numeric As Range
Set numeric = Range("C4:B259")
Dim DColumn As Range
Set DColumn = Range("D4:D259")
For Each first In DColumn
If first Like " " Then
DColumn = "Invalid Part Number"
DColumn.Interior.ColorIndex = 6
End If
Next
End Sub
答案 0 :(得分:2)
下面的宏将执行3个测试,并且每个测试都会获得自己的输出。
这些测试不是一致的-输出将为1,或者为无。一旦测试语句为TRUE
,循环将针对该单元格结束,其他值将不进行测试。
例如,当上面的#1和#2为true时,此宏将不会为您提供输出。它只会告诉您#1是否为真。
此代码不需要您拆分产品代码。该宏将按原样与他们一起使用
Sub MyNum()
Dim xCell As Range, Product_Code As Range
Set Product_Code = Sheets("Sheet1").Range("A2:A9") '<-- Update sheet name
For Each xCell In Product_Code
If IsNumeric(Left(xCell, 1)) Or Left(xCell, 1) = " " Then
xCell.Offset(0, 1) = "Invalid Product: Char 1 = Numeric or Null"
ElseIf Right(xCell, Len(xCell) - 1) Mod 2 = 0 Then
xCell.Offset(0, 1) = "Even Ending Range"
ElseIf Right(xCell, Len(xCell) - 1) Mod 2 <> 0 Then
xCell.Offset(0, 1) = "Odd Ending Range"
End If
Next xCell
End Sub