Récupérer les informations d'une feuille

Récupérer les informations d'une feuille Récupérer des informations d'une feuille à une autre (Résolu) » Forum - Excel Récupération d'information et nombre de doublon sur des feuilles » Forum - Excel Erreur lors de la récupération des informations ([RH-01)] [Résolu] » Forum - Samsung Récupéré des données dans des feuilles (Résolu) » Forum - Excel Récupérer les données d'une feuille dans un tableau + Range vide (Résolu) » Forum - VB / VBA

Bonjour à tous, je rencontre un problème sous Excel.

J'ai dans mon ficher des feuilles allants de 1 à 100 (F1, F2 ... F100).

Je souhaite sur une feuille que j'ai nommé F0, récupérer sous forme de tableau les valeurs présentes dans les cases E8, J8 et O8 de chacune de mes feuilles (F1 à F100).

Cela est-il possible ?

Merci d'avance

Forum

Récupérer les informations d'une feuille Récupérer des informations d'une feuille à une autre (Résolu) » Forum - Excel Récupération d'information et nombre de doublon sur des feuilles » Forum - Excel Erreur lors de la récupération des informations ([RH-01)] [Résolu] » Forum - Samsung Récupéré des données dans des feuilles (Résolu) » Forum - Excel Récupérer les données d'une feuille dans un tableau + Range vide (Résolu) » Forum - VB / VBA

Web: www.shapebootstrap.net

14 réponses

Marsh

NOVEMBER 9, 2013 AT 9:15 PM

Bonjour,

tu fais une liste a1=f0......a100=f100
en b1
=indirect(a1&"!e8") que tu descends

et bis repetita !


Crdlmt

Reply
réponses:
  • auteur

  • pitch02

    Bonjour,

    Merci pour cette réponse

    Si j'ai bien compris je tape dans la cellule a1=f1 puis a2=f2 ... a100=f100.
    Puis je tape =indirect(a1&"!e8") dans b1 ?

  • DjiDji59430

    Oui t'as bien compris , et tu descends jusqu' a b100

    tuto :
    https://www.cjoint.com/c/HIonodV1SZZ

  • pitch02

    Si je tape =f1 dans la cellule a1 j'obtiens la valeur de la cellule f1 de ma feuille actuelle.

  • DjiDji59430

    faut pas mettre = il faut que ça reste du texte (dans mon tuto , je n'ai pas taper =f1) seulement f1

  • pitch02

    Ce que je souhaite en réalité c'est récupérer les données d'autres onglets.

  • DjiDji59430

    Elles se nomment vraiment commet tes feuilles ??
    F1 ?
    ou
    Résumé, par exemple

Marsh

NOVEMBER 9, 2013 AT 9:15 PM

Bonjour,

ou en vba:

Dim Ws As Worksheet Dim DerniereLigneUtilisee As Long Sheets("FO").Range("E1").Value = "En-tete" Sheets("FO").Range("J1").Value = "En-tete" Sheets("FO").Range("O1").Value = "En-tete" DerniereLigneUtilisee = Sheets("FO").Range("E" & Rows.Count).End(xlUp).Row + 1 ' + 1 = 1ère ligne vide For Each Ws In Worksheets        If Ws.Name = "FO" Then        Else        Sheets("FO").Range("E" & DerniereLigneUtilisee).Value = Sheets(Ws.Name).Range("E8").Value        Sheets("FO").Range("J" & DerniereLigneUtilisee).Value = Sheets(Ws.Name).Range("J8").Value        Sheets("FO").Range("O" & DerniereLigneUtilisee).Value = Sheets(Ws.Name).Range("O8").Value      DerniereLigneUtilisee = DerniereLigneUtilisee + 1    End If     Next Ws


Reply
réponses:
  • pitch02

    Bonjour je ne sais pas du tout codé en VBA, où dois-je insérer ce code ?

    Merci

  • cs_Le Pivert

    Ce mettre sur la feuille concernée FO, Faire Alt F11 pour accéder à l'éditeur et mettre ce code:

    Option Explicit Private Sub Worksheet_SelectionChange(ByVal Target As Range) If Not Application.Intersect(Target, Range("A1")) Is Nothing Then lancermacro End If End Sub Private Sub lancermacro() Dim Ws As Worksheet Dim DerniereLigneUtilisee As Long Sheets("FO").Range("E1").Value = "En-tete" Sheets("FO").Range("J1").Value = "En-tete" Sheets("FO").Range("O1").Value = "En-tete" DerniereLigneUtilisee = Sheets("FO").Range("E" & Rows.Count).End(xlUp).Row + 1 ' + 1 = 1ère ligne vide Application.ScreenUpdating = False For Each Ws In Worksheets        If Ws.Name = "FO" Then        Else        Sheets("FO").Range("E" & DerniereLigneUtilisee).Value = Sheets(Ws.Name).Range("E8").Value        Sheets("FO").Range("J" & DerniereLigneUtilisee).Value = Sheets(Ws.Name).Range("J8").Value        Sheets("FO").Range("O" & DerniereLigneUtilisee).Value = Sheets(Ws.Name).Range("O8").Value      DerniereLigneUtilisee = DerniereLigneUtilisee + 1    End If     Next Ws Application.ScreenUpdating = True End Sub  


    a chaque sélection de A1 la macro sera déclenchée

    Ensuite enregistrer: Classeur Excel prenant en charge les macros


    Voilà

Marsh

NOVEMBER 9, 2013 AT 9:15 PM

Merci pour vos réponses.

Je pense que je n'ai pas été clair sur mon problème.

Je souhaite dans la feuille F0 pouvoir récupérer les données présentes dans les cases E8, J8 et O8 des autres feuilles allant de F1 à F100. De façon à avoir un tableau avec les différentes valeurs dans cette feuille F0.

Reply
réponses:
  • cs_Le Pivert

    C'est ce que fait cette macro avec les en-têtes en E1, J1 et O1 et les données de toutes les feuilles dans les colonnes E, J et O. Mais l'on peut changer les destinations, c'est à toi de le dire!

  • pitch02

    D'accord je dois mal m'y prendre. Je vais regarder quelques tutos sur la création des macros afin de mieux cerner ces dernières.

    Merci pour ton aide.

  • cs_Le Pivert

    Voici un exemple:

    https://www.cjoint.com/c/HIooeIfiVoQ

    @+

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed