Lecture d'un fichier

Bonjour les experts

Petite question théorique :

Est-il possible de récuperez une partie des enregistrements d'un fichier excel via un autre fichier, mais sans généré le chargement du premier ?

Pour plus de détails, je cherche a récupérez dans un export, des lignes spécifique.

cet export est sur un réseau, et fait plus de 50mo, inutile de vous dire que le fichier met un temps fou a charger/filtrer/copier/coller

l'idée était donc d'avoir un fichier avec une référence vers cette export pour ne récuperez que les lignes qui m'interesse.

récap :

Fichier A (50Mb) <---> fichier B qui va lire le A rapidement

En espérant avoir été assez clair.

Merci a vous !

Edit :

21titre.xlsx (9.98 Ko)

voici la ligne de titre du fichier CSV. la colone que je cherche à filtrer est la BY.

j'arrive à lancer la lecture du fichier, mais je n'arrive pas à recuperer les lignes...

Bonjour Marmy

Tu confirmes que le "Fichier A (50Mb)" est bien un fichier CSV ?

et que tu veux en faire un fichier Excel comportant (toutes ? il y en a 115 ) les mêmes colonnes en filtrant sur la colonne BY ?

oui. je confirme.

un suel critère de la collone BY m'interesse. ^^

Bonjour Marmy

Ok.

Maintenant peux-tu expliquer ce que tu veux faire !

Tu as un CSV (de 50 Mo et de 150 colonnes) que tu veux récupérer en filtrant sur la colonne BY (EQ_CREATRICE_NOM) !

C'est à dire :

  1. Comment déterminer le filtre sur EQ_CREATRICE_NOM ?
    Est-il
      toujours le même,
    • sélectionnable,
    • à saisir ?
  • Au final de la récupération

    Quelles colonnes doivent être présentes, affichées ? (toutes ?)

  • Bonjour Andréa

    Le filtre est toujours le même.

    le CSV contient tout les tickets créé par tout le mondes. je ne veut que ceux d'une équipe précise.

    et pour la récupération, j'ai besoin de toute les colones

    merci pour ton aide !

    (re)

    Excuse-moi j'ai oublié une question essentielle ... quelle est la forme du CSV ?

    Les colonnes sont séparées par quoi ?.. ";" (point-virgule), "," (virgule), "espace " (espace), "?????????" (autre chose) ?

    le séparateur est ";" (point virgule)

    le délimiteur de texte : " (double quote)

    (re)

    Ok, merci... juste une virgule c'est déjà suffisant, mais bon ok pour "aa";"bb";"cc";..;"fin"

    je vérifie que ma solution fonctionne avec ("aa";"bb";"cc";..;"fin") par que (bêtement j'avais préparé une version à virgule, plus classique) et je reviens !

    je ne suis hélas pas a l'origine du CSV ^^ c'est une extraction automatique...

    (re)

    Je suis en train de faire un dernier test et je t'envoie une version !

    (re)

    Voilà !

    Je viens de terminer un test avec un (pseudo) CSV de 80Mo environ 4 minutes... désolé Mais il faut prendre en compte qu'il y a toujours une multitude de fichiers Excel ouvert sur mon PC je sais "c'est pas bien, mais on ne se refait pas !"

    A toi d'essayer !

    12recupcsv.xlsm (33.07 Ko)

    merci infiniment !

    je test de suite et te fait un retour !


    Hmmm...ca commence bien (géniale ton interfacce d'ailleurs), Mais j'ai un message d'erreur au bout de 10 lignes

    il bloque sur la boucle :

    For posCsv = 1 To Len(elmCsv)
                        If Mid(elmCsv, posCsv, 1) = ";" Then
                            colCsv = colCsv + 1
                            tabCsv(colCsv) = tmpCsv
                            tmpCsv = ""
                        Else
                            If Not (Mid(elmCsv, posCsv, 1) = Chr(34)) Then
                                tmpCsv = tmpCsv + Mid(elmCsv, posCsv, 1)
                            End If
                        End If
                    Next

    en erreur, il affiche "l'indice ne fait pas partie de la sélection"

    j'ai vérifier les 10lignes écrites, elle sont bonne, le début de la macro fonctionne donc correctement.

    (re)

    Commençons par les bonnes choses

    Marmy a écrit :

    Hmmm...ca commence bien (géniale ton interfacce d'ailleurs)

    Merci !

    Les autres... (moins agréables) !

    L'erreur c'est ok, mais où est-elle exactement (sur quelle ligne) ?

    Je pense (comme çà, là tout de suite, sans aucune réflexion particulière) qu'il doit s'agir d'un problème sur le CSV

    Je veux dire par là "le fichier n'est pas tout fait conforme" à ce que l'on imaginait ! c'est souvent comme çà avec ces bestioles ! mais "çà me fait pas tant rire que ça" !

    quand je fait debug, il me met un point d'arret sur

     tabCsv(colCsv) = tmpCsv

    la valeur de colCsv est à 119

    si tu le souhaite je peux surement t'envoyer un extrait un fichier csv par mail dès demain.

    Merci pour ton aide en tout cas

    (re)

    Qu'Est-ce que je disais déjà ? Ces bestioles là elles font ce qu'elles veulent, c'est ça

    Non sérieusement je ne vois pas d'autre solution que de tester "in-situ", j'attends donc ton CSV dès que possible !

    Rechercher des sujets similaires à "lecture fichier"