cs_Jack
Messages postés14006Date d'inscriptionsamedi 29 décembre 2001StatutModérateurDernière intervention28 août 201579 4 déc. 2011 à 14:07
Oui, c'est vrai que cette source est le prolongement de ton message sur le forum
et surtout, qu'elle n'est pas bien décrite - on ne sait pas à quoi elle sert -
et qu'elle ne fonctionne pas.
Je vais la supprimer dans la soirée.
(copie de ce commentaire en MP)
Pour ton programme :
- Il est important de respecter l'ordre des octets : Dans une chaine comme ABXY, c'est Y qui doit être le poids faible, celui à qui tu appliqueras le "puissance 0".
- En faisant un "Mod" sur un digit, tu récupère le "reste" d'une division entière. Mais il faut absolument ajouter la partie entière de la division au digit du poids suivant, comme pour une retenue d'addition.
cs_lermite222
Messages postés492Date d'inscriptionjeudi 5 avril 2007StatutMembreDernière intervention 2 juillet 20124 4 déc. 2011 à 13:15
Bonjour,
Pour tes 'option' tu devrais regarder les contrôles indexé.
Option1(0)... Option1(1)
Et ton code ci-dessous devient inutile,
Private Sub Option1_Click()
If Option2.Value = True Then
Option2.Value = False
End If
End Sub
Private Sub Option2_Click()
If Option1.Value = True Then
Option1.Value = False
End If
Essaye aussi d'indenter le code, c'est plus facile à comprendre.
Bon courage.
A+
cs_ShayW
Messages postés3253Date d'inscriptionjeudi 26 novembre 2009StatutMembreDernière intervention 3 décembre 201957 4 déc. 2011 à 12:26
Salut
le titre ne veut rien dire
la description: pense à quelqu'un qui n'a pas lu ton post
dans le forum ne comprendra pas de quoi il sagit
ne te précipites pas pour poster ta source
corrige comme il faut
essaye de simplifier etc
le forum ne va pas s'envoler
bonne prog
cs_Jack
Messages postés14006Date d'inscriptionsamedi 29 décembre 2001StatutModérateurDernière intervention28 août 201579 4 déc. 2011 à 02:38
Voir aussi la liste des codes ASCII dans l'aide
cs_Jack
Messages postés14006Date d'inscriptionsamedi 29 décembre 2001StatutModérateurDernière intervention28 août 201579 4 déc. 2011 à 02:37
Apprends à débuguer et suivre ce que fait ton programme :
- F9 sur une ligne de code; elle change de couleur
Le programme s'y arrêtera au prochain passage
Survole avec la souris tes variables pour visualiser leur contenu, ou va dans la fenêtre de debogage (Ctrl-G) et tape
? maVariable
pour que sont contenu s'inscrive dans la fenêtre.
- F8 pour avancer d'une ligne de code
- F5 pour continuer normalement
shaeks
Messages postés26Date d'inscriptionmercredi 27 juillet 2005StatutNon membreDernière intervention19 août 2023 4 déc. 2011 à 01:14
Merci Jack,
J'ai testé avec ton code mais pour des intervalles assez grands comme 456777 il renvoie des caractères comme arobase et les crochets. Comme s'il utilise toutes les touches du clavier.
Il y a forcément un moyen de limiter cette fonction à l'alphabet majuscule. (les 26 lettres uniquement)
cs_Jack
Messages postés14006Date d'inscriptionsamedi 29 décembre 2001StatutModérateurDernière intervention28 août 201579 3 déc. 2011 à 23:30
Outch!
Tous ces If donnent le tournis !
Dim As Variant : Pouah!
Mieux vaudrait choisir des variables distinctes plutôt que de choisir la même qui changerait de type au gré des lignes.
Première partie :
For ia = 1 To 4
ta(ia) = Asc(ta(ia)) - 64
Next ia
Deuxième partie :
For ia = 1 To 4
ta(ia) = Chr$(ta(ia) + 64)
Next ia
4 déc. 2011 à 14:07
et surtout, qu'elle n'est pas bien décrite - on ne sait pas à quoi elle sert -
et qu'elle ne fonctionne pas.
Je vais la supprimer dans la soirée.
(copie de ce commentaire en MP)
Pour ton programme :
- Il est important de respecter l'ordre des octets : Dans une chaine comme ABXY, c'est Y qui doit être le poids faible, celui à qui tu appliqueras le "puissance 0".
- En faisant un "Mod" sur un digit, tu récupère le "reste" d'une division entière. Mais il faut absolument ajouter la partie entière de la division au digit du poids suivant, comme pour une retenue d'addition.
4 déc. 2011 à 13:15
Pour tes 'option' tu devrais regarder les contrôles indexé.
Option1(0)... Option1(1)
Et ton code ci-dessous devient inutile,
Private Sub Option1_Click()
If Option2.Value = True Then
Option2.Value = False
End If
End Sub
Private Sub Option2_Click()
If Option1.Value = True Then
Option1.Value = False
End If
Essaye aussi d'indenter le code, c'est plus facile à comprendre.
Bon courage.
A+
4 déc. 2011 à 12:26
le titre ne veut rien dire
la description: pense à quelqu'un qui n'a pas lu ton post
dans le forum ne comprendra pas de quoi il sagit
ne te précipites pas pour poster ta source
corrige comme il faut
essaye de simplifier etc
le forum ne va pas s'envoler
bonne prog
4 déc. 2011 à 02:38
4 déc. 2011 à 02:37
- F9 sur une ligne de code; elle change de couleur
Le programme s'y arrêtera au prochain passage
Survole avec la souris tes variables pour visualiser leur contenu, ou va dans la fenêtre de debogage (Ctrl-G) et tape
? maVariable
pour que sont contenu s'inscrive dans la fenêtre.
- F8 pour avancer d'une ligne de code
- F5 pour continuer normalement
4 déc. 2011 à 01:14
J'ai testé avec ton code mais pour des intervalles assez grands comme 456777 il renvoie des caractères comme arobase et les crochets. Comme s'il utilise toutes les touches du clavier.
Il y a forcément un moyen de limiter cette fonction à l'alphabet majuscule. (les 26 lettres uniquement)
3 déc. 2011 à 23:30
Tous ces If donnent le tournis !
Dim As Variant : Pouah!
Mieux vaudrait choisir des variables distinctes plutôt que de choisir la même qui changerait de type au gré des lignes.
Première partie :
For ia = 1 To 4
ta(ia) = Asc(ta(ia)) - 64
Next ia
Deuxième partie :
For ia = 1 To 4
ta(ia) = Chr$(ta(ia) + 64)
Next ia