Удаление первого символа строки, если она равна чему-то
Я занимаюсь VBA для Access 2010.
Я прочитал все предлагаемое сообщение относительно моего сообщения, но не нашел ничего конкретного.
Я знаю, как перемещать определенные символы в строке, что я не знаю, так это то, как я могу удалить конкретный символ, равный чему-то.
Я хочу переместить символ 1 или 1 из телефонных номеров, если он есть.
Пример: 17188888888 - 7188888888 или 1-7188888888 - 7188888888
Я пытаюсь использовать оператор if, начиная с первого раза, просто удалив 1.
Номер телефона вводится как строка, а не номера.
Это то, что я начал: я получаю сообщение об ошибке, что RemoveFirstChar неоднозначно.
Public Function RemoveFirstChar(RemFstChar As String) As String
If Left(RemFstChar, 1) = "1" Then
RemFstChar = Replace(RemFstChar, "1", "")
End If
RemoveFirstChar = RemFstChar
End Function
Ответы
Ответ 1
Я тестировал вашу функцию в Access 2010, и она работала просто fune. Вы также можете использовать этот код:
Public Function RemoveFirstChar(RemFstChar As String) As String
Dim TempString As String
TempString = RemFstChar
If Left(RemFstChar, 1) = "1" Then
If Len(RemFstChar) > 1 Then
TempString = Right(RemFstChar, Len(RemFstChar) - 1)
End If
End If
RemoveFirstChar = TempString
End Function
Ответ 2
В вашем коде нет ничего особенно плохого, сообщение об ошибке "неоднозначное" в этом контексте очень вероятно, потому что у вас есть другая подфункция или функция в другом модуле с тем же именем. Найдите двойное имя.
Если вы поместите функцию в модуль, принадлежащий форме или отчету, лучше всего пропустить "Публикация". Если вы намерены использовать функцию в нескольких формах, создайте новый модуль, который не привязан к форме, и поместите функции, которые предназначены для всех форм и отчетов.
Почти всегда полезно предоставить полное сообщение об ошибке и номер ошибки.