2011-12-26 23 views
11

estoy practicando VBA para Access 2010.de quitar el primer carácter de una cadena si es igual a algo

leí todos los post sugerido con respecto a mi puesto, pero no encontró nada específico. Sé cómo mover caracteres específicos en una cadena, lo que no sé es cómo puedo eliminar el carácter específico que equivale a algo.

Quiero mover el carácter 1 o 1 de los números de teléfono, si hay alguno.

Ejemplo: 17188888888 7188888888 o al 7188888888 1-7188888888 a

Estoy intentando utilizar una sentencia if comenzando primero con sólo la eliminación de la

1.

El número de teléfono se introduce como una cadena no números.

Esto es lo que he comenzado: recibo un mensaje de error que RemoveFirstChar es ambiguo.

Public Function RemoveFirstChar(RemFstChar As String) As String 
If Left(RemFstChar, 1) = "1" Then 
    RemFstChar = Replace(RemFstChar, "1", "") 
End If 
RemoveFirstChar = RemFstChar 
End Function 

Respuesta

16

He probado su función en Access 2010 y ha funcionado fune .. También puede utilizar este código:

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 
+0

No estoy seguro de por qué no funciona, pero el suyo está funcionando, así que ¿cómo puedo modificar esto para eliminar también 1 desde el principio si es que está allí? ¡Gracias! – Asynchronous

+0

Gracias por su valiosa contribución, ¡realmente hace la diferencia! ¡Gracias de nuevo! – Asynchronous

+0

Después de probar el "1", puede agregar una segunda prueba para "-" después del primer "fin si" allí que hace lo mismo ... – Karel

1

No hay nada malo en particular con su código, el error "ambigua" Es muy probable que el mensaje en este contexto se deba a que tiene otro sub o función en un módulo diferente con el mismo nombre. Busque para encontrar el nombre duplicado.

Si coloca la función en el módulo que pertenece a un formulario o informe, probablemente sea mejor omitir "Público". Si tiene la intención de que la función sea utilizada por varios formularios, cree un nuevo módulo que no esté adjunto a un formulario y coloque las funciones que se destinan a todos los formularios e informes.

Casi siempre es bueno proporcionar el mensaje de error completo y el número de error.

Cuestiones relacionadas