Ошибка VBA / Excel - Ошибка в значении при использовании StartsWith - PullRequest
0 голосов
/ 10 апреля 2020

Функция ниже печатает значение South, когда я вызываю = LRegionName (cell) из excel, когда значение ячейки равно S. Но когда значение ячейки равно N, это дает ошибку в значении в excel. Чего мне не хватает?

Function LRegionName(LRegion)
If LRegion = "S" Then
   LRegionName = "South"
ElseIf LRegion.startsWith("N") Then
    LRegionName = "North"
ElseIf LRegion = "E" Then
   LRegionName = "East"
ElseIf LRegion = "W" Then
   LRegionName = "West"
Else
   LRegionName = "Dont know"
End If

End Function

Ответы [ 2 ]

1 голос
/ 10 апреля 2020

Заменить:

ElseIf LRegion.startsWith("N") Then

на:

ElseIf Left(LRegion,1) = "N"  Then
0 голосов
/ 10 апреля 2020

Вы можете использовать ответ Гэри, если вы соответствуете только одной букве.

Если вы хотите сопоставить несколько букв в начале, вы можете использовать

ElseIf LRegion Like "N*" Then

Здесь, " * "означает, что это может быть что угодно после N.
Точно так же, если вы наберете" Нет * ", это означает, что это может быть что угодно после" Nor "или" Norman "или" North "

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...