Accueil > Forum > > > > Suppression de lignes dasn *.TXT sans Input et Output
Suppression de lignes dasn *.TXT sans Input et Output
lundi 15 octobre 2001 à 14:40:11 |
Suppression de lignes dasn *.TXT sans Input et Output

Seb
|
Voici mon problème. J'ai un fichier texte actuellement de 254.000 lignes mais qui va grossir au fur a mesure de l'année. Je dois l'importer dans une table Access, pas de problème (voir messages ci dessous dans me forum ;-) Mais il y a deux lignes au debut qui me plante litteralement mon import de données. Sans ces deux lignes tout va bien mais .. elles sont bien la. J'ai essaye une technique Input TXT Output TXT mais le probleme c'est le traitement cat TOUT le fichier est Inputé et Outputé après sauf les deux fameuses premieres lignes. Environ 30 minutes pour 100.000 enregistrements donc cette technique est impensable à choisir !!! j'ai fouillé dans le forum et à chaque operation de fichier tout le monde conseille cette technique Input Output Mais pour les TTGF (Tres Tres Gros Fichier) comment on peut faire pour supprimer les deux premieres lignes sans pour autant stocker tout le fichier dans une variable. Existe il donc un moyen autre que Input Output ??? Pour info, je suis sous Access97 et mon fichier TXT fait plus de 200.000 lignes a ce jour mais va atteindre + 500.000 lignes fin decembre. Merci davance pour vos reponses, Seb
|
|
lundi 15 octobre 2001 à 15:32:21 |
Re : Suppression de lignes dasn *.TXT sans Input et Output

rafano
|
Et si vous utilisez le macro VBA doCmd.TransfertText .... mais il faut mettre Docmd.SetWarning False avant l'execution, Il va importer toutes les lignes sauf la où il y a erreur. A+
------------------------------- Réponse au message : -------------------------------
Voici mon problème.
J'ai un fichier texte actuellement de 254.000 lignes mais qui va grossir au fur a mesure de l'année.
Je dois l'importer dans une table Access, pas de problème (voir messages ci dessous dans me forum ;-)
Mais il y a deux lignes au debut qui me plante litteralement mon import de données. Sans ces deux lignes tout va bien mais .. elles sont bien la.
J'ai essaye une technique Input TXT Output TXT mais le probleme c'est le traitement cat TOUT le fichier est Inputé et Outputé après sauf les deux fameuses premieres lignes.
Environ 30 minutes pour 100.000 enregistrements donc cette technique est impensable à choisir !!!
j'ai fouillé dans le forum et à chaque operation de fichier tout le monde conseille cette technique Input Output
Mais pour les TTGF (Tres Tres Gros Fichier) comment on peut faire pour supprimer les deux premieres lignes sans pour autant stocker tout le fichier dans une variable.
Existe il donc un moyen autre que Input Output ???
Pour info, je suis sous Access97 et mon fichier TXT fait plus de 200.000 lignes a ce jour mais va atteindre + 500.000 lignes fin decembre.
Merci davance pour vos reponses,
Seb
|
|
lundi 15 octobre 2001 à 16:06:02 |
Re : Suppression de lignes dasn *.TXT sans Input et Output

Seb
|
Tout d'abord merci pour m'avoir repondu :)
Efectivement cela uarait pu etre une alternative mais le probleme n'est pas là mais vient de ces deux lignes.
voici le scheme de mon TXT avec ces deux lignes
bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla
aaaa aaaa aaaa aaaa aaaa aaaa aaaa aaaa aaaa aaaa aaaa aaaa aaaa aaaa aaaa aaaa aaaa aaaa aaaa aaaa aaaa aaaa aaaa aaaa
Bref ces deux lignes ne rentrent pas en compte de la structure tableau de mes donnees et foire le cote "premiere ligne = noms des champs" qui permettrait un import plus rapide.
Il faut vraiment que je supprime ces deux lignes car je ne peux vraiment pas les insérer dans ma base.
Alors si quelqu'un a une soluce car la je suis a nouveaux coince dans mon developpement :(
Merci d avance,
Seb
|
|
lundi 15 octobre 2001 à 16:37:47 |
Re : Suppression de lignes dasn *.TXT sans Input et Output

rafano
|
Dans ce cas, j'utiliserai les input et output # pour lire le fichier X et créer un autre sans les 2 lignes. Je kill l'ancien fichier et renomme le nouveau au nom ancien. Et je fait ensuite l'importation. La création du nouveau fichier va ralentir le traitement certainement. Sinon il faut créer une fonction d'importation. Dans ce cas il ne faut pas utiliser recordset.addnew mais tout de suite créer un requête d'insertion : sSql = "INSERT ..;" et executer par "CurrentDb.Execute sSql" C'est plus rapide que AddNew. A+
------------------------------- Réponse au message : -------------------------------
Tout d'abord merci pour m'avoir repondu :)
Efectivement cela uarait pu etre une alternative mais le probleme n'est pas là mais vient de ces deux lignes.
voici le scheme de mon TXT avec ces deux lignes
bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla
aaaa aaaa aaaa aaaa aaaa aaaa aaaa aaaa aaaa aaaa aaaa aaaa aaaa aaaa aaaa aaaa aaaa aaaa aaaa aaaa aaaa aaaa aaaa aaaa
Bref ces deux lignes ne rentrent pas en compte de la structure tableau de mes donnees et foire le cote "premiere ligne = noms des champs" qui permettrait un import plus rapide.
Il faut vraiment que je supprime ces deux lignes car je ne peux vraiment pas les insérer dans ma base.
Alors si quelqu'un a une soluce car la je suis a nouveaux coince dans mon developpement :(
Merci d avance,
Seb
|
|
lundi 15 octobre 2001 à 23:10:00 |
Re : Suppression de lignes dasn *.TXT sans Input et Output

rafano
|
Une dernière solution sans utiliser output et input c'est de mettre tous les champs de la table de destination en format string et pas de numéric ni de format date. Fixer les longueur des champs, par ex. la date à 10 caractères, etc... Ensuite, faites votre importation avec TransfertText, c-à-d importer toutes les lignes. Une fois l'importation finie, on delete les 2 premières lignes. A+
------------------------------- Réponse au message : -------------------------------
Dans ce cas, j'utiliserai les input et output # pour lire le fichier X et créer un autre sans les 2 lignes. Je kill l'ancien fichier et renomme le nouveau au nom ancien. Et je fait ensuite l'importation. La création du nouveau fichier va ralentir le traitement certainement. Sinon il faut créer une fonction d'importation. Dans ce cas il ne faut pas utiliser recordset.addnew mais tout de suite créer un requête d'insertion : sSql = "INSERT ..;" et executer par "CurrentDb.Execute sSql" C'est plus rapide que AddNew. A+
------------------------------- Réponse au message : -------------------------------
Tout d'abord merci pour m'avoir repondu :)
Efectivement cela uarait pu etre une alternative mais le probleme n'est pas là mais vient de ces deux lignes.
voici le scheme de mon TXT avec ces deux lignes
bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla
aaaa aaaa aaaa aaaa aaaa aaaa aaaa aaaa aaaa aaaa aaaa aaaa aaaa aaaa aaaa aaaa aaaa aaaa aaaa aaaa aaaa aaaa aaaa aaaa
Bref ces deux lignes ne rentrent pas en compte de la structure tableau de mes donnees et foire le cote "premiere ligne = noms des champs" qui permettrait un import plus rapide.
Il faut vraiment que je supprime ces deux lignes car je ne peux vraiment pas les insérer dans ma base.
Alors si quelqu'un a une soluce car la je suis a nouveaux coince dans mon developpement :(
Merci d avance,
Seb
|
|
mardi 16 octobre 2001 à 11:52:38 |
Finalement j'ai prcedé ainsi ... (+code)

Seb
|
Finalement j'ai prcedé ainsi. Vu que les deux premieres lignes du fichier etaient sans importance, j'ai insérer en binaire dans le fichier la ligne des titres avec les Tab et un retour chariot. Ainsi en premiere ligne je retrouve bien mes titres mais ces lignes parasites sont dans ma table. Ce n'est cependant pas si grave car je fais ensuite des requetes de selection dessus et ces lignes ne seront donc pas selectionnées :) Je met mon code ici si ca peut servir a quelqu'un :
Private Sub Commande2_Click()
'//////////////////////////////////////////// '// IMPORTATION FICHIER MARA // '////////////////////////////////////////////
'declaration des variables Dim var As String Dim numfile As Integer
'attribution d'un numero libre de fichier numfile = FreeFile
'****************************************** 'Ecriture de la ligne titre dans le fichier '******************************************
Open "d:\Seb\Mara.txt" For Binary Access Write As #numfile
var = "" & vbTab & "Article" & vbTab & "" & vbTab & "" & vbTab & "Type d'article" & vbTab & "" & vbTab & "" & vbTab & "" & vbTab & "" & vbTab & "" & vbCrLf
Put #numfile, , var
Close #numfile
'******************************************
'****************************** 'Importation du fichier Mara '******************************
'Desactivation des messages d'erreurs DoCmd.SetWarnings False
'Importation selon les paramètres d'import DoCmd.TransferText acImportDelim, "Mara Spécification d'importation", "MARA", "d:\Seb\Mara.txt", True
'******************************
End Sub
|
Voila, c'est du bidouillage mais pour mon projet ca ne posera pas de problemes surtout que j'ai desactive les messages d'erreurs ;) Voila, merci encore de vos suggestions et conseils et à très bientôt, Je lis souvent les messages pour aider les autres ... mais pour l'instant je ne le peux guère. Mais tant que je peux aider, pas de problème. Longue vie à Vb France, Seb
|
|
samedi 13 novembre 2004 à 20:53:37 |
Re : Suppression de lignes dasn *.TXT sans Input et Output

tiborg
|
Salut Seb,
J'ai le meme genre de problematique que toi alors je suis tombé sur cette page.. Je n'arrive pas a gerer les specifications d'importation sous Acces J'ai un fichier texte du genre:
user !role LSTIP !139 RADO !128
Le separateur est "!" mais je n'arrive pas a le prendre en compte dans la fonction : DoCmd.TransferText acImportDelim, "Mara Spécification d'importation", "MARA", "d:\Seb\Mara.txt", True
Comment faire ? Merci d'avance..
Tibo
|
|
samedi 13 novembre 2004 à 20:58:45 |
Re : Suppression de lignes dasn *.TXT sans Input et Output

tiborg
|
J'ai rien dit j'avais oublié les guillemets ! : ))
|
|
mardi 11 janvier 2005 à 14:01:42 |
Re : Suppression de lignes dasn *.TXT sans Input et Output

Maki93
|
"DoCmd.TransferText acImportDelim, "Mara Spécification d'importation", "MARA", "d:\Seb\Mara.txt", True" Salut! Moi j'aimerais savoir comment créer un fichier de spécification d'importation. Ce qui correspond à "Mara Spécification d'importation" c'est quoi exactement et comment je le crée?? J'ai beau avoir parcouru le forum la seule solution que j'ai c'est de transformer mes tabulations en ";" ou "!" ou autre seulement le fichier que je dois importer est envoyé par un prestataire et je ne pense pas qu'ils aient que ça à faire de me transformer les Tab en ";"... Alors?? Une petite solution? Une explication sur les fichiers de spécification? Merci d'avance 
|
|
Cette discussion est classée dans : fichier, input, lignes, txt, output
Répondre à ce message
Sujets en rapport avec ce message
Lire les premieres lignes d'un fichier sans avoir à le charger entièrement? [ par ths ]
Bonjour,Je dois traiter des informations sur environs 2000 fichiers et chaque fichier pese environ 1000 lignesActuellement je charge le fichier entier
renommer un fichier en fonction de son nombre de lignes [ par sabyann ]
Bonjour,J'ai plusieurs fichiers nommés par exemple toto.txt, tata.txt, titi.txt...Par exemple si toto contient 5 lignes, je voudrai que le nombre de l
Lire un fichier txt et l'afficher complet dans un Label [ par Dane6 ]
Bonjour, Pouvez-vous me dire comment lire un fichier Txt dans sa totalité et le stocker dans une variable pour l'afficher dans le Label.Quand j'utilis
Output, input txt [ par rsx602 ]
Bon voila! je fais un petit programme et je veux que quand la form load qui vérifie si la première ligne du TXT = Default , si c'est défaut, Alor msgb
Parcourir fichier texte (.TXT) en VBA [ par sancho12345 ]
[color=red][/color]Bonjour, Je sollicite ENCORE votre aide !!! J’aimerai copier toutes les lignes d’un fichier texte (.TXT) qui commencent par « M
trier un fichier txt [ par pcpunch ]
sltg un fichier txt ou g entrer des donnees avec write, les lignes du fichier txt se presentes comme cela :"titre","resumer","qualite","type","chemin
saut de ligne sur la , dans un input [ par phenojeff ]
Dans mon fichier txt il y a des , et ca fait des saut de lignecomment ne pas faire de saut de ligne sur la ,exe:fichier txt=#DEFINE LED1 PORTA,0 ca
Récupérer X lignes d'un fichier Txt [ par Patrik ]
Bonjour,Je souhaite récupérer les 73 premières lignes de mon fichier Txt (il en compte 75).Comment puis je procéder.Merci à tous ceux et celles qui po
fichier txt et longueur des lignes [ par titoune99 ]
Bonjour,J'ai un fichier txt composé théoriquement de lignes de 400 caractères, je cherche à lire ce fichier et à générer deux fichiers l'un avec les l
Importer un fichier Txt dans un autre fichier Txt avec modification [ par gregnantes ]
Bonjour,Je suis débutant en macro excel.Je dispose d'un fichier texte comprenant 20 000 lignes avec des lignes se répétant (ayant le même identifiant)
Livres en rapport
|
Derniers Blogs
GESTION D'EXCEPTION AVEC LES TASKSGESTION D'EXCEPTION AVEC LES TASKS par richardc
Nous avons vu dans un précédent article comment utiliser Task pour effectuer des opérations dans un autre thread.
Malheureusement, comme tout le monde n'est pas parfait, il se peut que cette exécution se passe mal et qu'une exception se produise.
La...
Cliquez pour lire la suite de l'article par richardc DéMARRONS AVEC LES TASKSDéMARRONS AVEC LES TASKS par richardc
Que vous le vouliez ou non, le développement multi-tâche est maintenant une obligation pour toute nouvelle application. Il est donc vital d'en comprendre les mécanismes et de s'y mettre le plus tôt possible.
En attendant le .NET Framework 4.5 avec le...
Cliquez pour lire la suite de l'article par richardc SLIDE & DéMO TECHDAYS 2012 - FAST & FURIOUS XAML APPSSLIDE & DéMO TECHDAYS 2012 - FAST & FURIOUS XAML APPS par Vko
Retrouvez les slides et les démo de ma session Fast & Furious XAML Apps. A ceux qui se posent la question : "est-ce que le code de la DataGrid est disponible?", je vous répondrais "pas encore". Je vais mettre en place un projet codeplex pour part...
Cliquez pour lire la suite de l'article par Vko XNA IS DEAD!XNA IS DEAD! par richardc
Depuis la semaine dernière (et grâce aux TechDays 2012), je me penche activement sur la nouvelle version de Windows, aka Windows 8. Vous me direz, il était temps puisque la première preview date de Septembre dernier.
OK. Remarquez, on n'en est qu'aux...
Cliquez pour lire la suite de l'article par richardc TECHDAYS PARIS 2012 : WINDOWS SERVER "8" QUOI DE 9 !TECHDAYS PARIS 2012 : WINDOWS SERVER "8" QUOI DE 9 ! par ROMELARD Fabrice
Speakers: Fabrice Meillon et Stanislas Quastana Cette session est basée entièrement sur celle donnée lors de la BUILD cet hiver. Il n'y a pas d'ajout d'information en rapport avec cet évènement passé. Windows 8 Server sera intégralem...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice
Forum
LISTVIEW TAILLELISTVIEW TAILLE par ShayW
Cliquez pour lire la suite par ShayW
Logiciels
DocTranslate (V3.1.0.0)DOCTRANSLATE (V3.1.0.0)DocTranslate est un traducteur de document Microsoft Word, PowerPoint et Excel. Il permet d'autom... Cliquez pour télécharger DocTranslate Tribler (2012)TRIBLER (2012)Tribler est un client pair à pair (P2P/Peer-to-Peer) open source avec la capacité de regarder des... Cliquez pour télécharger Tribler OneSwarm (2012)ONESWARM (2012)Le peer-to-peer qui protège votre vie privée, c'est OneSwarm.
Ce logiciel de peer-to-peer crypté... Cliquez pour télécharger OneSwarm PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO (V8.4)PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO (V8.4)PONAMEDIA TV DEVIENS HELLLOOO FLASH
LA TV SUR VOTRE ORDINATEUR.
Toute une plateforme Multi... Cliquez pour télécharger PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO Academy System (17.2.1.0)ACADEMY SYSTEM (17.2.1.0)Logiciel de gestion des établissements.
- élèves/étudiants (inscription, dossier, absence...)
-... Cliquez pour télécharger Academy System
|