Ms access 删除字符串的第一个字符(如果它等于某物)

Ms access 删除字符串的第一个字符(如果它等于某物),ms-access,vba,Ms Access,Vba,我正在为Access 2010练习VBA 我阅读了所有关于我的帖子的建议,但没有发现任何具体内容。 我知道如何移动字符串中的特定字符,但我不知道如何删除等于某个值的特定字符 我想移动电话号码中的字符1或1(如果有) 示例:1718888888至718888888或1-718888888888至718888888 我尝试使用if语句,首先删除1 电话号码是以字符串形式输入的,而不是数字 这是我开始的:我收到一条错误消息,RemoveFirstChar不明确 Public Function Remo

我正在为Access 2010练习VBA

我阅读了所有关于我的帖子的建议,但没有发现任何具体内容。 我知道如何移动字符串中的特定字符,但我不知道如何删除等于某个值的特定字符

我想移动电话号码中的字符1或1(如果有)

示例:1718888888至718888888或1-718888888888至718888888

我尝试使用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

我已经在Access 2010中测试了你的功能,它非常有效。。您还可以使用以下代码:

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

您的代码没有什么特别的错误,在这个上下文中“不明确”的错误消息很可能是因为您在另一个模块中有另一个子模块或函数具有相同的名称。搜索以查找重复的名称

如果将函数放在属于表单或报表的模块中,最好跳过“Public”。如果希望多个表单使用该功能,请创建一个未附加到表单的新模块,并将所有表单和报表的功能放在该模块中


提供完整的错误消息和错误号几乎总是好的。

我不确定为什么它不起作用,但你的却起作用,那么我如何修改它以从一开始就删除1-如果它在那里?谢谢谢谢你的宝贵意见-这真的很重要!再次感谢!在对“1”进行测试之后,您可以在第一个“如果结束”之后添加一个“-”的第二个测试,该测试执行相同的操作。。。