Identifier le code ASCII d'un caractère

PatBlarg Messages postés 67 Date d'inscription jeudi 26 juin 2008 Statut Membre Dernière intervention 11 mai 2010 - 25 nov. 2008 à 15:22
PCPT Messages postés 13272 Date d'inscription lundi 13 décembre 2004 Statut Membre Dernière intervention 3 février 2018 - 25 nov. 2008 à 16:28
Bonjour, j'ai chargé dans blocnotes un fichier d'un ancient logiciel DOS qui permet de créer des plaquettes d'identification sur une vieille machine.

Le but est de créer le fichier à partir d'une macro Excel. Jusque là, ça va. Le fichier n'est pas encrypté d'aucune façon. Par contre, il y a un caractère inconnu qui s'affiche comme un carré que je n'arrive pas à identifier. Je ne peux pas le coller dans mon code VBA, ni dans word, rien. Comment je peux identifier le code ASCII de se caractère?

Merci
A voir également:

4 réponses

cs_Exploreur Messages postés 4821 Date d'inscription lundi 11 novembre 2002 Statut Membre Dernière intervention 15 novembre 2016 15
25 nov. 2008 à 15:48
Salut,

Je ne sais plus exactement si c'est une saut de ligne, ou une tabulation ce carré ^^

A+
Exploreur

 Linux a un noyau, Windows un pépin
0
PCPT Messages postés 13272 Date d'inscription lundi 13 décembre 2004 Statut Membre Dernière intervention 3 février 2018 47
25 nov. 2008 à 16:04
salut,

dans VBA?
tu as postée en VB.NET.....
topic déplacé

copie le carré
dans VBA en bas tu as la fenêtre d'execution. si tu ne l'as pas : Ctrl+G
tu y tapes
?asc("X")



X


remplacé par ton carré
entrée
tu auras le code du caractère

NB : le carré est une caractère dit "non imprimable", ou "non affichable"

voir ce snippet pour savoir quelle valeur il peut représenter :



<hr />
'    CARACTÈRE(S) AFFICHABLE(S) DANS UNE ZONE DE TEXTE
CLASSIQUE
'    http://www.codyx.org/snippet_caractere-affichable-dans-zone-texte-classique_219.aspx#705
'    Posté par [ PCPT ] le 08/09/2006
<hr />



Function

 IsDisplayable(vParam 
As
 
Variant

As
 
Boolean
 

' vParam contient soit :




'   1. le code ascii d'un caractère




'   2. une chaîne composée de 1 ou plusieurs caractères


    IsDisplayable = 
False
 

    
Dim
 iType 
As
 VbVarType 
    iType = 
VarType
(vParam) 

    
If
 (iType <> vbInteger) 
And
 (iType <> vbString) 
Then
 
        Err.Raise vbObject 
Or
 vbVariant, "IsDisplayable", "Type de paramètre incorrect." 
        
Exit
 
Function
 
    
Else
 
        
Dim
 sString 
As
 
String
, i 
As
 
Long
, iAscii 
As
 
Integer
 
        
If
 iType = vbInteger 
Then
 
            
If
 
Val
(vParam) < 0 
Or
 
Val
(vParam) > 255 
Then
 
                Err.Raise vbObject 
Or
 vbVariant, "IsDisplayable", "Paramètre inattendu." 
                
Exit
 
Function
 
            
End
 
If


            sString = Chr$(vParam) 
        
Else
 
            sString = 
CStr
(vParam) 
        
End
 
If
 

        
For
 i = 1 
To
 
LenB
(sString) 
Step
 2 
            iAscii = 
Asc
(MidB$(sString, i, 2)) 
            
If
 (iAscii < 32) 
Or
 (iAscii = 127) 
Or
 ((iAscii > 128) 
And
 (iAscii < 145)) 
Or
 ((iAscii > 146) 
And
 (iAscii < 160)) 
Then
 
Exit
 
Function
 
        
Next
 i 

        IsDisplayable = 
True
 
    
End
 
If
 

End
 
Function
 


' EXEMPLE D'UTILISATION


    
MsgBox
 IsDisplayable(127) 
 ' (carré)


    
MsgBox
 IsDisplayable("›") 
 '155 (autre carré)


    
MsgBox
 IsDisplayable("Test de phrase correcte") 
    
MsgBox
 IsDisplayable("Test de phrase " & Chr$(13) & "incorrecte")







++


Prenez un instant pour répondre à [sujet-SONDAGE-POP3-POUR-CS_769706.aspx ce sondage] svp 
0
PatBlarg Messages postés 67 Date d'inscription jeudi 26 juin 2008 Statut Membre Dernière intervention 11 mai 2010
25 nov. 2008 à 16:12
Marche pas, puisque je peux pas coller mon carré dans VBA ni dans rien.

Et ca change quoi que je poste dans la section VB.NET ou VBA, quand ça n'a aucun lien direct avec la les langages de programmation?

Mais bon, j'ai fini par trouvé, et c'était pas un saut de ligne ce carré.
0
PCPT Messages postés 13272 Date d'inscription lundi 13 décembre 2004 Statut Membre Dernière intervention 3 février 2018 47
25 nov. 2008 à 16:28
çà change que je ne t'aurais pas demandé de taper "asc" dans la fenêtre d'execution sous vb.net, par exemple

n'hésite-pas à partager ta solution pour les autres membres dans ce cas
bonne journée
0
Rejoignez-nous