Macro ou formule sur onglets "futurs"

Résolu
746emilie Messages postés 40 Statut Membre -  
f894009 Messages postés 17417 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

Mon but est d'extraire de 10 onglets des données situées de F19 à F51 sur chaque onglet et de les coller sur le premier onglet, en colonnes.

Ca parait "simple" mais ! :)

Les onglets en question sont générés par une macro (merci Pivert!) apd fichiers txt.

Donc il faudrait que sur la première feuille, j'enregistre une formule ou une macro sur des onglets que je n'ai pas encore! C'est ça le challenge

Ces onglets ont un numéro de type 150119-0094 (avec éventuellement qques lettres après, comme MNNM, a etc); mais je ne veux pas inclure les onglets de type 'Feuil14.

je veux coller ces infos dans J5:S37

Est-ce que qqu peut m'aider ???

Un gros gros merci d'avance

8 réponses

Résumé de la discussion

Objectif: extraire F19:F51 de dix onglets générés par une macro et les coller en colonnes sur le premier onglet, dans la plage J5:S37, en excluant les feuilles nommées Feuil14.
Les réponses suggèrent d’intégrer cette opération dans la macro existante ou d’employer une routine Recup_import_total pour copier les données dans la feuille de synthèse.
Une approche consiste à faire balayer dix onglets par une macro (Cs_LePivert) et à coller les données en ordre de colonnes (par exemple G, puis H, puis J, puis K, sans en-tête).
Des précisions mentionnent des défis liés à des versions Excel et à l’import de fichiers TXT via une combobox, mais la solution retenue vise à adapter Recup_import_total pour acheminer F19:F51 dans J5:S37, une colonne par onglet.

Généré automatiquement par IA
sur la base des meilleures réponses
  1. f894009 Messages postés 17417 Date d'inscription   Statut Membre Dernière intervention   1 717
     
    Bonjour,

    Mon but est d'extraire de 10 onglets Que fait la macro de Cs_LePivert, elle balaie dix onglets ou ......
    0
  2. 746emilie Messages postés 40 Statut Membre
     
    Bonjour
    Merci de la réponse!
    Il y a une combobox qui me propose d'importer tous les fichiers txt d'un dossier...
    et bizarrement, quand je veux afficher la macro, je ne vois que
    Option Explicit

    Sub Sourire1_Clic()
    UserForm1.Show
    End Sub
    0
    1. f894009 Messages postés 17417 Date d'inscription   Statut Membre Dernière intervention   1 717
       
      Re,

      Ouvrez la fenetre VBA, partie gauche, double clic sur Feuille et vous verrez l'userform, double clic sur l'UF, double clic sur l'UF mais cote droit de la fenetre VBA et vous avez acces au code de l'UF
      0
    2. 746emilie Messages postés 40 Statut Membre
       
      Excel s'ouvre à moi

      Option Explicit
      Dim onglet As Boolean
      Dim Fichier
      Dim Tableau() As String
      Dim pos As Integer
      Dim nomfichier As String
      Dim myPath As String, myFile As String
      Sub Recup_import()
      'on recherche le fichier texte
      Fichier = Application.GetOpenFilename("Text Files (*.txt), *.txt")
      If Fichier <> False Then
      'on récupere le nom du fichier texte sans son extension
      nomfichier = Mid(Fichier, InStrRev(Fichier, "\") + 1)
      pos = InStr(1, nomfichier, ".", 1)
      nomfichier = Left(nomfichier, pos - 1)
      'on vérifie si il n'y a pas d'onglet portant le même nom
      onglet = True
      Doublons
      If onglet = False Then Exit Sub
      'on ajoute un onglet
      Sheets.Add.Move After:=Sheets(Sheets.Count)
      Sheets(Sheets.Count).Name = nomfichier
      'on met le texte sur la feuille
      Worksheets(nomfichier).QueryTables.Add("TEXT;" & Fichier, [B1]).Refresh 'à adapter le cellule de reception
      Range("A1").Value = nomfichier
      Else
      MsgBox "Pour importer des données dans Excel, vous devez choisir un fichier texte!", vbExclamation, "Importer fichier texte"
      End If
      Sheets("Sommaire").Select
      Range("A" & Rows.Count).End(xlUp).Offset(1, 0) = nomfichier
      End Sub
      Sub Recup_import_total()
      If myFile = "" Then Exit Sub
      Fichier = ThisWorkbook.Path & "\" & myFile
      'on récupere le nom du fichier texte sans son extension
      nomfichier = Mid(Fichier, InStrRev(Fichier, "\") + 1)
      pos = InStr(1, nomfichier, ".", 1)
      nomfichier = Left(nomfichier, pos - 1)
      'on vérifie si il n'y a pas d'onglet portant le même nom
      onglet = True
      Doublons
      If onglet = False Then Exit Sub
      'on ajoute un onglet
      Sheets.Add.Move After:=Sheets(Sheets.Count)
      Sheets(Sheets.Count).Name = nomfichier
      'on met le texte sur la feuille
      Worksheets(nomfichier).QueryTables.Add("TEXT;" & Fichier, [B1]).Refresh 'à adapter le cellule de reception
      Range("A1").Value = nomfichier
      Sheets("Sommaire").Select
      Range("A" & Rows.Count).End(xlUp).Offset(1, 0) = nomfichier
      End Sub
      Private Sub CommandButton2_Click()
      Recup_import
      End Sub
      Private Sub CommandButton1_Click()
      Dim Index As Integer
      Range("A1").Value = "Sommaire"
      Index = ComboBox1.ListIndex
      Sheets(Index + 1).Select
      End Sub
      Private Sub CommandButton3_Click()
      ParcourtFichier
      End Sub

      'http://silkyroad.developpez.com/VBA/ControlesUserForm/#LII-F
      Private Sub UserForm_Initialize()
      Dim j As Integer
      'Récupère les données de la colonne A...
      For j = 1 To Range("A65536").End(xlUp).Row
      ComboBox1 = Range("A" & j)
      '...et filtre les doublons
      If ComboBox1.ListIndex = -1 Then ComboBox1.AddItem Range("A" & j)
      Next j
      ComboBox1.ListIndex = 0
      End Sub
      'empecher de renommer onglet du même nom
      Private Sub Doublons()
      Dim ctr
      For ctr = 1 To Sheets.Count
      If Sheets(ctr).Name = nomfichier Then
      MsgBox "Un onglet porte déjà ce nom!", vbExclamation, "Ajouter onglet"
      onglet = False
      End If
      Next
      End Sub
      Sub ParcourtFichier()
      myPath = ThisWorkbook.Path
      ' Fichier va contenir le nom du premier fichier rencontré dans F:\atelier
      Fichier = Dir(myPath & "\*.txt*")
      ' Tant que Fichier est différent de vide (Tant qu'il y a un fichier à lire, simplement)
      While Fichier <> ""
      ' On l'affiche dans la fenêtre d'exécution (Affichage/Fenêtre exécution)
      myFile = Fichier
      Recup_import_total
      ' Le fait de dire Fichier = Dir, sans préciser comme paramètre le nom du dossier,
      ' permet de lire le fichier suivant :
      Fichier = Dir
      ' Et on revient dans la boucle en affichant le fichier qu'on vient de lire...
      ' S'il n'y avait qu'un seul fichier dans le dossier, il sortirait tout de suite maintenant.
      Wend
      End Sub
      0
  3. f894009 Messages postés 17417 Date d'inscription   Statut Membre Dernière intervention   1 717
     
    Re,

    Le plus simple c'est de modifie le code Recup_import_total pour copier les infos que vous voulez dans l'onlget Sommaire (si j'ai bien compris)
    0
    1. 746emilie Messages postés 40 Statut Membre
       
      Bonjour

      je veux effectivement copier ces infos dans l'onglet sommaire, mais par quoi dois-je remplacer Recup_import_total??
      0
      1. f894009 Messages postés 17417 Date d'inscription   Statut Membre Dernière intervention   1 717 > 746emilie Messages postés 40 Statut Membre
         
        Bonjour,

        Ok, vous pouvez mettre un ficher txt a dispo ou pas ??

        La copie se fait dans quelle ordre, y a une entete a mettre pour les infos copiees ??
        0
  4. 746emilie Messages postés 40 Statut Membre
     
    Hello
    voici mon fichier

    xls http://www.cjoint.com/c/FAwpOYWlaaP
    txt http://www.cjoint.com/c/FAwpRamWt7P
    0
    1. 746emilie Messages postés 40 Statut Membre
       
      ordre: colonne G, puis H
      puis J puis K
      etc

      pas d'entête (je l'ai déjà fait)

      Un grand merci
      0
    2. f894009 Messages postés 17417 Date d'inscription   Statut Membre Dernière intervention   1 717 > 746emilie Messages postés 40 Statut Membre
       
      Re,

      Pour le fichier txt, z'etes sur, car illisible !!!!!!
      0
    3. f894009 Messages postés 17417 Date d'inscription   Statut Membre Dernière intervention   1 717
       
      Re,

      Le fichier txt est le xls avec changement d'extention, convient pas. C'est un fichier d'infos txt que je vous demande si possible et vu qu' il y a des formules ex: I5: =G5+H5, la copie d'infos ne doit pas se faire port nawac !!!!!!
      0
    4. 746emilie Messages postés 40 Statut Membre > f894009 Messages postés 17417 Date d'inscription   Statut Membre Dernière intervention  
       
      Bonjour!


      et avec ce lien ?

      (désolée pour le port nawac)

      http://www.cjoint.com/c/FAzjiRIvG2P

      merci!
      0
    5. f894009 Messages postés 17417 Date d'inscription   Statut Membre Dernière intervention   1 717 > 746emilie Messages postés 40 Statut Membre
       
      Bonjour,

      C'est quoi le fichier mis a dispo !!!!!!
      0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. f894009 Messages postés 17417 Date d'inscription   Statut Membre Dernière intervention   1 717
     
    Re,

    numéro de type 150119-0094 (avec éventuellement qques lettres après, comme MNNM, a etc); Ah bon, parce que le fichier txt pas ca

    Mon but est d'extraire de 10 onglets des données situées de F19 à F51 sur chaque onglet Ben y rien dans la colonne F voir image:



    Infos a copier dans les colonnes saumon je suppose(docteur Watson) quand ce sera plus clair
    0
    1. 746emilie Messages postés 40 Statut Membre
       
      Cher Sherlock,

      plus simple après l'importation des fichiers txt au moyen de la macro décrite au-dessus: voir par exemple:

      http://www.cjoint.com/c/FBfoWbUcmLP

      le but est le suivant:
      -aller sur l'onglet 140127-0001
      -de F2 à F51: les données qui m'intéressent; elles sont séparées par un "/" qui devra être enlevé par la suite

      - je veux qu'elles se collent sur la page "sommaire", en G5-G37 et H5-H37
      en sommaire/G5, je retrouverai le premier chiffre de 140127-0001/F2
      en sommaire/H5, je retrouverai le second chiffre de 140127-0001/F2

      -et ainsi de suite jusqu'en G et H37

      -et ainsi de suite pour les onglets suivants, dont les colonnes F doivent se coller de la même façon en sommaire/J-K,M-N, etc

      -les colonnes "saumon" doivent contenir la somme des 2 colonnes avant elles (lignes 5 à 37)

      Merci!
      0
    2. f894009 Messages postés 17417 Date d'inscription   Statut Membre Dernière intervention   1 717 > 746emilie Messages postés 40 Statut Membre
       
      Re,

      plus simple après l'importation des fichiers txt
      C'est le moins que l'on puisse dire

      Ceci est a faire seulement pour Recup_import_total ??

      =INDEX($A$3:$A$999;ENT(COLONNE()/3)-1) y a une erreur, c'est A2 pas A3
      0
    3. 746emilie Messages postés 40 Statut Membre
       

      Ceci est a faire seulement pour Recup_import_total ??


      Je ne comprends pas la question :(

      Merci pour la formule
      0
    4. f894009 Messages postés 17417 Date d'inscription   Statut Membre Dernière intervention   1 717 > 746emilie Messages postés 40 Statut Membre
       
      Re,

      relisez-vous, 746emilie - 22 janv. 2016 à 15:41 et dites nous !!
      0
    5. 746emilie Messages postés 40 Statut Membre
       
      Effectivement, j'ai recopié ça, mais ça ne me parle pas, je ne sais pas à quelle action de la macro ceci se réfère...
      l'action que j'ai expliquée à 15.59 est à faire sur tous les onglets issus de l'importation des txt...quelque soit le nombre de fichiers txt importés
      j'espère que ça vous aide, mais pas convaincue
      0
  7. f894009 Messages postés 17417 Date d'inscription   Statut Membre Dernière intervention   1 717
     
    Bonjour,

    Vous pouvez mettre un fichier TXT a dispo, car j'ai un changement de format a l'importation qui n'est pas normal avec les fichiers que j'ai crees en partant des imports
    0
    1. 746emilie Messages postés 40 Statut Membre
       
      Bon, ok, mais dites-moi exactement ce que je dois faire avec mon fichier xls pour le transformer en fichier txt correct pour vous
      je dois faire "enregistrer sous" "autres formats" "texte Unicode"?
      merci!
      0
      1. f894009 Messages postés 17417 Date d'inscription   Statut Membre Dernière intervention   1 717 > 746emilie Messages postés 40 Statut Membre
         
        Re,

        mon fichier xls pour le transformer en fichier txt correct pour vous Je parle des fichiers TXT que vous importez, pas de transformer de XLS vers TXT, c'est justement ce qui me pose probleme ou alors vous ne nous dites pas tout
        0
    2. 746emilie Messages postés 40 Statut Membre
       
      OK je comprends

      Voilà un fichier txt à importer sur xls

      http://www.cjoint.com/c/FBjjXw2UPUP
      0
      1. f894009 Messages postés 17417 Date d'inscription   Statut Membre Dernière intervention   1 717 > 746emilie Messages postés 40 Statut Membre
         
        Re,

        Ca roule, j'ai le bon format donc je continue
        0
  8. f894009 Messages postés 17417 Date d'inscription   Statut Membre Dernière intervention   1 717
     
    Re,

    fichier modifie au niveau de l'import avec deux delimiteurs: Tab et "/"

    https://www.cjoint.com/c/FBjkYSYwmGf
    0
    1. 746emilie Messages postés 40 Statut Membre
       
      il ne m'ouvre que 4 fichiers txt avec

      "erreur d'excécution 7 mémoire insuffisante"

      si débogage, il m'envoie à:

      .Refresh BackgroundQuery:=False
      0
      1. f894009 Messages postés 17417 Date d'inscription   Statut Membre Dernière intervention   1 717 > 746emilie Messages postés 40 Statut Membre
         
        Re,

        Ok, je vais reprendre la chose differemment. Vous avez besoin que des donnees de la colonne Average Coverage ou d'autres ??
        0
    2. 746emilie Messages postés 40 Statut Membre
       
      oui, que de cette colonne average coverage
      0
      1. f894009 Messages postés 17417 Date d'inscription   Statut Membre Dernière intervention   1 717 > 746emilie Messages postés 40 Statut Membre
         
        Re,

        Je demandai ca au cas ou je devrai reprendre la programmation de fond.

        Je fais
        0
  9. f894009 Messages postés 17417 Date d'inscription   Statut Membre Dernière intervention   1 717
     
    Re,

    Fichier modifie: https://www.cjoint.com/c/FBjmRTR2Puf

    Testez le dans tous les sens
    0
    1. 746emilie Messages postés 40 Statut Membre
       
      encore le même message!!!!!!


      il ne m'ouvre que 4 fichiers txt avec

      "erreur d'excécution 7 mémoire insuffisante"

      si débogage, il m'envoie cette fois à:



      Worksheets(nomfichier).QueryTables.Add("TEXT;" & Fichier, [B1]).Refresh 'à adapter le cellule de reception
      0
    2. f894009 Messages postés 17417 Date d'inscription   Statut Membre Dernière intervention   1 717 > 746emilie Messages postés 40 Statut Membre
       
      Re,

      Bizzare, moi j'en ouvre 6 sans probleme. Au maxi, combien vous en aurez ??

      Quel excel avez-vous ?
      0
    3. 746emilie Messages postés 40 Statut Membre
       
      2007
      maxi...25
      0
    4. f894009 Messages postés 17417 Date d'inscription   Statut Membre Dernière intervention   1 717 > 746emilie Messages postés 40 Statut Membre
       
      Re,

      Ok, je teste pour 25 et excel 2007

      6 et excel 2007, pas de probleme !!!

      40 fichiers importes sans probleme !!!!!

      Quel PC et quel Windows ?
      0
    5. 746emilie Messages postés 40 Statut Membre
       
      Windows 7 pro
      DELL D03S001
      Processeur Intel(R) Core(TM) i3-2120 CPU @3.30GHz
      0