下面的代码是我完整的摘录的一种摘录,因为它可以更容易阅读。我需要在某些情况下添加更多标准,我不确定如何实施。
要连续总结一下,如果列k的单词以b,m或d开头,则运行一组情况。如果列k的单词以a开头,则运行一组不同的情况。同样,这在起作用。但是在某些情况下,我需要它具有更多标准,而不仅仅是查看o。
。例如,在第一种情况下,它需要检查"伊利诺伊大学"one_answers" UOFI",但还需要检查P列的" Urbana"one_answers"芝加哥"的值。我该怎么做?
Sub Test4()
Dim LastRow As Long
Dim i As Long
LastRow = Range("O" & Rows.Count).End(xlUp).Row
For i = 84 To LastRow
If Range("K" & i) Like "B*" Or Range("K" & i) Like "M*" Or Range("K" & i) Like "D*" Then
Select Case Range("O" & i)
Case "University of Illinois", "UofI"
Range("N" & i) = "1234"
End Select
End If
If Range("K" & i) Like "A*" Then
Select Case Range("O" & i)
Case "New York University", "NYU"
Range("N" & i) = "5075"
End Select
End If
Next i
End Sub
Select Case Range("O" & i)
Case "University of Illinois", "UofI"
Select Case Range("P" & i")
Case "Urbana", "Chicago"
Range("N" & i) = "1234"
End Select
End Select
这足够了吗?尚未测试,所以请反馈,以便我们可以让您进入解决方案
在正常情况下, Select Case
语句不适用于Like
操作员。但是,有一个工作。
为了使Select Case
与Like
一起使用,我们将添加True
表达式。
代码
Sub Test4()
Dim LastRow As Long
Dim i As Long
LastRow = Range("O" & Rows.Count).End(xlUp).Row
For i = 84 To LastRow
Dim wordStr
wordStr = Range("K" & i)
' adding True to enter the below Case with Like
Select Case True
Case wordStr Like "B*", wordStr Like "M*", wordStr Like "D*"
Select Case Range("O" & i)
Case "University of Illinois", "UofI"
Range("N" & i) = "1234"
End Select
Case wordStr Like "A*"
Select Case Range("O" & i)
Case "New York University", "NYU"
Range("N" & i) = "5075"
End Select
End Select
Next i
End Sub
,因为您需要抓住以" 开头"的单词,您可以像这样
Sub Test4()
Dim LastRow As Long, i As Long
LastRow = Range("O" & Rows.count).End(xlUp).row
For i = 84 To LastRow
Select Case Left(Range("K" & i).Value, 1)
Case "B", "M", "D"
Select Case Range("O" & i).Value
Case "University of Illinois", "UofI"
Range("N" & i) = "1234"
End Select
Case "A"
Select Case Range("O" & i).Value
Case "New York University", "NYU"
Range("N" & i) = "5075"
End Select
End Select
Next i
End Sub