• Initiateur de la discussion Initiateur de la discussion alpyna
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

alpyna

XLDnaute Nouveau
Bonjour,
J'aurai besoin d'une ptite aide de votre part, j'aimerai simplifier le code suivant en y inserant des variables s'il cela etait possible,merci pour votre aide.
car je possede plusieurs checkbox,textbox et commandbutton.
Merci par avance pour toutes vos aides.
Alpyna

Private Sub CheckBox1_Click()
Dim lig As Long
Dim TheTime As Date
TheTime = Now
TextBox5.Visible = True
CommandButton1.Visible = True
If CheckBox1 = True Then
TextBox5 = Format(TheTime, "dd/mm/yyyy")
Else: If CheckBox1 = False Then TextBox5.Enabled = True
End If
End Sub

Private Sub CommandButton1_Click()
Call Message
reponse = MsgBox(" La date est le " & TextBox5.Value, vbInformation, " Contrôle de la date")


CheckBox1.Enabled = False
lig = rechercheligne("Feuil2", "A", ComboBox1.Value, 2)
On Error Resume Next
Sheets("Feuil2").Range("F" & lig) = CDate(TextBox5.Value)

If TextBox5 = "" Then CheckBox1.Enabled = True

ActiveWorkbook.Save
End Sub
 

Pièces jointes

Re : Simplifier le code

Je ne vois pas trop ou simplifier, tes variables sotn définies et utilisées. Par contre, pour t'y retrouver je te conseille grandement de renommer toutes tes text, list, combo, et boutons avec des noms que tu pourras reconnaitre plus facilement que 1,2,3 c'est long et fastidieux mais ca permet de mieux voir ce que l'on fait ensuite.
 
Re : Simplifier le code

Bonjour,
du style:

Private Sub CheckBox10_Click()
Dim lig As Long
Dim TheTime As Date
TheTime = Now
TextBox10.Visible = True
CommandButton10.Visible = True
If CheckBox10 = True Then
TextBox10 = Format(TheTime, "dd/mm/yyyy")
Else: If CheckBox10 = False Then TextBox10.Enabled = True
End If
End Sub

Private Sub CommandButton10_Click()
Call Message
reponse = MsgBox(" La date est le " & TextBox10.Value, vbInformation, " Contrôle de la date")


CheckBox10.Enabled = False
lig = rechercheligne("Feuil2", "A", ComboBox1.Value, 2)
On Error Resume Next
Sheets("Feuil2").Range("F" & lig) = CDate(TextBox10.Value)

If TextBox10 = "" Then CheckBox10.Enabled = True

ActiveWorkbook.Save
End Sub
 
Re : Simplifier le code

Bonjour à tous


Des modifications possibles (en gras)

Code:
Private Sub CheckBox10_Click()
'[B]Dim lig As Long[/B]
Dim TheTime As Date
TheTime = Format(Date, "dd/mm/yyyy")
TextBox10.Visible = True: CommandButton10.Visible = True
[B] With TextBox10
.Value = IIf(CheckBox10.Value = True, TheTime, vbNullString)
.Enabled = IIf(CheckBox10.Value = False, True, False)
End With[/B]
End Sub
Code:
Private Sub CommandButton10_Click()
'Call Message
MsgBox " La date est le " & TextBox10.Value, vbInformation, " Contrôle de la date"
CheckBox10.Enabled = False
'lig = rechercheligne("Feuil2", "A", ComboBox1.Value, 2)
'On Error Resume Next
'Sheets("Feuil2").Range("F" & lig) = CDate(TextBox10.Value)
'If TextBox10 = "" Then CheckBox10.Enabled = True
[B]CheckBox10.Enabled = IIf(IsEmpty(TextBox10.Value) = True, True, False)[/B]
'ActiveWorkbook.Save
End Sub
 
Dernière édition:
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
10
Affichages
290
Réponses
4
Affichages
468
Réponses
35
Affichages
2 K
Réponses
13
Affichages
574
Réponses
41
Affichages
713
Réponses
9
Affichages
202
Retour