Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

correction code VBA

  • Initiateur de la discussion Initiateur de la discussion guigui4901
  • 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 !

guigui4901

XLDnaute Junior
Bonjour à tous !!

Une fois de plus, je sollicite votre aide: je pense que c'est tout simple mais....

Pouvez vous corriger ce code pour que en fonction de la case cochée, la cellule inscrive soit FULL TIME soit PART TIME soit CASUAL??

Concernant FULL TIME tout fonctionne très bien, c'est pourquoi je ne comprend pas...

Merci de votre aidse
guillaume


Private Sub OK_Click()
With Sheets("employees")
.Range("A65536").End(xlUp).Offset(1, 0).Value = FIRSTNAME.Value
End With
With Sheets("employees")
.Range("A65536").End(xlUp).Offset(0, 1).Value = TOTO.Value
End With
With Sheets("employees")
.Range("A65536").End(xlUp).Offset(0, 5).Value = PHONE.Value
End With
With Sheets("employees")
.Range("A65536").End(xlUp).Offset(0, 2).Value = IDNUMB.Value
End With
With Sheets("employees")
.Range("A65536").End(xlUp).Offset(0, 6).Value = POSITION.Value
End With
With Sheets("employees")
.Range("A65536").End(xlUp).Offset(0, 4).Value = CITY.Value
End With
With Sheets("employees")
.Range("A65536").End(xlUp).Offset(0, 3).Value = ADRESS.Value
End With
With Sheets("employees")
If FULLTIME.Value = True Then
.Range("A65536").End(xlUp).Offset(0, 7).Value = "FULL TIME"
If PARTTIME.Value = True Then
.Range("A65536").End(xlUp).Offset(0, 7).Value = "PART TIME"
If CASUAL.Value = True Then
.Range("A65536").End(xlUp).Offset(0, 7).Value = "CASUAL"
End If
End If
End If
End With
End Sub
 
Re : correction code VBA

Bonjour Guillaume, Modeste, bonjour le forum,

Ton code devrait fonctionner même s'il contient beaucoup de lignes superflues mais sans le fichier impossible de te dire ce qui ne va pas...
Ton code simplifié :
Code:
Private Sub OK_Click()
With Sheets("employees")
    .Range("A65536").End(xlUp).Offset(1, 0).Value = FIRSTNAME.Value
    .Range("A65536").End(xlUp).Offset(0, 1).Value = TOTO.Value
    .Range("A65536").End(xlUp).Offset(0, 5).Value = PHONE.Value
    .Range("A65536").End(xlUp).Offset(0, 2).Value = IDNUMB.Value
    .Range("A65536").End(xlUp).Offset(0, 6).Value = Position.Value
    .Range("A65536").End(xlUp).Offset(0, 4).Value = CITY.Value
    .Range("A65536").End(xlUp).Offset(0, 3).Value = ADRESS.Value
    If FULLTIME.Value = True Then .Range("A65536").End(xlUp).Offset(0, 7).Value = "FULL TIME"
    If PARTTIME.Value = True Then .Range("A65536").End(xlUp).Offset(0, 7).Value = "PART TIME"
    If CASUAL.Value = True Then .Range("A65536").End(xlUp).Offset(0, 7).Value = "CASUAL"
End With
End Sub

[Édition]
rectification, ton code était erroné... Soit il fallait mettre les End If après chaque condition If. Soit il fallait utiliser un permier If suivit de deux ElseIf et un dernier End If pour finir... Le code simplifié que je te propose devrait fonctionner sans problème...
 
Dernière édition:
Re : correction code VBA



Encore une fois... Merci Robert !! Tout fonctionne à merveille et le code est plus léger 🙂

Merci !!

Bonne journée, à bientot !!

Guillaume
 
- 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
5
Affichages
703
Réponses
4
Affichages
580
Réponses
10
Affichages
531
  • Question Question
Microsoft 365 worksheet_change
Réponses
29
Affichages
1 K
Réponses
4
Affichages
671
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…