Strano carattere in una stringa
Hai un problema con Excel? 
Strano carattere in una stringa
di Hellboy (utente non iscritto) data: 23/10/2015 18:01:29
Ciao ragazzi, ho un problema con un carattere strano....
leggo un file di testo rigo per rigo , rivido le parole e poi leggo carattere per carattere.
Eseguo questa funzione, leggo T ma con il SELECT CASE non trova nulla ... vado in DEBUG e vedo che il valore di LetteraComando non vale T ma "QUADRATO"T, che è sto carattere ? Come lo elimino ?
E anche in Excel, per curiosità, se vado in Formato Cella ... nel riquadro di Esempio mi esce un quadrato+T, ma da dove esce questo carattere ?
Public Sub InterpretaComando(Str As String)
Dim LetteraComando As String
LetteraComando = Left(Str, 2)
Select Case LetteraComando
Case "T"
MsgBox " T - Non ci interessa"
End Select |
di Mister_x (utente non iscritto) data: 23/10/2015 21:02:09
ciao
dovresti postare il file con la stinga o stringhe incriminate
comunque in excel hai a disposizione la funzione CODICE()
utilizzo copia quel caratte incriminato e lo incolli in una cella e a lato metti la funzione =CODICE( la tua cella col carattere )
ti verra restituito un valore normarmente e' 160 ma pero' bisogna proprio vederlo, comunque a questo punto
puoi trattare questo carattere col suo valore specifico
questo capita perché stiamo urilizzando tipi di caratteri grafici
ciao
di HELLBOY (utente non iscritto) data: 26/10/2015 09:41:28
pensavo fosse qualcosa legato alla scomposizione della stringa:
Dim LetteraComando As String
LetteraComando = ""
LetteraComando = Left(Str, 2)
quando leggevo LetteraComando, nel debug, leggevo Simbolo del Quadrato + "T" ...
ma ho visto che già mi esce la stringa " sporcata " nel momento della lettura dalla cella.
Sulla cella EXCEL figura T23, ma quando lo leggo mi legge Simbolo quadrato + "T23".
COSA PUO' ESSERE ?
...
di Hellboy (utente non iscritto) data: 26/10/2015 10:15:54
Ok, sono orgoglioso di condividere la mia soluzione.
Ho scoperto che EXCEL, nella divisione di celle tra righe e colonne inserisce di caratteri "sporchi"....
li elimino ed il gioco è fatto.
LetteraComando = Replace(LetteraComando, Chr(13), "")
LetteraComando = Replace(LetteraComando, Chr(10), "")
ovvero: stringa da analizzare, carattere da rimpiazzare, con cosa rimpiazzare.
Ciao.
di Mister_x (utente non iscritto) data: 26/10/2015 13:04:24
chr(13) = carriage return - con una stampante ad aghi questo e' un ritorno a capo
chr(10) = line feed - fine della linea in un word processor qundi in una cella e un ritorno a capo di linea
Tavola caratteri ASCII da 0 a 255
chr(13) in questo word processor - ♪ -
chr(10) - ◙ --
Vuoi Approfondire?