Copier des lignes dans une autre feuille Excel

ArnaudNR -  
gbinforme Messages postés 14930 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour,

Je tourne un peu en rond avec un petit problème.
J'ai un fichier excel dans lequel j'ai une feuille (FactureIN) avec toutes les factures d'achat de ma société. Différents achats doivent être refacturés.

Je souhaite pouvoir "isoler" dans une autre feuille ces factures qui nécessitent d'être refacturées. Dans la feuille "FacturesIN, j'ai une colonne avec chaque type de dépense (Loyer, Adwords, imprimés, ...)

Je souhaite par exemple, retrouver dans une feuille "Adwords" toutes les lignes qui ont le libellé "Adwords" dans la colonne 'Imputation" et ce de manière automatique.

Une piste ?
Merci d'avance pour votre aide.
(Je suis sur Mac avec excel 2011)

1 réponse

  1. gbinforme Messages postés 14930 Date d'inscription   Statut Contributeur Dernière intervention   4 744
     
    Bonjour,

    dans une feuille "Adwords" tu mets cette petite macro et dès que tu choisiras cette feuille elle sera mise à jour.
    Option Explicit
    Private Sub Worksheet_Activate()
    Dim sel As Variant, cel As Range, lig As Long
    Application.ScreenUpdating = False
    With Sheets("FactureIN")
        Rows(2).Resize(UsedRange.Rows.Count).Delete
        Set sel = .Cells.Find("Imputation")
            If Not sel Is Nothing Then
                lig = 2
                For Each cel In .UsedRange.Columns(sel.Column).Cells
                    If cel.Value = "Adwords" Then
                        .Rows(cel.Row).Copy Destination:=Rows(lig)
                        lig = lig + 1
                    End If
                Next cel
            End If
    End With
    Application.ScreenUpdating = True
    End Sub
    0