Непонятно поведение If ... Then ... Else

Автор Посетитель, 12 июля 2024, 15:52

Посетитель

Здравствуйте !
Подскажите, пожалуйста по коду, что не так ...
Задаю условие: если значение ячейки 2-й строки 19-го столбца равно слову "Бам", то выводится сообщение со словом "Есть".
Если в ячейке нет такого слова, то выводится сообщение со значением этой ячейки.
В результате получается, что такого слова в ячейке нет и идёт переход к оператору Else, где выдаётся сообщение "Бам".
Как так ?? Этого слова нет, но выдаётся, что есть ??

    Dim n As String
    n = Cells(2, 19).Value
   
    If Cells(2, 19) = "Бам" Then
    MsgBox ("Есть")
      Else
      MsgBox (n)



Администратор

Не хватает ещё окончания конструкции If.. Then.
В конце должно быть End If.

Посетитель

Простите, Enf If просто не дописал. Он есть. Суть не меняется: слово "Бам", в ячейке есть, а логический оператор переводит на Else, т.е. слова нет. И после Else выдаёт, это слово. То есть оно есть. Вот как это ??

Администратор

Может быть в ячейке пробел есть.
Перейдите в строку формул, щёлкните справа в строке формул. Если справа есть пробелы, то будет видно, что между текстом и курсором пусто.

Посетитель

Да, Спасибо !
Пробел оказался впереди слова. Поставил Like и макрос заработал.