Non extraction de données d'un userform
Résolu
vince3457
Messages postés
36
Statut
Membre
-
Mytå Messages postés 4246 Statut Contributeur -
Mytå Messages postés 4246 Statut Contributeur -
Bonjour,
J'ai un userform avec un certain nombre de données. ces données sont extraites lorsque je clique sur un "bouton valider" et vont se ranger (en ligne) dans ma feuille excel
Voici le code d'extraction :
Private Sub btnValider_Click()
Dim Ligne As Long
'Ajout ou modification d'une ligne d'enregistrement
With ThisWorkbook.Sheets(2)
If Modification Then
Ligne = ActiveCell.Row
Else
'Déterminer la première ligne libre du tableau
Ligne = .Range("A65536").End(xlUp).Row + 1
End If
'Mise à jour de la ligne d'enregistrement
.Cells(Ligne, 1) = Ligne - 2
.Cells(Ligne, 2) = ChoixSite
.Cells(Ligne, 3) = ChoixOrigine
.Cells(Ligne, 4) = DateAnomalie
.Cells(Ligne, 5) = DescriptionAnomalie
.Cells(Ligne, 6) = ActionCurative
.Cells(Ligne, 7) = AnalyseCauses1
.Cells(Ligne, 8) = AnalyseCauses2
.Cells(Ligne, 9) = AnalyseCauses3
.Cells(Ligne, 10) = AnalyseCauses4
.Cells(Ligne, 11) = AnalyseCauses5
.Cells(Ligne, 12) = ChoixActionCo
.Cells(Ligne, 13) = ChoixActionPr
.Cells(Ligne, 14) = ChoixSansSuite
.Cells(Ligne, 15) = ActionCo1
.Cells(Ligne, 16) = RespActionCo1
.Cells(Ligne, 17) = PlanifActionCo1
.Cells(Ligne, 18) = DateActionCo1
.Cells(Ligne, 19) = SoldeActionCo1
.Cells(Ligne, 20) = DateSoldeActionCo1
If Modification Then
Ligne = ActiveCell.Row
Else
'Déterminer la première ligne libre du tableau
Ligne = .Range("A65536").End(xlUp).Row + 1
End If
'Mise à jour de la ligne d'enregistrement
.Cells(Ligne, 1) = Ligne - 2
.Cells(Ligne, 2) = ChoixSite
.Cells(Ligne, 3) = ChoixOrigine
.Cells(Ligne, 4) = DateAnomalie
.Cells(Ligne, 5) = DescriptionAnomalie
.Cells(Ligne, 6) = ActionCurative
.Cells(Ligne, 7) = AnalyseCauses1
.Cells(Ligne, 8) = AnalyseCauses2
.Cells(Ligne, 9) = AnalyseCauses3
.Cells(Ligne, 10) = AnalyseCauses4
.Cells(Ligne, 11) = AnalyseCauses5
.Cells(Ligne, 12) = ChoixActionCo
.Cells(Ligne, 13) = ChoixActionPr
.Cells(Ligne, 14) = ChoixSansSuite
.Cells(Ligne, 21) = ActionCo2
.Cells(Ligne, 22) = RespActionCo2
.Cells(Ligne, 23) = PlanifActionCo2
.Cells(Ligne, 24) = DateActionCo2
.Cells(Ligne, 25) = SoldeActionCo2
.Cells(Ligne, 26) = DateSoldeActionCo2
J'ai donc 2 lignes qui se créées lorsque je clique sur le bouton valider.
Mais ce que je voudrai c'est que si jamais j'ai mon SoldeActionCo2.Value = False (c'est une checkbox) alors je n'ai qu'une ligne qui est générée (en fait , le second paragraphe ne s'effectue pas)... Est ce possible ?
J'ai un userform avec un certain nombre de données. ces données sont extraites lorsque je clique sur un "bouton valider" et vont se ranger (en ligne) dans ma feuille excel
Voici le code d'extraction :
Private Sub btnValider_Click()
Dim Ligne As Long
'Ajout ou modification d'une ligne d'enregistrement
With ThisWorkbook.Sheets(2)
If Modification Then
Ligne = ActiveCell.Row
Else
'Déterminer la première ligne libre du tableau
Ligne = .Range("A65536").End(xlUp).Row + 1
End If
'Mise à jour de la ligne d'enregistrement
.Cells(Ligne, 1) = Ligne - 2
.Cells(Ligne, 2) = ChoixSite
.Cells(Ligne, 3) = ChoixOrigine
.Cells(Ligne, 4) = DateAnomalie
.Cells(Ligne, 5) = DescriptionAnomalie
.Cells(Ligne, 6) = ActionCurative
.Cells(Ligne, 7) = AnalyseCauses1
.Cells(Ligne, 8) = AnalyseCauses2
.Cells(Ligne, 9) = AnalyseCauses3
.Cells(Ligne, 10) = AnalyseCauses4
.Cells(Ligne, 11) = AnalyseCauses5
.Cells(Ligne, 12) = ChoixActionCo
.Cells(Ligne, 13) = ChoixActionPr
.Cells(Ligne, 14) = ChoixSansSuite
.Cells(Ligne, 15) = ActionCo1
.Cells(Ligne, 16) = RespActionCo1
.Cells(Ligne, 17) = PlanifActionCo1
.Cells(Ligne, 18) = DateActionCo1
.Cells(Ligne, 19) = SoldeActionCo1
.Cells(Ligne, 20) = DateSoldeActionCo1
If Modification Then
Ligne = ActiveCell.Row
Else
'Déterminer la première ligne libre du tableau
Ligne = .Range("A65536").End(xlUp).Row + 1
End If
'Mise à jour de la ligne d'enregistrement
.Cells(Ligne, 1) = Ligne - 2
.Cells(Ligne, 2) = ChoixSite
.Cells(Ligne, 3) = ChoixOrigine
.Cells(Ligne, 4) = DateAnomalie
.Cells(Ligne, 5) = DescriptionAnomalie
.Cells(Ligne, 6) = ActionCurative
.Cells(Ligne, 7) = AnalyseCauses1
.Cells(Ligne, 8) = AnalyseCauses2
.Cells(Ligne, 9) = AnalyseCauses3
.Cells(Ligne, 10) = AnalyseCauses4
.Cells(Ligne, 11) = AnalyseCauses5
.Cells(Ligne, 12) = ChoixActionCo
.Cells(Ligne, 13) = ChoixActionPr
.Cells(Ligne, 14) = ChoixSansSuite
.Cells(Ligne, 21) = ActionCo2
.Cells(Ligne, 22) = RespActionCo2
.Cells(Ligne, 23) = PlanifActionCo2
.Cells(Ligne, 24) = DateActionCo2
.Cells(Ligne, 25) = SoldeActionCo2
.Cells(Ligne, 26) = DateSoldeActionCo2
J'ai donc 2 lignes qui se créées lorsque je clique sur le bouton valider.
Mais ce que je voudrai c'est que si jamais j'ai mon SoldeActionCo2.Value = False (c'est une checkbox) alors je n'ai qu'une ligne qui est générée (en fait , le second paragraphe ne s'effectue pas)... Est ce possible ?
A voir également:
- Non extraction de données d'un userform
- Fuite données maif - Guide
- Supprimer les données de navigation - Guide
- Trier des données excel - Guide
- Sauvegarde des données - Guide
- Excel supprimer un tableau sans supprimer les données ✓ - Forum Excel