Bonjour,
Alors voila mon problème, j'ai 2 feuilles, une nommé"livraison", l'autre nommée "livreur1".Ma combobox se nomme"cbxaffectation"
Donc j'ai créer une form que j'ai nommé frmaffectation et dedans j'ai mis des boutons (livreur1, livreur2 etc...). Quand je clique sur le bouton livreur1 je me dirige vers une autre form nommé frmlivreur1
La j'ai installé une combobox et j'ai fait le code ci dessous. Grâce à celui ci je peux choisir une ligne dans la feuille livraison et la copier(ou du moins les données qui m’intéressent) dans la feuille livreur1.
Tout cela marche, mais en plus j'aimerai faire 2 actions :
-effacer la ligne dans la feuille "livraison"que j'ai copier dans la feuille "livreur1" et faire en sorte que la ligne vide dans "livraison" soit comblé par les lignes en dessous
-Il suffit qu'un livreur clique sur la mauvaise ligne dans la combobox pour que tout se détraque, donc mettre un message au moment ou le livreur sélectionne la ligne dans la combo box avec une obligation de validation pour que l'action de copie se fasse. ex:
étape 1 clique que la ligne de la combobox
étape 2 message: valider oui non
étape 3 si oui copier dans la feuille "livreur1", si non combobox = ""
Je ne sais pas du tout comment m'y prendre sur ce coup la.
Merci pour votre aide, Cordialement
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37 Private Sub cbxaffectation_Change() Dim numlignevide As Integer Worksheets("livreur1").Activate With Worksheets("livreur1") numlignevide = ActiveSheet.Columns(1).Find("").Row Debug.Print Me.cbxaffectation.ListIndex + 1 .Cells(numlignevide, 1) = Worksheets("livraison").Cells(Me.cbxaffectation.ListIndex + 2, 1) .Cells(numlignevide, 2) = Worksheets("livraison").Cells(Me.cbxaffectation.ListIndex + 2, 2) .Cells(numlignevide, 3) = Worksheets("livraison").Cells(Me.cbxaffectation.ListIndex + 2, 4) End With End Sub Private Sub Cmdok_Click() cbxaffectation.Text = "" frmlivreur1.Hide Worksheets("facture").Activate End Sub Private Sub userform_Initialize() Dim tblSrce As String With Worksheets("livraison") tblSrce = .Name & "!" & Range(Cells(300, 1), Cells(.Range("A1:A300").End(xlDown).Row, .Range("A1:A300").End(xlToRight).Column)).Address End With With Me.cbxaffectation .ColumnHeads = True .ColumnCount = 1 .ColumnWidths = "60;60;80" .RowSource = tblSrce End With End Sub
Partager