Je suis nouveau en VBA et j'aimerais savoir s'il est possible de faire une fonction VBA qui agirait de façon similaire à une fonction SQL.
Voici ce que je cherche à faire:
Function getAnnees(annee As Integer) As ??<- retourne une table Access
Table.Column(0).Name = "Annees" Do While annee< year(getDate()) + 1 Table.Row.Add() = year year = year + 1 Loop Returns Table
End Function
Maintenant, en utilisant une requête Access du genre :
SELECT getAnnees(2008)
J'aimerai obtenir une table comme celle-ci : |Annees rangée 1 | 2008 rangée 2 | 2009 rangée 3 | 2010
Merci beaucoup à tous
Bonjour,
Regarde si il y a des idées à prendre là :
http://support.microsoft.com/kb/186133/fr
orange
Bonjour,
Ma question n'est peut-être pas complète.
Pour préciser, j'ai toujours travaillé avec SQL Server et pour ce projet, je dois travailler uniquement avec MS Access 2007. Je cherche donc une façon de reproduire des fonctions SQL Server en Access, en me disant qu'en utlisant le VBA, j'y arriverais peut-être, mais je ne connais pas le VBA.
À travers tout ça, mon objectif final est d'arriver à faire des requêtes Access SQL avec JOIN entre tables de ma base de données Access et fonctions VBA comprise dans des modules de cette même base de données.
Est-ce possible?
Merci
Bonjour,
Ma question n'est peut-être pas complète.
Pour préciser, j'ai toujours travaillé avec SQL Server et pour ce
projet, je dois travailler uniquement avec MS Access 2007. Je cherche
donc une façon de reproduire des fonctions SQL Server en Access, en me
disant qu'en utlisant le VBA, j'y arriverais peut-être, mais je ne
connais pas le VBA.
À travers tout ça, mon objectif final est d'arriver à faire des
requêtes Access SQL avec JOIN entre tables de ma base de données
Access et fonctions VBA comprise dans des modules de cette même base
de données.
Pour préciser, j'ai toujours travaillé avec SQL Server et pour ce projet, je dois travailler uniquement avec MS Access 2007. Je cherche donc une façon de reproduire des fonctions SQL Server en Access, en me disant qu'en utlisant le VBA, j'y arriverais peut-être, mais je ne connais pas le VBA.
À travers tout ça, mon objectif final est d'arriver à faire des requêtes Access SQL avec JOIN entre tables de ma base de données Access et fonctions VBA comprise dans des modules de cette même base de données.
Est-ce possible?
Merci
blaise cacramp
Bonjour Mathieu
Il me semble que des *requêtes* SQL Server devraient pouvoir être strictement pareilles en Access. Ce n'est pas le cas dans la programmalilté où le VBA ... oui. Mais la fonction (ou procédure) ne va pas te retourner une table : elle va la construire ou la mettre à jour.
Le VBA ne devrait pas être trop compliqué pour quelqu'un qui programme en T-SQL
Cdt, Blaise
"orange" a écrit dans le message de news:
Bonjour,
Ma question n'est peut-être pas complète.
Pour préciser, j'ai toujours travaillé avec SQL Server et pour ce projet, je dois travailler uniquement avec MS Access 2007. Je cherche donc une façon de reproduire des fonctions SQL Server en Access, en me disant qu'en utlisant le VBA, j'y arriverais peut-être, mais je ne connais pas le VBA.
À travers tout ça, mon objectif final est d'arriver à faire des requêtes Access SQL avec JOIN entre tables de ma base de données Access et fonctions VBA comprise dans des modules de cette même base de données.
Est-ce possible?
Merci
Bonjour Mathieu
Il me semble que des *requêtes* SQL Server devraient pouvoir être
strictement pareilles en Access.
Ce n'est pas le cas dans la programmalilté où le VBA ... oui.
Mais la fonction (ou procédure) ne va pas te retourner une table : elle va
la construire ou la mettre à jour.
Le VBA ne devrait pas être trop compliqué pour quelqu'un qui programme en
T-SQL
Cdt,
Blaise
"orange" <cm.mathieu@gmail.com> a écrit dans le message de news:
4046c7b7-8d9a-41a7-81af-84e93ba9df9e@w18g2000vbe.googlegroups.com...
Bonjour,
Ma question n'est peut-être pas complète.
Pour préciser, j'ai toujours travaillé avec SQL Server et pour ce
projet, je dois travailler uniquement avec MS Access 2007. Je cherche
donc une façon de reproduire des fonctions SQL Server en Access, en me
disant qu'en utlisant le VBA, j'y arriverais peut-être, mais je ne
connais pas le VBA.
À travers tout ça, mon objectif final est d'arriver à faire des
requêtes Access SQL avec JOIN entre tables de ma base de données
Access et fonctions VBA comprise dans des modules de cette même base
de données.
Il me semble que des *requêtes* SQL Server devraient pouvoir être strictement pareilles en Access. Ce n'est pas le cas dans la programmalilté où le VBA ... oui. Mais la fonction (ou procédure) ne va pas te retourner une table : elle va la construire ou la mettre à jour.
Le VBA ne devrait pas être trop compliqué pour quelqu'un qui programme en T-SQL
Cdt, Blaise
"orange" a écrit dans le message de news:
Bonjour,
Ma question n'est peut-être pas complète.
Pour préciser, j'ai toujours travaillé avec SQL Server et pour ce projet, je dois travailler uniquement avec MS Access 2007. Je cherche donc une façon de reproduire des fonctions SQL Server en Access, en me disant qu'en utlisant le VBA, j'y arriverais peut-être, mais je ne connais pas le VBA.
À travers tout ça, mon objectif final est d'arriver à faire des requêtes Access SQL avec JOIN entre tables de ma base de données Access et fonctions VBA comprise dans des modules de cette même base de données.
Est-ce possible?
Merci
orange
Merci Blaise,
Est-ce que tu sais s'il y a moyen de faire une boucle avec paramètres dans une reAccess 2007?
Merci Blaise,
Est-ce que tu sais s'il y a moyen de faire une boucle avec paramètres
dans une reAccess 2007?
Est-ce que tu sais s'il y a moyen de faire une boucle avec paramètres dans une reAccess 2007?
Tiens, ça, je ne savais pas ...
blaise cacramp
non, ce n'est pas possible "orange" a écrit dans le message de news:
Merci Blaise,
Est-ce que tu sais s'il y a moyen de faire une boucle avec paramètres dans une reAccess 2007?
non, ce n'est pas possible
"orange" <cm.mathieu@gmail.com> a écrit dans le message de news:
58d8fa1e-50e3-4cc1-ba96-6c7c51cd6449@z19g2000yqb.googlegroups.com...
Merci Blaise,
Est-ce que tu sais s'il y a moyen de faire une boucle avec paramètres
dans une reAccess 2007?
PARAMETERS [Saisir l'année de départ] LONG; SELECT "rangée " & T.id AS Champ, [Saisir l'année de départ]+T.id AS ValAnnee FROM tmp AS T WHERE [Saisir l'année de départ]+T.id<=Year(Date());
Bonjour,
orange a écrit :
Merci Blaise,
Est-ce que tu sais s'il y a moyen de faire une boucle avec paramètres
dans une reAccess 2007?
Je ne sais pas ce que tu veux faire mais avec l'intermédiaire d'une table
existante tu pourrais faire ceci :
Soit la table existante [tmp] qui contient le champ [id] avec les valeurs de 1 à 9
Ensuite avec la requête suivante et saisie de la valeur 2008 tu obtiendrais :
PARAMETERS [Saisir l'année de départ] LONG;
SELECT "rangée " & T.id AS Champ, [Saisir l'année de départ]+T.id AS ValAnnee
FROM tmp AS T
WHERE [Saisir l'année de départ]+T.id<=Year(Date());
PARAMETERS [Saisir l'année de départ] LONG; SELECT "rangée " & T.id AS Champ, [Saisir l'année de départ]+T.id AS ValAnnee FROM tmp AS T WHERE [Saisir l'année de départ]+T.id<=Year(Date());
orange
Merci Michel,
Il semble que je n'ai pas le choix de me construire des tables temporaires alors. Ta suggestion me donne une piste. Je vais regarder pour monter des tables temporaires qui se mettent systématiquement à avec des genres de trigger VBA et je travaillerai avec ces tables. J'aurais mieux voulu éviter ça, mais il semble qu'il n'y a pas d'autre solution. A moins qu'il y a une autre base de données de type MS Access qui offre cette possibilité? Est-ce que vous en connaissez?
Orange.
Merci Michel,
Il semble que je n'ai pas le choix de me construire des tables
temporaires alors. Ta suggestion me donne une piste. Je vais regarder
pour monter des tables temporaires qui se mettent systématiquement à
avec des genres de trigger VBA et je travaillerai avec ces tables.
J'aurais mieux voulu éviter ça, mais il semble qu'il n'y a pas d'autre
solution. A moins qu'il y a une autre base de données de type MS
Access qui offre cette possibilité? Est-ce que vous en connaissez?
Il semble que je n'ai pas le choix de me construire des tables temporaires alors. Ta suggestion me donne une piste. Je vais regarder pour monter des tables temporaires qui se mettent systématiquement à avec des genres de trigger VBA et je travaillerai avec ces tables. J'aurais mieux voulu éviter ça, mais il semble qu'il n'y a pas d'autre solution. A moins qu'il y a une autre base de données de type MS Access qui offre cette possibilité? Est-ce que vous en connaissez?
Orange.
Michel__D
Bonjour,
orange a écrit :
Merci Michel,
Il semble que je n'ai pas le choix de me construire des tables temporaires alors. Ta suggestion me donne une piste. Je vais regarder pour monter des tables temporaires qui se mettent systématiquement à avec des genres de trigger VBA et je travaillerai avec ces tables. J'aurais mieux voulu éviter ça, mais il semble qu'il n'y a pas d'autre solution. A moins qu'il y a une autre base de données de type MS Access qui offre cette possibilité? Est-ce que vous en connaissez?
A part le SQL Server je ne vois pas.
Concernant ma suggestion, c'étais pour ne pas utiliser le VBA, maintenant si tu dois utiliser le VBA, tu n'a pas besoin de table existante temporaire.
Tu crée pratiquement ce que tu veux en VBA.
Bonjour,
orange a écrit :
Merci Michel,
Il semble que je n'ai pas le choix de me construire des tables
temporaires alors. Ta suggestion me donne une piste. Je vais regarder
pour monter des tables temporaires qui se mettent systématiquement à
avec des genres de trigger VBA et je travaillerai avec ces tables.
J'aurais mieux voulu éviter ça, mais il semble qu'il n'y a pas d'autre
solution. A moins qu'il y a une autre base de données de type MS
Access qui offre cette possibilité? Est-ce que vous en connaissez?
A part le SQL Server je ne vois pas.
Concernant ma suggestion, c'étais pour ne pas utiliser le VBA, maintenant
si tu dois utiliser le VBA, tu n'a pas besoin de table existante temporaire.
Il semble que je n'ai pas le choix de me construire des tables temporaires alors. Ta suggestion me donne une piste. Je vais regarder pour monter des tables temporaires qui se mettent systématiquement à avec des genres de trigger VBA et je travaillerai avec ces tables. J'aurais mieux voulu éviter ça, mais il semble qu'il n'y a pas d'autre solution. A moins qu'il y a une autre base de données de type MS Access qui offre cette possibilité? Est-ce que vous en connaissez?
A part le SQL Server je ne vois pas.
Concernant ma suggestion, c'étais pour ne pas utiliser le VBA, maintenant si tu dois utiliser le VBA, tu n'a pas besoin de table existante temporaire.