Public const vrai as string = chr(255) donne une erreur sous VB6

Résolu
rebixav Messages postés 130 Date d'inscription dimanche 16 décembre 2007 Statut Membre Dernière intervention 28 janvier 2013 - 11 oct. 2012 à 11:24
rebixav Messages postés 130 Date d'inscription dimanche 16 décembre 2007 Statut Membre Dernière intervention 28 janvier 2013 - 11 oct. 2012 à 13:23
bonjours à tous,
comme le titre l'indique
j'aimerais donner à une constante qui s'appelle vrai, mais cela pas d'importance, elle peut s’appeler autrement, cela me gène pas, la valeur du caractère 255 !
j'avais donc pense à cela :
"public const vrai as string = chr(255)" donne une erreur sous VB6 en début de module !
hors j'aurais bien besoin de cela !
j'ai essayé
"public const vrai as string = &h255&"
ou
"public const vrai as string = &h255"
mais cela me donne toujours pas le caractère 255

j'ai même pense à utilisé les constante de msgbox :
"public const vrai as string = vb...+vb...+vb..."
pour arrivé à 255 mais rien à faire !

je déprime, cela fait 2 bonnes heures que je cherche, cela à l'air simple et j'ai vraiment pas envie
que dans mon programme il y est écrit :
a$=a$+chr$(255)
alors que je sait que
a$=a$+vrai
serais plus rapide pour le compilateur !

alors évidement vous me diriez, que je n’ai cas écrire :
public vrai as string
et plus loin en amont de la procédure que je veux utilisé mettre : vrai=chr$(255)
hors c'est pas pour les quelques octets mémoire que je ne veut pas le faire, mais j'ai remarqué que plusieurs fois je suis confronté à ce problème, et j'aimerais éviter que dans tout mes programmes à leur lancement il y ais une procédure
sub Const_init
vrai=chr$(255)
end sub
...
je trouve que cela ne le fait pas
mais après tout c'est peut-être la seul solution

ps : au faite j'ai même essayer avec mon clavier faire "alt 255"
puisque cela marche avec alt 65 pour le caractère A ?!
mais malheureusement cela échoué aussi

merci de m'aider.
A voir également:

5 réponses

ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 211
11 oct. 2012 à 11:53
Rien ne t'empêche par ailleurs, si tu tiens à une constante, d'écrire :
public const vrai as string = "ÿ"

puisque cette expression-là est acceptée pour une constante.
Et tu pourras vérifier, depuis ton code : Asc(vrai) te retournera bien 255

________________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches.
Pas d'aide en ligne installée ? => ne comptez pas sur moi pour simplement vous dire ce qu'elle contient. Je n'interviendrai qu'en cas de nécessité de développ
3
Bonjour ami ucfoutu,

Il serait peut-être utile de préciser que le caractère ÿ s'obtient par Alt0255, et non pas Alt255. Rebixav n'était pas si loin. Il ne lui manquait qu'un 0.

Avec mes amitiés.


Étant illettré, je signe d'une croix : ×
3
ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 211
11 oct. 2012 à 11:37
Bonjour,
Ouvre donc ton aide VB6 sur le mot Const !
Et lis ce qui y est dit à propos de son paramètre expression !!
Le plus fort : il y a même un paragraphe (dans cette rubrique), qui traite des exemples non acceptables, dont le ... tien !!!!!
Reviens après cette lecture, veux-tu ?
Oriente-toi ensuite vers une variable, plutôt qu'une constante.


________________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches.
Pas d'aide en ligne installée ? => ne comptez pas sur moi pour simplement vous dire ce qu'elle contient. Je n'interviendrai qu'en cas de nécessité de développ
0
ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 211
11 oct. 2012 à 12:56
Bonjour, Zermelo,
Il lui était encore bien plus simple :
- d'ouvrir son aide VB6 sur le mot ASCII
- choisir la table des caractères entre 128 et 255
- copier le caractère 255
- le coller
Ah ! cette aide VB6 ! L'a-t-il installée ? je n'en suis pas certain ...
ou même : ouvrir n'importe quelle table de correspondance sur le web et idem : copier/coller le caractère
Cela lui aurait pris beaucoup moins de temps que de venir ici poser (rédiger, donc) sa question.


________________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches.
Pas d'aide en ligne installée ? => ne comptez pas sur moi pour simplement vous dire ce qu'elle contient. Je n'interviendrai qu'en cas de nécessité de développ
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
rebixav Messages postés 130 Date d'inscription dimanche 16 décembre 2007 Statut Membre Dernière intervention 28 janvier 2013
11 oct. 2012 à 13:23
super cela marche, merci,
...
par contre j'ai bien l'aide en entier d'ailleurs je m'en sert trés souvent, mais je pense que le code caractère 255 n'existez pas, surtout après avoir fait alt255, et vue que cela affichez un espace, donc j'ai cru qu'il n'y avais pas de caractère affichable, donc impossible à copier !
...
merci pour la constante 255 :
public const Vrai as string = "ÿ"
...
et merci pour les conseils, car un peu plus j'allais vous demandez
public const Faux as string = " " <<< le caractère 0
mais cette fois-ci, j'ai chercher mieux que cela,...
d'abord j'ai taper ascii sur google comme j'ai toujours fait, mais je me rend compte que finalement j’aurais quand même posé la question pour le 255, car il n'y as pas le "ÿ" !
j'abandonne pas, peur de devoir vous poser la question pour le caractère 0,... je tape donc ascii 255 "ÿ" sur google, et là
eurêka, sur ce site http://www.ascii-code.com/ il y a le 255, et le 0=nul
mais comment dire nul à vb6
re google, et finalement vbNullChar=0 en as string !!!
donc merci j'ai bien finalement :

Public Const Vrai As String = "ÿ"
Public Const Faux As String = vbNullChar

mes constante vrai ou faux pour avoir les valeur string de true et false
...
un grand merci à vous deux !
ps : je lie la MSDN, mais je ne trouve pourtant pas tout ce que veux, ou alors tu à une super msdn
car moi lorsque je tape "ascii" sur mon aide msdn cela me donne beaucoup de chose dont cela :

jeu de caractères ASCII
Jeu de caractères, codé sur 7 bits, utilisé pour représenter les lettres et les symboles d'un clavier nord-américain standard. Le jeu de caractères ASCII (American Standard Code for Information Interchange) utilise les 128 premiers caractères (de 0 à 127) du jeu de caractères ANSI.

et comme tu peut le voir cela m'aide pas beaucoup




ni d’ailleurs pour l'aide de const


Const, instruction


Déclare desconstantes à utiliser à la place des valeurs littérales.

Syntaxe

[Public | Private] Const constname [As type] = expression

La syntaxe de l'instruction Const comprend les éléments suivants :

Élément Description
Public Facultatif.Mot clé utilisé auniveau module pour déclarer des constantes disponibles pour toutes lesprocédures de l'ensemble desmodules. Ce mot clé n'est pas autorisé dans les procédures.
Private Facultatif. Mot clé utilisé au niveau module pour déclarer les constantes uniquement disponibles dans le module dans lequel ladéclaration est effectuée. Ce mot clé n'est pas autorisé dans les procédures.
constname Nom de la constante ; Respecte les conventions standard d'affectation de noms auxvariables.
type Facultatif.Type de données de la constante ; elle peut être de typebyte,Boolean,Integer,Long,Currency,Single,Double,Decimal (non pris en charge actuellement),Date,String ouVariant. Utilisez une clause As type distincte pour chaque constante à déclarer.
expression Littéral, autre constante ou toute autre combinaison pouvant contenir tout opérateur arithmétique ou logique à l'exception de Is.


Remarques

Par défaut, les constantes sont privées. Dans les procédures, les constantes sont toujours privées et leur visibilité ne peut pas être modifiée. Dans lesmodules standard, la visibilité par défaut des constantes de niveau module peut être modifiée à l'aide du mot clé Public. En revanche, dans lesmodules de classe, les constantes sont toujours privées et leur visibilité ne peut pas être modifiée à l'aide du mot clé Public.

Pour combiner plusieurs déclarations de constantes sur une même ligne, séparez chaque affectation de constante par une virgule. Lorsque les déclarations de constantes sont ainsi combinées, le mot clé Public ou Private, s'il est utilisé, s'applique à toutes les constantes.

Vous ne pouvez utiliser ni variables, ni fonctions définies par l'utilisateur ni fonctions Visual Basic intrinsèques (telles que Chr) dans desexpressions attribuées à des constantes.

Note Les constantes rendent vos programmes plus lisibles et plus faciles à modifier. Contrairement aux variables, elles ne peuvent être modifiées par erreur pendant l'exécution de votre programme.

Si vous ne déclarez pas explicitement le type d'une constante à l'aide de As type, la constante se voit attribuer le type de données qui convient le mieux à l'argument expression.

Les constantes déclarées dans une procédure Sub, Function ou Property sont locales au niveau de la procédure. Une constante déclarée en dehors d'une procédure est définie dans l'ensemble du module dans lequel elle est déclarée. Vous pouvez employer des constantes partout à la place d'une expression.

...

là encore à par me dire que je n'avais pas le droit d'utiliser chr(), cela ne m'as pas aidé !sd
0
Rejoignez-nous