在Select Case中使用InStr函数

这似乎并没有工作。 有没有办法做我想在这里做什么? 如果价值是在一个给定的刺痛,我不能select一个案件:

Select Case gTTD.Cells(r, 4) Case InStr(gTTD.Cells(r, 4), "MASTER LOG") resp = "MM LOG" Case InStr(gTTD.Cells(r, 4), "MASTER MET") resp = "MM MET" Case "PIR" gTTD.Cells(r, 7) = "Martin Trépanier" resp = "Martin Trépanier" End Select 

我明白为什么这个不能工作,但有没有办法让它工作? 谢谢

谢谢

这是我使用的一个小窍门,select语句只是想find相同的结果。 这是一个简单的例子:

  Select Case True Case (1 = 2) Stop Case (2 = 3) Stop Case (4 = 4) Stop Case Else Stop End Select 

这将落入4 = 4的情况。 在你的例子中,这可能是一个简单的答案:

 Select Case True Case (InStr(gTTD.Cells(r, 4), "MASTER LOG") > 0) resp = "MM LOG" Case (InStr(gTTD.Cells(r, 4), "MASTER MET") > 0) resp = "MM MET" Case else gTTD.Cells(r, 7) = "Martin Trépanier" resp = "Martin Trépanier" End Select 

尝试这个

 dim r as integer for r = 1 to 'number of rows if Instr(gTTD.Cells(r, 4), "MASTER LOG") <> 0 then resp = "MM LOG" elseif Instr(gTTD.Cells(r, 4), "MASTER MET") <> 0 then resp = "MM MET" else gTTD.Cells(r, 7) = "Martin Trépanier" resp = "Martin Trépanier" end if next r