Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

importation incrémentielle de données

18 réponses
Avatar
Misange
Hello,
J'ai un petit problème :
j'exporte depuis un autre logiciel un fichier texte comportant des
données tabulées.
Ces données commencent toujours sur chaque ligne par un nombre (en ordre
croissant mais pas forcément continu) et quelques champs, toujours
remplis et toujours les mêmes.
exemple :
75 09/10/2007 22,93 2,19 FO 32 OUI
77 10/10/2007 29,31 4,80 FO 23 OUI
78 16/10/2007 1643,89 269,40 FO 19 NON
79 16/10/2007 47,11 7,72 FO 23 OUI

Pas de problème pour les importer dans excel et les traiter.

Ces données évoluent
La nouvelle table exportée contient
a)des lignes identiques aux précédentes ==> garder les anciennes (ou les
nouvelles peu importe)
b) des lignes presque identiques ==> remplacer les anciennes par les
nouvelles
par exemple
78 16/10/2007 1643,89 269,40 FO 19 NON
devient
78 16/10/2007 1643,89 269,40 FO 19 OUI

c)de nouvelles lignes ==> les ajouter
et surtout, ce qui me pose un problème c'est que la nouvelle table ne
contient plus certaines lignes qui doivent être conservées

Comment définir une requête pour que après actualisation, toutes les
lignes sont conservées, les anciennes mises à jour et les nouvelles
ajoutées ? J'ai l'impression que je dois passer à côté d'un truc...

merci du coup de main

--
Misange migrateuse
http://www.excelabo.net : Participez à un travail collaboratif sur excel !

10 réponses

1 2
Avatar
isabelle
hello misange,

une suggestion :
-ajouter une colonne date de création de la requete pour différencier
les lignes presque identiques pour ne garder que la derniere.
- compter le nombre de valeur de la colonne A pour vérifier le nombre
d'enregistrement de chaque séquence (vérifier si unique ou non)

isabelle

Misange a écrit :
Hello,
J'ai un petit problème :
j'exporte depuis un autre logiciel un fichier texte comportant des
données tabulées.
Ces données commencent toujours sur chaque ligne par un nombre (en
ordre croissant mais pas forcément continu) et quelques champs,
toujours remplis et toujours les mêmes.
exemple :
75 09/10/2007 22,93 2,19 FO 32 OUI
77 10/10/2007 29,31 4,80 FO 23 OUI
78 16/10/2007 1643,89 269,40 FO 19 NON
79 16/10/2007 47,11 7,72 FO 23 OUI

Pas de problème pour les importer dans excel et les traiter.

Ces données évoluent
La nouvelle table exportée contient
a)des lignes identiques aux précédentes ==> garder les anciennes (ou
les nouvelles peu importe)
b) des lignes presque identiques ==> remplacer les anciennes par les
nouvelles
par exemple
78 16/10/2007 1643,89 269,40 FO 19 NON
devient
78 16/10/2007 1643,89 269,40 FO 19 OUI

c)de nouvelles lignes ==> les ajouter
et surtout, ce qui me pose un problème c'est que la nouvelle table ne
contient plus certaines lignes qui doivent être conservées

Comment définir une requête pour que après actualisation, toutes les
lignes sont conservées, les anciennes mises à jour et les nouvelles
ajoutées ? J'ai l'impression que je dois passer à côté d'un truc...

merci du coup de main



Avatar
Misange
Salut mon ange
Mon problème n'est pas de faire cela manuellement mais de façon
automatique car j'ai une dizaine de tables à traiter de la sorte
plusieurs fois par mois.
Jusque là je faisais cela simplement avec une requête externe sur un
fichier texte mais je me suis rendue compte que depuis 15 jours, suite à
une erreur de manip, mon logiciel de départ a éliminé certaines lignes
dans ses exportations et je ne peux absolument plus modifier cela à ce
niveau. J'ai encore les bons fichiers d'exportations et mon problème
maintenant c'est de faire en sorte qu'ils se mettent à jour en gardant
ces fameuses lignes.
Je patauge dans query...

--
Misange migrateuse
http://www.excelabo.net : Participez à un travail collaboratif sur excel !
Avatar
isabelle
la base est sur quel logiciel ?
isabelle


Misange a écrit :
Salut mon ange
Mon problème n'est pas de faire cela manuellement mais de façon
automatique car j'ai une dizaine de tables à traiter de la sorte
plusieurs fois par mois.
Jusque là je faisais cela simplement avec une requête externe sur un
fichier texte mais je me suis rendue compte que depuis 15 jours, suite
à une erreur de manip, mon logiciel de départ a éliminé certaines
lignes dans ses exportations et je ne peux absolument plus modifier
cela à ce niveau. J'ai encore les bons fichiers d'exportations et mon
problème maintenant c'est de faire en sorte qu'ils se mettent à jour
en gardant ces fameuses lignes.
Je patauge dans query...



Avatar
Misange
isabelle a écrit :
la base est sur quel logiciel ?
isabelle








C'est un runtime Omnis mais je n'ai pas accès à la structure...

--
Misange migrateuse
http://www.excelabo.net : Participez à un travail collaboratif sur excel !
Avatar
Misange
En fait je crois que si j'arrivais à faire comprendre à query qu'il ne
doit pas tronçonner 1460,22 en 1460 d'un côté et 22 de l'autre ça irait.
J'ai essayé tous les formats d'export auxquels j'ai accès depuis mon
runtime omnis, en utilisant comme séparateur une tabulation, un ;, une ,
rien n'y fait, il me sépare de toutes façons son nombre et ses décimales.
Dans l'aide de query il est dit
Remarque Vous pouvez accéder aux données contenues dans des fichiers
texte sous différents formats, y compris des colonnes séparées par des
espaces, des virgules ou des tabulations. Pour plus d'informations sur
les formats de fichiers texte que vous pouvez utiliser, cliquez dans la
boîte de dialogue Installation ODBC pour des fichiers Texte sur ?.

le problème c'est que je ne trouve pas cette boite et donc pas l'aide
qui va avec...

--
Misange migrateuse
http://www.excelabo.net : Participez à un travail collaboratif sur excel !
Avatar
isabelle
si et tu es interconnecté à un serveur TSE, as tu accès à la machine qui
héberge l'application BFC en Délégation ?
isabelle

Misange a écrit :
isabelle a écrit :
la base est sur quel logiciel ?
isabelle








C'est un runtime Omnis mais je n'ai pas accès à la structure...



Avatar
isabelle
cette boite est au panneau de configuration, Outils d'administration,
Source de données ODBC,
isabelle

Misange a écrit :
En fait je crois que si j'arrivais à faire comprendre à query qu'il ne
doit pas tronçonner 1460,22 en 1460 d'un côté et 22 de l'autre ça irait.
J'ai essayé tous les formats d'export auxquels j'ai accès depuis mon
runtime omnis, en utilisant comme séparateur une tabulation, un ;, une
, rien n'y fait, il me sépare de toutes façons son nombre et ses
décimales.
Dans l'aide de query il est dit
Remarque Vous pouvez accéder aux données contenues dans des fichiers
texte sous différents formats, y compris des colonnes séparées par des
espaces, des virgules ou des tabulations. Pour plus d'informations sur
les formats de fichiers texte que vous pouvez utiliser, cliquez dans
la boîte de dialogue Installation ODBC pour des fichiers Texte sur ?.

le problème c'est que je ne trouve pas cette boite et donc pas l'aide
qui va avec...



Avatar
Misange
isabelle a écrit :
si et tu es interconnecté à un serveur TSE, as tu accès à la machine qui
héberge l'application BFC en Délégation ?
isabelle

Misange a écrit :
isabelle a écrit :
la base est sur quel logiciel ?
isabelle








C'est un runtime Omnis mais je n'ai pas accès à la structure...





non tout est en local, j'ai juste un runtime sur mon PC mais la partie
que j'utilise est indépendante d'un serveur.

--
Misange migrateuse
http://www.excelabo.net : Participez à un travail collaboratif sur excel !
Avatar
Misange
isabelle a écrit :
cette boite est au panneau de configuration, Outils d'administration,
Source de données ODBC,
isabelle

Misange a écrit :
En fait je crois que si j'arrivais à faire comprendre à query qu'il ne
doit pas tronçonner 1460,22 en 1460 d'un côté et 22 de l'autre ça irait.
J'ai essayé tous les formats d'export auxquels j'ai accès depuis mon
runtime omnis, en utilisant comme séparateur une tabulation, un ;, une
, rien n'y fait, il me sépare de toutes façons son nombre et ses
décimales.
Dans l'aide de query il est dit
Remarque Vous pouvez accéder aux données contenues dans des fichiers
texte sous différents formats, y compris des colonnes séparées par des
espaces, des virgules ou des tabulations. Pour plus d'informations sur
les formats de fichiers texte que vous pouvez utiliser, cliquez dans
la boîte de dialogue Installation ODBC pour des fichiers Texte sur ?.

le problème c'est que je ne trouve pas cette boite et donc pas l'aide
qui va avec...





J'ai fini aussi par trouver mais cela ne m'avance guère en fait
voilà devant quoi je me trouve :
http://www.cijoint.fr/cjlink.php?file=cj200904/cijrLfRWSm.png

à croire que le format des données n'est pas reconnu du tout...
http://www.cijoint.fr/cjlink.php?file=cj200904/cijrLfRWSm.png

D'ici que je fasse d'abord une importation texte banale dans un classeur
excel temporaire puis une importation query dans le classeur d'arrivée,
je sens qu'il n'y a que tout plein de petits pas...

--
Misange migrateuse
http://www.excelabo.net : Participez à un travail collaboratif sur excel !
Avatar
Misange
Salut Denis
Ca ne me convient pas vraiment car je dois faire cela plusieurs fois par
mois sur une dizaine de tables et c'est un peu fastidieux...
Je vais commencer (recommencer plutot) par regarder si c'est mon fichier
de départ qui pose un problème.

--
Misange migrateuse
http://www.excelabo.net : Participez à un travail collaboratif sur excel !
MichDenis a écrit :
Bonjour Misange,

Voici une façon de faire en utilisant Excel seulement.

A ) ajouter toutes les données de ton fichier texte
à la suite de tes données dans ta feuille où sont les autres.

B ) à l'extrême droite de ton tableau des données, tu ajoutes
une colonne dans laquelle tu inscris une valeur incrémentée
par ligne de 1 à X. (cette colonne est là pour te permettre de
retrouver l'ordre dans lequel étaient tes données à la fin de
la macro.

C ) Trier tout le tableau en ordre décroissant en utilisant la colonne
que l'on vient d'ajouter

D ) Utiliser le filtre élaboré sur la première colonne des 75 77 78.
L'objectif de ce filtre est d'identifier les lignes où il y a des doublons
suite à l'ajout de la nouvelle liste. Le doublon représente la mise à jour
qu'il faut faire de la donnée existante.
Lors d'un filtre élaboré sans doublon, il faut savoir qu'Excel retient comme
entrée, la première ligne rencontrée du doublon pour l'affichage du résultat
à la fin du filtre. Comme nous avons renversé l'ordre de présentation des
données par le tri décroissant, l'affichage des lignes du filtre élaboré devrait
te donner seulement les lignes dont tu veux conserver le résultat (ce sont
les lignes de mise à jour). Il s'agit de copier le résultat vers une nouvelle
feuille.
E ) dans un second filtre élaboré sur les mêmes données, on utilise comme
critère une formule du genre : =Nb.Si(A1:Ax;A2)=1 pour éviter de tenir
comme des entrées en double. On ajoute le résultat de ce filtre aux autres
données que l'on a copiées dans la feuille.

F ) il ne reste plus qu'à trier les données de la nouvelle feuille en utilisant
la colonne que l'on a ajoutée au tout début.

G ) Si tes fichiers sont réunis dans un même répertoire, on peut créer
une procédure pour traiter tous ces fichiers dans la même sub.

Est-ce que cela te conviendrait comme approche ?





1 2