Recopie incrémentée comprenant changement d'onglets

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. 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
    1. Contributeur
      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