Recopie incrémentée comprenant changement d'onglets

ausan Messages postés 1 Date d'inscription   Statut Membre Dernière intervention   -  
cs_Le Pivert Messages postés 7904 Date d'inscription   Statut Contributeur Dernière intervention   -
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
A voir également:

2 réponses

via55 Messages postés 14512 Date d'inscription   Statut Membre Dernière intervention   2 746
 
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
cs_Le Pivert Messages postés 7904 Date d'inscription   Statut Contributeur Dernière intervention   729
 
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