clemmilo
Messages postés2Date d'inscriptionsamedi 10 novembre 2007StatutMembreDernière intervention10 septembre 2008 10 sept. 2008 à 11:04
Merci JRIVET pour tes commentaires, je pense que je remanierais le code dès que possible.
En effet je ne connaissais pas non plus la commande Case, je suis un vrai débutant. Ca a l'air plus facile.**
Vos commentaires sont toujours les bienvenus...
Merci d'avance
jrivet
Messages postés7393Date d'inscriptionmercredi 23 avril 2003StatutMembreDernière intervention 6 avril 201260 10 sept. 2008 à 10:40
Salut,
Bon et bien alors autant continuer
Saches simplement que ce n'est pas pour te démotiver, simplement pour t'aider à t'améliorer. Les critiques n'enlèvent en rien mon respect pour le travail que tu as fourni. Mais si en plus de t'améliorer, cela donne une source de meilleures qualité ca ne pourra être que mieux.
Le plus important c'est que tu comprennes les remarques.
- Inutile d'envoyer de MP on recoit un Mail a chaque fois qu'un commentaire est ajoute ici.
- pourquoi ne pas enregistrer les modifications en sortant?
- Tu pourrais prévenir que certaines cellules possèdent des formules et dire lesquelles.
- Pourquoi mélanger code et formules?
- Call Run("morpion2.xls!bouton34_clic") = Call Bouton34_Clic
- Il est possible de modifier le contenu des cellules et donc de tricher....
- Il est possible d'appuyer plusieurs fois de suite sur le meme bouton => LE PC GAGNE.
- ICI :
If f4 "0" And g4 "0" And h4 = "" Then
Range("h4") = "O"
Tu testes des zéros et places des [eau] O
- ton étiquette debut: de sert à rien.
- On préférera utiliser Exit Sub plutôt que Goto suite:
- Tu peux nous dire l'intérêt de ces lignes?(Si cellule H4 O alors H4 0 mmmmh)
h4 = Range("H4")
If h4 = "O" Then
Range("H4") = "O"
End If
CECI :
Select Case Range("D8").Value
Case 1, 3, 5, 7, 9: Exit Sub
Case 2, 4, 6, 8: GoTo jeupc:
End Select
EST EQUIVALENT A
d8 = Range("d8")
If d8 = "9" Then
GoTo suite:
End If
If d8 = "8" Then
GoTo jeupc:
End If
If d8 = "7" Then
GoTo suite:
End If
If d8 = "6" Then
GoTo jeupc:
End If
If d8 = "5" Then
GoTo suite:
End If
If d8 = "4" Then
GoTo jeupc:
End If
If d8 = "3" Then
GoTo suite:
End If
If d8 = "2" Then
GoTo jeupc:
End If
If d8 = "1" Then
GoTo suite:
End If
clemmilo
Messages postés2Date d'inscriptionsamedi 10 novembre 2007StatutMembreDernière intervention10 septembre 2008 10 sept. 2008 à 10:28
Je vous remercie (BIGFISH_LE_VRAI et JRIVET) de vos messages, en effet je suis en un grand débutant et vos conseils me permettent de progresser.
ex : je ne connaissais pas l'instruction VBNULLSTRING
Si vous souhaitez l'améliorer, c'est fait pour...
N'hésitez pas, et vous pouvez toujours me répondre ou poser vos commentaires, j'en serais ravi.
Merci beaucoup, clemmilo
jrivet
Messages postés7393Date d'inscriptionmercredi 23 avril 2003StatutMembreDernière intervention 6 avril 201260 10 sept. 2008 à 10:08
Salut,
Effectivement je rejoins BIGFISH_LE VRAI... Mais il faut toujours penser critique constructive alors allons y.
J'espère sincérepment que tu liras en entier et que tu corrigeras ta source...
1- Un Code indenté c'est MIEUX
A savoir If f4 "0" And g5 "0" And h6 = "" Then
Range("h6") = "O"
GoTo suite:
End If
C'est meiux que
If f4 "0" And g5 "0" And h6 = "" Then
Range("h6") = "O"
GoTo suite:
End If
2- Tu devrais feire des PROCEDURES ou de FONCTIONS ton code serait encore plus lisible.
3- Le IF n'est pas la seule instruction à connaitre, SELECT CASE serait parfois mieux adapté (notament quand tu teste la valeur de d8)
4- Tu donnes un code où le MODULE 3 ne sert à rien puisqu'il contient une ligne ROUGE .... ATTENTION TOUT DE MEME. D'ailleur pourquoi 4 Modules????? quand un seule aurait suffit
5- On préférera utliser VBNULLSTRING à ""
6- Dans Bouton43_QuandClic à quoi servent ces lignes
10 sept. 2008 à 11:04
En effet je ne connaissais pas non plus la commande Case, je suis un vrai débutant. Ca a l'air plus facile.**
Vos commentaires sont toujours les bienvenus...
Merci d'avance
10 sept. 2008 à 10:40
Bon et bien alors autant continuer
Saches simplement que ce n'est pas pour te démotiver, simplement pour t'aider à t'améliorer. Les critiques n'enlèvent en rien mon respect pour le travail que tu as fourni. Mais si en plus de t'améliorer, cela donne une source de meilleures qualité ca ne pourra être que mieux.
Le plus important c'est que tu comprennes les remarques.
- Inutile d'envoyer de MP on recoit un Mail a chaque fois qu'un commentaire est ajoute ici.
- pourquoi ne pas enregistrer les modifications en sortant?
- Tu pourrais prévenir que certaines cellules possèdent des formules et dire lesquelles.
- Pourquoi mélanger code et formules?
- Call Run("morpion2.xls!bouton34_clic") = Call Bouton34_Clic
- Il est possible de modifier le contenu des cellules et donc de tricher....
- Il est possible d'appuyer plusieurs fois de suite sur le meme bouton => LE PC GAGNE.
- ICI :
If f4 "0" And g4 "0" And h4 = "" Then
Range("h4") = "O"
Tu testes des zéros et places des [eau] O
- ton étiquette debut: de sert à rien.
- On préférera utiliser Exit Sub plutôt que Goto suite:
- Tu peux nous dire l'intérêt de ces lignes?(Si cellule H4 O alors H4 0 mmmmh)
h4 = Range("H4")
If h4 = "O" Then
Range("H4") = "O"
End If
CECI :
Select Case Range("D8").Value
Case 1, 3, 5, 7, 9: Exit Sub
Case 2, 4, 6, 8: GoTo jeupc:
End Select
EST EQUIVALENT A
d8 = Range("d8")
If d8 = "9" Then
GoTo suite:
End If
If d8 = "8" Then
GoTo jeupc:
End If
If d8 = "7" Then
GoTo suite:
End If
If d8 = "6" Then
GoTo jeupc:
End If
If d8 = "5" Then
GoTo suite:
End If
If d8 = "4" Then
GoTo jeupc:
End If
If d8 = "3" Then
GoTo suite:
End If
If d8 = "2" Then
GoTo jeupc:
End If
If d8 = "1" Then
GoTo suite:
End If
10 sept. 2008 à 10:28
ex : je ne connaissais pas l'instruction VBNULLSTRING
Si vous souhaitez l'améliorer, c'est fait pour...
N'hésitez pas, et vous pouvez toujours me répondre ou poser vos commentaires, j'en serais ravi.
Merci beaucoup, clemmilo
10 sept. 2008 à 10:08
Effectivement je rejoins BIGFISH_LE VRAI... Mais il faut toujours penser critique constructive alors allons y.
J'espère sincérepment que tu liras en entier et que tu corrigeras ta source...
1- Un Code indenté c'est MIEUX
A savoir If f4 "0" And g5 "0" And h6 = "" Then
Range("h6") = "O"
GoTo suite:
End If
C'est meiux que
If f4 "0" And g5 "0" And h6 = "" Then
Range("h6") = "O"
GoTo suite:
End If
2- Tu devrais feire des PROCEDURES ou de FONCTIONS ton code serait encore plus lisible.
3- Le IF n'est pas la seule instruction à connaitre, SELECT CASE serait parfois mieux adapté (notament quand tu teste la valeur de d8)
4- Tu donnes un code où le MODULE 3 ne sert à rien puisqu'il contient une ligne ROUGE .... ATTENTION TOUT DE MEME. D'ailleur pourquoi 4 Modules????? quand un seule aurait suffit
5- On préférera utliser VBNULLSTRING à ""
6- Dans Bouton43_QuandClic à quoi servent ces lignes
f4 = ""
f5 = ""
f6 = ""
g4 = ""
g5 = ""
g6 = ""
h4 = ""
h5 = ""
h6 = ""
a = 0
Bref... on va pas tout dire d'un coup mais, il faut tout de suite corriger tout cela pour essayer d'avoir une source de qualité "acceptable".
@+
Julien
8 sept. 2008 à 18:47
et on en fait quoi ? un exemple de ce qu'il ne faut pas faire ?
A+