OVH Cloud OVH Cloud

Requête création de table - paramétrer le nom de la table

3 réponses
Avatar
René Delcourt
Bonjour,

Comment peut-on générer automatiquement un nom de table qui pourrait changer
en fonction de la date par exemple.
Je voudrais, le 7/6/05, qu'à l'exécution de la requête création, il nomme la
table TABLE070605; au lancement suivant, le lendemain la table créée de
nommerait Table080605 etc...
Vous voyez ce que je veux dire?
Merci de votre clairvoyance.
--
René Delcourt

3 réponses

Avatar
Gafish
Bonjour,

René Delcourt wrote:
Comment peut-on générer automatiquement un nom de table qui pourrait
changer en fonction de la date par exemple.
Je voudrais, le 7/6/05, qu'à l'exécution de la requête création, il
nomme la table TABLE070605; au lancement suivant, le lendemain la
table créée de nommerait Table080605 etc...


Avant de répondre directement, j'aurai une petite question. Quel est
l'interêt de multiplier les tables ? Cela rique de ne pas être pratique
suivant l'utilisation que tu en fais ensuite. Ne serait-il pas mieux d'avoir
une table avec un champ date où tu viens ajouter tes enregistrements tous
les jours, en mettant la date.

Arnaud
--
Charte du forum : http://users.skynet.be/mpfa/
Recherche dans les archives :
http://groups.google.fr/group/microsoft.public.fr.access?hl=fr

Avatar
René Delcourt
Oui, effectivement, je retiens cette possibilité.
Cependant j'aimerais découvrir la procédure pour y arriver.
Merci
--
René Delcourt



Bonjour,

René Delcourt wrote:
Comment peut-on générer automatiquement un nom de table qui pourrait
changer en fonction de la date par exemple.
Je voudrais, le 7/6/05, qu'à l'exécution de la requête création, il
nomme la table TABLE070605; au lancement suivant, le lendemain la
table créée de nommerait Table080605 etc...


Avant de répondre directement, j'aurai une petite question. Quel est
l'interêt de multiplier les tables ? Cela rique de ne pas être pratique
suivant l'utilisation que tu en fais ensuite. Ne serait-il pas mieux d'avoir
une table avec un champ date où tu viens ajouter tes enregistrements tous
les jours, en mettant la date.

Arnaud
--
Charte du forum : http://users.skynet.be/mpfa/
Recherche dans les archives :
http://groups.google.fr/group/microsoft.public.fr.access?hl=fr






Avatar
Eric
Bonjour René,

Pour info :
Je crois qu'il faut que tu passes par du VBA dans lequel tu définis le
sql de création de table et l'exécute.

Le code serait le suivant (Access2k et + pour la fonction REPLACE):
Sub zz1()
Dim strSQL As String, txtDate As String
txtDate = CStr(Replace(Date, "/", ""))
strSQL = "Select * INTO TABLE" & txtDate
strSQL = strSQL & " from LaTableACopier"
CurrentDb.Execute strSQL
End Sub

mais tes tables vont être nommées comme suit :
TABLE07062005 puis TABLE08062005 le 1er juillet ca donnera :
TABLE01072005. Or les tables s'affichent dans la fenêtre de la base de
données dans l'ordre alphabétique donc ca serait mieux de les nommer :
Table20050607, Table20050608, etc...

d'où:
Sub zz2()
Dim strSQL As String, txtDate As String
txtDate = Right(Date, 4) & Mid(Date, 4, 2) & Left(Date, 2)
strSQL = "Select * INTO TABLE" & txtDate
strSQL = strSQL & " from LaTableACopier"
CurrentDb.Execute strSQL
End Sub

(Ce code peut-être écrit sur un évènement click d'un bouton par exemple)
--
A+
Eric
Un petit tour ici : http://users.skynet.be/mpfa/
Accès aux archives :
http://groups.google.fr/group/microsoft.public.fr.access?hl=fr

Oui, effectivement, je retiens cette possibilité.
Cependant j'aimerais découvrir la procédure pour y arriver.
Merci