Recherche de simplification du codage
Résolu
mijean94
Messages postés
415
Date d'inscription
Statut
Membre
Dernière intervention
-
pijaku Messages postés 12263 Date d'inscription Statut Modérateur Dernière intervention -
pijaku Messages postés 12263 Date d'inscription Statut Modérateur Dernière intervention -
Bonjour,
J’ai réalisé un petit programme qui semble fonctionner, mais je me pose la question s’il n’y a pas plus simple en matière de codage.
Voici mon code :
Avez-vous un avis ?
Merci pour vos réponses.
Cordialement
J’ai réalisé un petit programme qui semble fonctionner, mais je me pose la question s’il n’y a pas plus simple en matière de codage.
Voici mon code :
Private Sub CommandButton7_Click() If ComboBox2 = "" Then MsgBox (" Vous n'avez pas choisi de client ") Else: GoTo 1 End If GoTo 2 1: Unload Formulaire_clients Sheets("Devis").Activate Range("A" & 7).Value = ComboBox2 Range("B" & 7).Value = ComboBox3 Range("C" & 7).Value = TextBox1 Range("D" & 7).Value = TextBox2 Range("E" & 7).Value = TextBox3 Range("F" & 7).Value = TextBox4 Range("G" & 7).Value = TextBox5 Range("H" & 7).Value = TextBox6 Range("I" & 7).Value = TextBox7 2: End Sub
Avez-vous un avis ?
Merci pour vos réponses.
Cordialement
A voir également:
- Recherche de simplification du codage
- Codage ascii - Guide
- Recherche automatique des chaînes ne fonctionne pas - Guide
- Codage binaire - Guide
- Rechercher ou entrer l'adresse mm - recherche google - Guide
- Recherche photo - Guide
1 réponse
Bonjour,
Evite les Goto.
Ils ne sont utiles qu'en cas de traitement d'erreur. Sinon, le code n'est pas super clair.
Regarde ton code sans Goto :
Code que l'on pourrait modifier, sans "activater" la feuille, et simplement en y faisant référence :
A noter : les points devant les Range pour faire référence à la feuille Devis.
De même Unload Formulaire_clients serait certainement mieux en fin de procédure, comme ceci :
Cette syntaxe est curieuse :
Si c'est toujours 7, il convient d'utiliser :
Avant, j'arrivais jamais à finir mes phrases... mais maintenant je
Evite les Goto.
Ils ne sont utiles qu'en cas de traitement d'erreur. Sinon, le code n'est pas super clair.
Regarde ton code sans Goto :
Private Sub CommandButton7_Click() If ComboBox2 = "" Then MsgBox (" Vous n'avez pas choisi de client ") Else Unload Formulaire_clients Sheets("Devis").Activate Range("A" & 7).Value = ComboBox2 Range("B" & 7).Value = ComboBox3 Range("C" & 7).Value = TextBox1 Range("D" & 7).Value = TextBox2 Range("E" & 7).Value = TextBox3 Range("F" & 7).Value = TextBox4 Range("G" & 7).Value = TextBox5 Range("H" & 7).Value = TextBox6 Range("I" & 7).Value = TextBox7 End If End Sub
Code que l'on pourrait modifier, sans "activater" la feuille, et simplement en y faisant référence :
Private Sub CommandButton7_Click() If ComboBox2 = "" Then MsgBox (" Vous n'avez pas choisi de client ") Else Unload Formulaire_clients With Sheets("Devis") .Range("A" & 7).Value = ComboBox2 .Range("B" & 7).Value = ComboBox3 .Range("C" & 7).Value = TextBox1 .Range("D" & 7).Value = TextBox2 .Range("E" & 7).Value = TextBox3 .Range("F" & 7).Value = TextBox4 .Range("G" & 7).Value = TextBox5 .Range("H" & 7).Value = TextBox6 .Range("I" & 7).Value = TextBox7 End With End If End Sub
A noter : les points devant les Range pour faire référence à la feuille Devis.
De même Unload Formulaire_clients serait certainement mieux en fin de procédure, comme ceci :
Private Sub CommandButton7_Click() If ComboBox2 = "" Then MsgBox (" Vous n'avez pas choisi de client ") Else With Sheets("Devis") .Range("A" & 7).Value = ComboBox2 .Range("B" & 7).Value = ComboBox3 .Range("C" & 7).Value = TextBox1 .Range("D" & 7).Value = TextBox2 .Range("E" & 7).Value = TextBox3 .Range("F" & 7).Value = TextBox4 .Range("G" & 7).Value = TextBox5 .Range("H" & 7).Value = TextBox6 .Range("I" & 7).Value = TextBox7 End With Unload Formulaire_clients End If End Sub
Cette syntaxe est curieuse :
.Range("A" & 7).Value
Si c'est toujours 7, il convient d'utiliser :
.Range("A7").Value
Avant, j'arrivais jamais à finir mes phrases... mais maintenant je