Recopie incrémentée comprenant changement d'onglets

ausan Messages postés 1 Statut Membre -  
cs_Le Pivert Messages postés 8437 Statut Contributeur -
Bonjour,

J'ai un classeur avec une cinquantaine d'onglets et je veux me créer un onglet qui fait référence à chacun des onglets.
Exemple: Chaque onglet à un nom et un prénom. Dans chaque onglet, dans la cellule D2 il y a la date de retour.
Dans mon nouvel onglet qui s'appel liste des retours, je veux avoir dans une colonne, le nom de chaque onglet et dans une autre la date de retour, en faisant une copie incrémentée.

Merci de votre précieuse aide

2 réponses

  1. via55 Messages postés 14393 Date d'inscription   Statut Membre Dernière intervention   2 759
     
    Bonsoir

    En colonne A les noms des onglets commençant par ex en A2
    En B2 formule = INDIRECT(A2 & "!D2")
    A étirer vers le bas

    Si les noms d'onglets comportent des espaces la fomule doit être : INDIRECT("'"' & A2 & "'!D2")

    Cdlmnt
    Via
    0
  2. cs_Le Pivert Messages postés 8437 Statut Contributeur 730
     
    Bonjour,

    en vba, a mettre dans un module:

    Option Explicit
    Sub boucle()
    'Déclare la variable objet Worksheet
    Dim Ws As Worksheet
    Dim i As Integer
    i = 1
    'Boucle sur toutes les feuille de calcul du classeur. Les onglets graphiques ne sont pas pris
    'en compte.
    'ThisWorkbook correspond à l'objet classeur contenant la macro
    Sheets.Add(Before:=Worksheets(1)).Name = "liste des retours"
    For Each Ws In ThisWorkbook.Worksheets
        If Ws.Name <> "liste des retours" Then
        Worksheets("liste des retours").Range("A" & i).Value = Ws.Name
        Worksheets("liste des retours").Range("B" & i).Value = Ws.Cells(2, 4).Value
        i = i + 1
        End If
    Next Ws
    End Sub
    


    --
    @+ Le Pivert
    -1