2015-11-01 5 views
-1

У меня есть код, который собирается через диапазон А и найти определенную строку, имеющую первые 6 символов, как цифровой коднайти строку, которая не содержит определенное слово

Sub FindString() 
    Dim A As Range, r As Range 
    Set A = Intersect(ActiveSheet.UsedRange, Range("A:A")) 
For Each r In A 
    If IsNumeric(Left(r.Text, 6)) And InStr(1, r, "Totals:") Then 

    MsgBox r.Value 

    End If 
Next r 
End Sub 

с этим кодом он будет вернуть все клетки, которые, имеющие первые 6 символов числовые и имеющие Totals слова: в нем

, но я хочу, чтобы внести изменения в этом коде, который просматривает строку, не имеющая Totals слова: в нем

+1

'Если IsNumeric (левый (r.Text, 6)) И не InStr (1, г,«Тотал:») затем' –

+0

это не работает, дает строку, имеющую общие количества слов в нем и строки, в которых нет итогов слова. – mb1987

+1

'cbool (InStr (1, r," Totals: "))' = true, если return> 0 else это false == >> использовать его как 'If ... Else ...' -condition будет автоматически -cbool "it –

ответ

1

Try это :

If IsNumeric(Left(r, 6)) And 0 = InStr(r, "Totals:") Then 
    MsgBox r 
End If 
+0

Если IsNumeric (Left (r.Text, 6)) И CBool ​​(InStr (1, r, «Итого: ")) = 0 Тогда это послужило мне благодарностью excel hero – mb1987

+0

Вы не ответили на мой вопрос к тому времени, когда я опубликовал. Обновление ответа сейчас. –

+0

Вам не нужен CBool, и вам не нужен .Text. –

Смежные вопросы