USF : bouton tout valider

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

boby63

XLDnaute Nouveau
Bonjour
Dans le doc joint, un userform créé juste pour l'occasion avec 9 boutons pour valider les nouveaux enregistrements les uns après les autres.
Je souhaiterai avoir la possibilité de les enregistrer en bloc, en une seule fois, qu'il n'y ait qu'une ligne à enregistrer, ou 2, ou 3, ..., ou toutes, selon le nombre de textbox remplies.
J'espère avoir été clair.
D'avance, merci.
Cordialement
 

Pièces jointes

Salut à tous, Boby63,

Simplement en ajoutant une condition de validation pour chaque bouton --si vide on passe sinon on ajoute
et avec le code suivant pour la validation en chaîne



VB:
Private Sub CommandButton10_Click()
CommandButton1_Click
CommandButton2_Click
CommandButton3_Click
.
.
.
End Sub


mais je pense qu'il y a plus simple et plus propre que ça en révisant un peu ton code

mais là il faut attendre les pros 😉
 
Dernière édition:
Bonjour boby63, max.lander

l'idée serait de faire une boucle sur les textbox; mais pour cela il faudrait un pas régulier dans le nommage des ces textbox.
Par exemple :
pour les textbox Infos à enregistrer:TextBox5, TextBox10, TextBox15, ...., TextBox45 => pas de 5
pour les textbox Quantité:TextBox9, TextBox14, TextBox19, ...., TextBox49 =>pas de 5
Il faudrait donc renommer un certain nombre de textbox et corriger le code les utilisant. Sinon la solution de max.lander a

à tester
VB:
Private Sub CommandButton10_Click()
ligne = Sheets("BD").[A65000].End(xlUp).Row + 1
For i = 5 To 45 Step 5
  If Me("TextBox" & i) <> "" And Me("TextBox" & i + 4) <> "" Then
    ligne = ligne + 1
    Sheets("BD").Cells(ligne, 1) = Me.TextBox46
    Sheets("BD").Cells(ligne, 2) = Me("TextBox" & i)
    Sheets("BD").Cells(ligne, 3) = CDbl(Me("TextBox" & i + 4))
  Else
    Exit For 'on arrête dès la  première TB vide
  End If
Next
End Sub



A+
 
- 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

  • Question Question
Microsoft 365 aide userform
Réponses
11
Affichages
927
T
Réponses
3
Affichages
889
T
K
Réponses
12
Affichages
2 K
Réponses
1
Affichages
1 K
D
Réponses
9
Affichages
1 K
Dannan
D
B
Réponses
6
Affichages
2 K
B
Retour