Problème de macro

Résolu/Fermé
xav37300 Messages postés 46 Date d'inscription mercredi 18 décembre 2013 Statut Membre Dernière intervention 4 septembre 2019 - 20 déc. 2013 à 22:20
xav37300 Messages postés 46 Date d'inscription mercredi 18 décembre 2013 Statut Membre Dernière intervention 4 septembre 2019 - 21 déc. 2013 à 12:29
Bonjour,

Je reviens vers vous car j' ai un petit problème sur mon fichier.
En effet, j'ai un premier onglet ou j ajoute mes articles avec mes commandes
il y a une ligne bleu pour faire une recherche qui fonctionne très bien le souci c'est lorsque je suis censé mettre oui pour la commande recu il doit me recuperer la ligne et me lajouter dans le deuxième onglet (commandes expédiées ) mais lorsque je mais oui rien ne se passe?
Ou est l'erreur dans la macro?
Pourriez vous m'aider svp

Merci beaucoup

https://www.cjoint.com/c/CLuwog9s91d

A voir également:

1 réponse

gbinforme Messages postés 14946 Date d'inscription lundi 18 octobre 2004 Statut Contributeur Dernière intervention 24 juin 2020 4 708
20 déc. 2013 à 22:31
Bonjour,

Tu penses que "Worksheet_Change1" peut être opérationnel ?
Peut-être par l'opération du saint esprit numérique ?
Il faudrait intégrer cette macro dans "Worksheet_Change" la seule macro événementielle qui fonctionne sur changement de valeur de cellule.
0
xav37300 Messages postés 46 Date d'inscription mercredi 18 décembre 2013 Statut Membre Dernière intervention 4 septembre 2019
20 déc. 2013 à 22:44
ok merci de tes conseils
je débute et c'est vrai qu'avec une condition ca va mais des que je veux faire plus complexe je m'y perd

Merci quand meme
0
gbinforme Messages postés 14946 Date d'inscription lundi 18 octobre 2004 Statut Contributeur Dernière intervention 24 juin 2020 4 708
20 déc. 2013 à 22:53
Tout simplement :
Private Sub Worksheet_Change(ByVal Target As Range)
    If Not Application.Intersect(Target, Range("a7:g7")) Is Nothing Then
        If Target.Count > 1 Then Exit Sub
        Range("a8:g1500").AdvancedFilter Action:=xlFilterInPlace, CriteriaRange:= _
        Range("a6:g7"), Unique:=False
        Application.Goto Range("a1"), Scroll:=True
        Target.Activate
    ElseIf Not (Intersect(Target, Range("K:K")) Is Nothing) Then
        Dim lig As Long, derligne As Long
        If Target.Value = "OUI" Then
            With Sheets("Commandes Expédiées")
                derligne = .Cells(.Rows.Count, 1).End(xlUp).Row + 1
                lig = Target.Row
                While Cells(lig, 1) = ""
                    lig = lig - 1
                Wend
                .Cells(derligne, 1) = Cells(Target.Row, 1)
                .Cells(derligne, 2) = Cells(Target.Row, 2)
                .Cells(derligne, 3) = Cells(Target.Row, 3)
                .Cells(derligne, 5) = Cells(Target.Row, 4)
            End With
        End If
    End If
End Sub
0
xav37300 Messages postés 46 Date d'inscription mercredi 18 décembre 2013 Statut Membre Dernière intervention 4 septembre 2019
21 déc. 2013 à 12:29
Merci Beaucoup gbinforme
0