Сравнение значения ячейки с именем листа не работает должным образом - PullRequest
0 голосов
/ 11 января 2019

Я делаю некоторый тест, сравнивая значение в ячейке с именем листа. Значение в Cells(2,1) равно 5, а имя листа также 5.

Sub test()    
    MsgBox (Cells(2, 1) & ActiveSheet.Name)

    If Cells(2, 1).Value = ActiveSheet.Name Then
        MsgBox ("They are the same")
    End If
End Sub

Я получил всплывающее окно с надписью 55, означающее, что два значения одинаковы, но окно "Одинаковое" так и не появилось. Интересно, чего здесь не хватает?

1 Ответ

0 голосов
/ 11 января 2019

Значение ячейки - это число, а имя листа - строка. Преобразуйте число в строку, используя CStr, прежде чем сравнивать с именем листа.

Sub test()
    MsgBox (Cells(2, 1) & ActiveSheet.Name)

    If CStr(Cells(2, 1).Value) = ActiveSheet.Name Then
        MsgBox "They are the same"
    End If
End Sub
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...