l'écran bouge sans arrêt! je ne peux pâs taper...
c'est énervant...
l'écran bouge sans arrêt! je ne peux pâs taper...
c'est énervant...
peux ton avoir une requête Ajout, qui s'appuie sur un fichier attendu
(genre corbeille d'arrivée) ou par l'import ?
je ne sais pas vraiment expliquer cela
un fichier en entrée (formaté pour être pris en compte comme une requête ajout)...
mais qui arrive périodiquement pour être traité...
peut-on faire ceci par Access ?
c'est à dire ( àmon sens) par une exécution d'une tache qui lance le programme ou la Macro Access ?
je vous remercie...
Salut;
Je suis pas sur d'avoir compris ton problème....
Un fichier sous forme txt, xls.... peut être lié en table attachée.
Avec la requête ajout ainsi qu'une macro appelée Autoexec pour l'executer à l'ouverture de la base, le tour est joué...
ce n'est pas à l'ouverture de la base,
mais en tache planifiable.... qu'il faudrait, donc,
par une Macro 'Ajout' ajouter les enregistrements d'un fichier .txt,
cela je comprends...
tu me dis: une table liée...je vais voir cela ?
je suis débutant zéro en Accès, je me pose dabord la faisabilité du pb....
donc en entré un fichier txt qui 'arrive' de temps à autre dans un répertoire (corbeille départ ...disons)
puis traitement à temps X, X+n...d'une ?tache?Macro externe à Accès?MAcro Accès...ché pas bien là...
qui 'joue' l'Ajout des données dans la base Accès...
puis une autre fonctionnalité qui copie ce fichier dans un répertoir arrivée, et supprime celui de départ, pour ne pas rejouer ce fichier...
c'est cette <Tache de lancement de quoi> qui peut faire cela ?
la requête 'Ajout' semble interne à Accès (puisque lors d'un Autoexec, à l'ouverture d'Accès ou de la Base?
voiloù, un peu mon problème général d'abord...
Cordialement
Salut
je suis un peu comme Fifi69 c'est à dire que j'ai du mal a comprendre exactement ce que tu veux . Donc on va reprendre et essais de donner les etapes :
- 1. D'abord tu veux qu'un fichier texte present dans un repertoire soit importé sous access pr créer une table : ça c'est possible!
- 2. Tu veux ensuite que le fichier soit supprimé et/ou copié ds un autre répertoire : possible aussi
- 3. A toi de poursuivre plus précisement...
Podz
oui, c'est l'import d'un fichier texte
mais pour ajouter des enregistrements à une table (pas créer une table!)
si on fait cela à la main, je crois quon dois passer par une requête Ajout (non?)
le but est d'avoir une automatisation de cet 'import-Ajout'...?!
le fichier vient d'une autre application (des demandes de prélèvements)
c fichier doit 'être' importé dans la base, à partir du moment donné (par exemple toute les heures)...
si il ya qqchose dans le répertoire X, on le traite (import-Ajout)...
puis on le déplace dans un autre répertoire 'déjà traité'...
c'est mieux ?!
Re
Ok c'est dejà plus clair pour moi
Pour ce qui est d'ajouter, à partir de ton fichier, des enregistrements à une table existante je n'ai jamais fait mais il doit exister une solution. Fais qqs recherches sur le forum et je suis sur que tu vas trouver ton bonheur.
Apres tu peux utiliser une tache planifiée qui lance ton appli ttes les heures par exemple et qui grace au code traite ton ajout puis copie ton fichier traité vers le repertoire de ton choix.
En esperant t'avoir aidé sur la faisabilité de ton problème...
Podz
Merci, j'ai déjà la moitié de 'compris'...
je pense pourtant que ce nest pas un besoin 'nouveau'...
et n'étant pas expert dans Access, je n'arrive pas à 'démarrer' dans l'analyse de ce que je dois faire...
je continue à chercher mais j'ai peu d'espoir de trouver
le 'comment' faire de ce besoin.
merci, quand même à ceux qui ont essayer de m'aider.
Salut,
Si j'ai bine compris il faudrait faire ceci
1 - Lancer par tache planifié ta base
2 - Il faut créer une macro AutoExe qui va lancer une Fonction VBA (Executer code), la macro se lancera automatiquement lors de l'ouverture de ta base
3 - La fonction VBA testera l'existence de ton fichier
4 - Elle transfera le fichier dans une table temporaire avec toute tes données (voir la syntaxe de Docmd.TrasfertText)
4 - Ensuite elle lancera une requête d'ajout dans ta table définitive
5 - Tu effaces les données de la table temporaire
6 - Tu copie ton fichier txt dans un répertoire de sauvegarde, et tu l'effaces de ton premier répertoire
7 - Tu fermes ta base à la fin de la macro
Je pense que ce cheminement peut t'aider
Starec
je manque de pratique en Access (je m'y suis mis il y a une semaine !)
donc je ne sais pas faire...
1 - Lancer par tache planifié ta base ...?comment ?
c'est un exécutable ? du genre bd1.mdb en tache planifiée ?
2 - Il faut créer une macro AutoExe qui va lancer une Fonction VBA (Executer code), la macro se lancera automatiquement lors de l'ouverture de ta base
j'ai tenté de faire cela, je n'y arrive pas...
macro de AUTOEXEC: j'ai 'pris' ce qui me semblait utile ?!
ouvrir requete
exécuter Commande
fermer
j'avais fait une 'requete Ajout' selon l'aide en ligne...
et l'ai enregistrée sous AutoExec
comme je n'ai pas encore trouvé comment 'enregistrer' le fichier txt d'import dans la table 'temporaire', j'ai créé la table à l'identique de celle à charger...
à la main cela marche (la requete Ajout prend bien les enregistrements de table 'tempo'-double vers table finale...
mais en Autoexec, j'ai une erreur 181...et pourtant l'enregistrement s'ajoute quand m^me ?!
3 - La fonction VBA testera l'existence de ton fichier ...
j'ai vu à un moment çà sur la Faq, je m'y replongerai pour retrouver ce 'morceau'...
4 - Elle transfera le fichier dans une table temporaire avec toute tes données (voir la syntaxe de Docmd.TrasfertText)
çà j'ai pas encore une vision de comment faire ?j'ai un fichier texte, avec séparateur par exemple qui va se retrouver 'en table', c'est çà ?
il y a une instruction qui fait cela ? c'est un import ?
peut-on déclencher un Import par une macro ?
si on peu alors, ai-je besoin de passer par une table intermédiaire ?
pourquoi ne pas prendre directement les enregistrements en 'import' d'un fichier texte ?...je ne comprends pas bien....
le reste est encore loin pour moi...
je vais creuser un peu plus tes recommandations...
et surtout essayer de trouver le Code !?
Amicalement....
3 - La fonction VBA testera l'existence de ton fichier
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager