'################################################################################################ 'Cambio de caracteres por pantalla para la realización de inserciones 'Se diferencia de la anterior en que el cambio del caracter del euro (8364) no se realiza public function cambiaCaracteresPantalla(byVal textoOriginal) 'A modo de debug: ?ste bucle saca en un alert los c?digos de cada 'car?cter que le llega en el string al m?todo 'Dim texto 'texto = "" 'For i = 1 To Len(textoOriginal) ' texto = texto & Mid(textoOriginal, i, 1) & " " & Asc(Mid(textoOriginal, i, 1)) ' texto = texto & vbCrLf 'Next 'MsgBox texto 'se declara un vector con todos los cambios que se van a realizar: ' ` y ? por comilla (39) ; `` y ?? por " (34) Dim caracteresCambio(16) 'MsgBox "8220:" & ChrW(8220) & " 34: " & ChrW(34) caracteresCambio(0) = "8220,34" 'MsgBox "8221:" & ChrW(8221) & " 34: " & ChrW(34) caracteresCambio(1) = "8221,34" 'MsgBox "8217:" & ChrW(8217) & " 39: " & ChrW(39) caracteresCambio(2) = "8217,39" 'MsgBox "180:" & ChrW(180) & " 39: " & ChrW(39) caracteresCambio(3) = "180,39" 'MsgBox "8216:" & ChrW(8216) & " 39: " & ChrW(39) caracteresCambio(4) = "8216,39" 'MsgBox "8226:" & ChrW(8226) & " 183: " & ChrW(183) caracteresCambio(5) = "8226,183" 'MsgBox "8211:" & ChrW(8211) & " 45: " & ChrW(45) caracteresCambio(6) = "8211,45" 'MsgBox "8212:" & ChrW(8212) & " 45: " & ChrW(45) caracteresCambio(7) = "8212,45" 'MsgBox "38:" & ChrW(38) & " 38: " & ChrW(38) caracteresCambio(8) = "38,38" 'MsgBox "8242:" & ChrW(8242) & " 39: " & ChrW(39) caracteresCambio(9) = "8242,39" 'MsgBox "180:" & ChrW(180) & " 39: " & ChrW(39) caracteresCambio(10) = "180,39" 'MsgBox "145:" & ChrW(145) & " 39: " & ChrW(39) caracteresCambio(11) = "145,39" 'MsgBox "146:" & ChrW(146) & " 39: " & ChrW(39) caracteresCambio(12) = "146,39" 'MsgBox "147:" & ChrW(147) & " 34: " & ChrW(34) caracteresCambio(13) = "147,34" 'MsgBox "148:" & ChrW(148) & " 34: " & ChrW(34) caracteresCambio(14) = "148,34" 'MsgBox "96:" & ChrW(96) & " 39: " & ChrW(39) caracteresCambio(15) = "96,39" Dim cOriginal cOriginal = "" Dim cCambio cCambio = "" Dim textoCambiado textoCambiado = textoOriginal if textoOriginal <> "" then Dim parejaChars Dim i For i = 0 To UBound(caracteresCambio) - 1 parejaChars = Split(caracteresCambio(i), ",") cOriginal = ChrW(parejaChars(0)) cCambio = ChrW(parejaChars(1)) 'msgbox ("Caracter Original: " & cOriginal & " Caracter Cambio:" & cCambio) textoCambiado = Replace(textoCambiado, cOriginal, cCambio) Next end if 'msgbox("Texto Original:" & textoOriginal & "\nTexto Cambiado:" & textoCambiado) cambiaCaracteresPantalla = textoCambiado End Function