Création Onglet recap, formules EXCEL ou VBA

Résolu
Seimeon Messages postés 6 Statut Membre -  
Seimeon Messages postés 6 Statut Membre -
Bonjour à tous,

J'ai une petite question :
J'ai un fichier avec une 20 d'onglets et un onglet récapitulatif.

Dans cet onglet récap, je liste tous les onglets et je voudrais accéder à une case de chaque onglet pour récupérer une valeur.
J'arrive à faire le lien manuellement avec une commande du type ( ='fiche15'!L5 ) mais je voudrais qu'il récupère automatiquement le nom de l'onglet à gauche et m'inscrive sa valeur à droite.

Pour illustrer (Onglet récap) :

Fiche 5 Donnée de la fiche 5 dans la case 5
Fiche 2 Donnée de la fiche 2 dans la case 5

Merci d'avance,

bonne journée

5 réponses

  1. PHILOU10120 Messages postés 6463 Date d'inscription   Statut Contributeur Dernière intervention   835
     
    Bonjour

    Avec cette formule

    =INDIRECT(ADRESSE(15;4;3;1;"fiche5");1)

    qui devient si "fiche5" se trouve en A5

    =INDIRECT(ADRESSE(10;3;3;1;A5);1)

    1
  2. PHILOU10120 Messages postés 6463 Date d'inscription   Statut Contributeur Dernière intervention   835
     
    Bonjour

    N° ligne = la ligne ou se trouve l'info sur la feuille (le nom en fin de formule)
    N° colonne = la colonne dans laquelle on récupère l'info sur la même feuille (le nom en fin de formule)
    3 = Absolu si vous voulez une adresse absolue
    La fonction indirect pour traduire l'adresse texte et récupérer la valeur
    1 type adresse A1 - 2 type adresse L1C1
    1
  3. Seimeon Messages postés 6 Statut Membre
     
    Merci de ta réponse,
    Un peu de difficulté pour la comprendre.

    ADDRESSE(no_lig;no_col;[no_abs];[a1];[feuille_texte])

    no_lig Obligatoire. Valeur numérique spécifiant le numéro de ligne Ligne correspondant à quel onglet?
    no_col Obligatoire. Valeur numérique spécifiant le numéro de colonne colonne correspondant à quel onglet?

    J'ai cherché dans l'aide Excel, assez abstrait encore une fois.
    Si tu pouvais m'expliquer les variables, un peu plus en profondeur.

    merci d'avance
    0
  4. foo
     
    Bonjour

    un peux de VBA

    Sub ListOnglet()
    L = 5
    For I = 1 To Worksheets.Count
    Onglet = Worksheets(I).Name
    If Onglet <> "Récap" Then
    Feuil2.Range("A" & L).Value = Worksheets(I).Name
    Feuil2.Range("B" & L).Value = Worksheets(I).Range("A5")
    L = L + 1
    End If
    Next I
    End Sub

    A+
    Maurice
    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. Seimeon Messages postés 6 Statut Membre
     
    MErci pour vos réponses,
    la fonction avec ses explications de PHILOU a bien fonctionné
    0