Rapatrié des info sur Excel 2010

ray1962 Messages postés 2 Statut Membre -  
gbinforme Messages postés 14930 Date d'inscription   Statut Contributeur Dernière intervention   -
J’ai un fichier sur Excel 2010
Et dans ce fichier j’ai des classeurs de « A » @ « M » qui détient des infos.
Sur environ 30 lignes dans ma colonne « G » je peux mettre ou enlever un « X »
Alors dans le classeur « N » par un bouton je voudrais emmener l’info.
Qui ont un « X » (colonne « G » )
Un a la suite de l’autre et après faire le trie

2 réponses

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

    Bienvenue sur le forum.

    dans ce fichier j’ai des classeurs
    Je suppose que se sont les onglets dont tu parles ?
    0
    1. ray1962 Messages postés 2 Statut Membre
       
      exacte onglet au bas :)
      0
  2. gbinforme Messages postés 14930 Date d'inscription   Statut Contributeur Dernière intervention   4 744
     
    Bonjour,

    dans le classeur « N » par un bouton je voudrais emmener l’info
    Comme tu n'as besoin de cette feuille que lorsque tu l'affiches, je te propose cette macro qui va mettre à jour ta feuille lorsque tu la choisis.
    Elle est à copier dans la feuille « N » de l'éditeur de macros (alt+F11)
    Option Explicit
    Private Sub Worksheet_Activate()
    Const deb = 2           ' ligne début infos à modifier
    Dim ong As Worksheet    ' onglet traité
    Dim lgo As Long         ' ligne origine
    Dim lgc As Long         ' ligne copie
    Application.ScreenUpdating = False
    With ActiveSheet.UsedRange
        Cells(deb, 1).Resize(.Rows.Count, .Columns.Count).ClearContents
        lgc = deb
    End With
    For Each ong In ActiveWorkbook.Sheets
        If ong.Name <> ActiveSheet.Name Then
            For lgo = 1 To ong.Cells(Rows.Count, 7).End(xlUp).Row
                If LCase(ong.Cells(lgo, 7).Value) = "x" Then
                    ong.Rows(lgo).Copy Destination:=Rows(lgc)
                    lgc = lgc + 1
                End If
            Next lgo
        End If
    Next ong
    Application.ScreenUpdating = True
    End Sub
    
    0