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

Importation base a nom variable

4 réponses
Avatar
Bubu
Bonjour,

Pour alimenter ma base de donnée access, j'ai besoin d'importer
régulièrement les données d'une base extérieure qui tourne en dbase IV. Je
souhaite donc automatiser cette importation mais le nom du fichier DBase à
importer change tous les mois puisqu'il s'appelle "LIMmmaa", où mm = mois et
aa = deux derniers chiffre de l'année considérée. Mon objectif est, à chaque
importation, de créer une nouvelle table portant le nom du fichier Dbase
d'origine, soit LIMmmaa. Autre précision, la valeur de mm et aa serait
précisée dans un formulaire dans lequel l'utilisateur saisirait la valeur de
mm et aa pour qu'il puisse importer les données qui l'intéressent. J'ai
essayé avec une macro mais les macros sont trop rigides pour que je puisse y
intégrer des variables comme critère. Quelqu'un peut il me donner la
procédure en VBA svp ?
Merci d'avance

4 réponses

Avatar
Raymond [mvp]
Bonsoir.

pour former ton nom de fichier tu peux faire:
LenomduFichier = "LIM" & Format(Date, "mm") & Format(Date, "yy")

--
@+
Raymond Access MVP http://OfficeSystem.Access.free.fr/
Pour débuter sur le forum: http://www.mpfa.info/
Nouvelle base Access des communes françaises avec
longitude, latitude et 13183 sites internet officiels
http://ardecheearth.free.fr/basededonnees.htm


"Bubu" a écrit dans le message de news:

| Bonjour,
|
| Pour alimenter ma base de donnée access, j'ai besoin d'importer
| régulièrement les données d'une base extérieure qui tourne en dbase IV. Je
| souhaite donc automatiser cette importation mais le nom du fichier DBase à
| importer change tous les mois puisqu'il s'appelle "LIMmmaa", où mm = mois
et
| aa = deux derniers chiffre de l'année considérée. Mon objectif est, à
chaque
| importation, de créer une nouvelle table portant le nom du fichier Dbase
| d'origine, soit LIMmmaa. Autre précision, la valeur de mm et aa serait
| précisée dans un formulaire dans lequel l'utilisateur saisirait la valeur
de
| mm et aa pour qu'il puisse importer les données qui l'intéressent. J'ai
| essayé avec une macro mais les macros sont trop rigides pour que je puisse
y
| intégrer des variables comme critère. Quelqu'un peut il me donner la
| procédure en VBA svp ?
| Merci d'avance
Avatar
Bubu
Re-bonjour Raymond,
et encore merci de ton aide,
En fait ce dont j'ai besoin, car je ne maitrise pas du tout le vba, c'est de
la ligne de code qui permette d'importer une table dbase avec un nom qui
change dans le temps mais je veux pouvoir récupérér n'importe quelle table
dans le temps indépendemment de la date à laquelle je fais mon importation.
C'est pourquoi je souhaite préciser les mois et année qui m'intéressent dans
un formulaire, préalablement à l'importation. Pour tenter d'être plus clair,
j'ai essayé de faire qqchose en traduisant une macro en vba. Ca donne ça :

DoCmd.TransferDatabase acImport, "dBase IV", "F:DIVILIM", acTable, "LIM",
"LIMVENT2", False

Ce qui me manque c'est la syntaxe pour remplacer "LIM" par qqchose du genre
"LIM" & Champ1_MonFormulaire & Champ2_MonFormulaire.

Je ne sais pas si j'ai été très claire, mais je l'espère. Merci
Bubu



Bonsoir.

pour former ton nom de fichier tu peux faire:
LenomduFichier = "LIM" & Format(Date, "mm") & Format(Date, "yy")

--
@+
Raymond Access MVP http://OfficeSystem.Access.free.fr/
Pour débuter sur le forum: http://www.mpfa.info/
Nouvelle base Access des communes françaises avec
longitude, latitude et 13183 sites internet officiels
http://ardecheearth.free.fr/basededonnees.htm


"Bubu" a écrit dans le message de news:

| Bonjour,
|
| Pour alimenter ma base de donnée access, j'ai besoin d'importer
| régulièrement les données d'une base extérieure qui tourne en dbase IV. Je
| souhaite donc automatiser cette importation mais le nom du fichier DBase à
| importer change tous les mois puisqu'il s'appelle "LIMmmaa", où mm = mois
et
| aa = deux derniers chiffre de l'année considérée. Mon objectif est, à
chaque
| importation, de créer une nouvelle table portant le nom du fichier Dbase
| d'origine, soit LIMmmaa. Autre précision, la valeur de mm et aa serait
| précisée dans un formulaire dans lequel l'utilisateur saisirait la valeur
de
| mm et aa pour qu'il puisse importer les données qui l'intéressent. J'ai
| essayé avec une macro mais les macros sont trop rigides pour que je puisse
y
| intégrer des variables comme critère. Quelqu'un peut il me donner la
| procédure en VBA svp ?
| Merci d'avance





Avatar
Raymond [mvp]
Remplace "LIM" par

"LIM" & Forms!MonFormulaire!Champ1 & Forms!MonFormulaire!Champ2

--
@+
Raymond Access MVP http://OfficeSystem.Access.free.fr/
Pour débuter sur le forum: http://www.mpfa.info/
Nouvelle base Access des communes françaises avec
longitude, latitude et 13183 sites internet officiels
http://ardecheearth.free.fr/basededonnees.htm


"Bubu" a écrit dans le message de news:

| Re-bonjour Raymond,
| et encore merci de ton aide,
| En fait ce dont j'ai besoin, car je ne maitrise pas du tout le vba, c'est
de
| la ligne de code qui permette d'importer une table dbase avec un nom qui
| change dans le temps mais je veux pouvoir récupérér n'importe quelle table
| dans le temps indépendemment de la date à laquelle je fais mon
importation.
| C'est pourquoi je souhaite préciser les mois et année qui m'intéressent
dans
| un formulaire, préalablement à l'importation. Pour tenter d'être plus
clair,
| j'ai essayé de faire qqchose en traduisant une macro en vba. Ca donne ça :
|
| DoCmd.TransferDatabase acImport, "dBase IV", "F:DIVILIM", acTable, "LIM",
| "LIMVENT2", False
|
| Ce qui me manque c'est la syntaxe pour remplacer "LIM" par qqchose du
genre
| "LIM" & Champ1_MonFormulaire & Champ2_MonFormulaire.
|
| Je ne sais pas si j'ai été très claire, mais je l'espère. Merci
| Bubu
Avatar
Bubu

Remplace "LIM" par

"LIM" & Forms!MonFormulaire!Champ1 & Forms!MonFormulaire!Champ2


Super, ça marche impec ! Merci beaucoup.