Caracteres...

Por tu currículo estoy seguro que me vas a poder solucionar mi problema.
Tengo una base en Access 97 con 109 mil y pico de registros con números telefónicos, estos n° tel. Contienen caracteres vacíos tanto en el centro como al final, (un ejemplo)
x = caracteres vacios
2233x45435
15x454654xxx
4544x4865xxxx
1x23x1212134
Etc...
Ahora, como corno hago por medio de una macro y SOLO con Access 97 quitar los mencionados caracteres para que queden de la siguiente manera:
223345435
15454654
45444865
1231212134
Etc...
Espero alguna pronta respuesta.
Desde ya muchísimas gracias.

1 Respuesta

Respuesta
He estado analizando tu problema, y se me ocurrió que podías utilizar la función Trim para recortar, o algunas de sus variantes LTrim o DTrim. No obstante, al probarlo en una tabla de ejemplo con números de teléfonos alfanuméricos, he podido comprobar que no funcionaba apropiadamente, así que he decidido crear una función VBA para solucionar el problema.
La Función abre un recordset y le recorre entero para comprobar si el campo que decidimos tiene espacios en cada uno de sus registros, si es así, los elimina y actualiza el registro con los valores sin espacios.
Public Function RecortarTelefono()
Dim DB As Database
Set DB = CurrentDb()
Dim T_REC As Recordset
Set T_REC = DB.OpenRecordset("PROVEEDORES", dbOpenDynaset, dbSeeChanges, dbOptimistic)
Dim Espacios, NewTel
Do While Not T_REC.EOF
NewTel = T_REC!Telefono
If IsNull(NewTel) Then GoTo newrec
Espacios = InStr(1, NewTel, " ")
quitaespacios:
NewTel = Left(NewTel, Espacios - 1) & Right(NewTel, Len(NewTel) - Espacios)
Espacios = InStr(1, NewTel, " ")
If Espacios > 0 Then GoTo quitaespacios
T_REC.Edit
T_REC!Telefono = NewTel
T_REC.Update
newrec:
T_REC.MoveNext
Loop
End Function

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas