数组中有若干个字符串,用vba生成一个判断,如果表格a列有值等于数组中的字符串,则将该单元格赋值为数组中第一个字符串,否则赋值为数组中的第二个字符串
时间: 2023-04-09 14:05:01 浏览: 100
可以使用VBA中的InStr函数来判断表格a列中的值是否等于数组中的字符串,然后使用If语句进行判断和赋值操作。以下是示例代码:
```
Sub CheckArray()
Dim arr() As String
arr = Split("string1,string2", ",") '将字符串转换为数组
Dim lastRow As Long
lastRow = Cells(Rows.Count, "A").End(xlUp).Row '获取表格a列的最后一行
For i = 1 To lastRow '循环遍历表格a列
For j = 0 To UBound(arr) '循环遍历数组
If InStr(1, Cells(i, "A").Value, arr(j), vbTextCompare) > 0 Then '判断表格a列中的值是否等于数组中的字符串
Cells(i, "B").Value = arr(0) '如果等于,则将该单元格赋值为数组中的第一个字符串
Exit For '退出循环
Else
Cells(i, "B").Value = arr(1) '如果不等于,则将该单元格赋值为数组中的第二个字符串
End If
Next j
Next i
End Sub
```
注意:在实际使用中,需要将代码中的字符串数组和表格列名进行相应的修改。
阅读全文