Utilisation Access sous Visual studio 2010 VB [Résolu]

Signaler
Messages postés
3
Date d'inscription
mercredi 27 juin 2012
Statut
Membre
Dernière intervention
13 juillet 2012
-
Messages postés
3
Date d'inscription
mercredi 27 juin 2012
Statut
Membre
Dernière intervention
13 juillet 2012
-
Bonjour à tous et par avance merci pour votre aide.

Je vous expose maintenant mon problème :

J'ai plusieurs bases access contenant des modules qui manipules les données.
Ces modules sont lancé manuellement via différentes formes sur access, ou automatiquement via un executable.

J'ai aujourd'hui besoin de modifier l'executable dont les codes sources sont des .vbp .scc .frm .vbw.
Mon outil de travail : visual studio 2010.
Or impossible de travailler avec le .vbp (non reconnu......). Je souhaite donc faie un update de ce .vbp et retravailler le frm.
Mais les appels à access ne fonctionne pas de la même façon et là je sèche.
Comment adapte-ton le code suivant :


Dim appAccess As Access.Application
Set appAccess = New Access.Application
appAccess.OpenCurrentDatabase "C:\monprogramme.accdb"
appAccess.Run "ProgrammeAuto", "PgmAuto"
appAccess.DoCmd.Close
appAccess.DoCmd.Quit
Set appAccess = Nothing

Merci encore si vous avez une solution à m'apporter (autre que de passer par VB6).....

4 réponses

Messages postés
14733
Date d'inscription
vendredi 14 mars 2003
Statut
Modérateur
Dernière intervention
12 octobre 2020
146
Bonjour,

Tu ne peux pas lancer de Macro à partir de DAO, ADO ou ADO.NET (pour des raisons de sécurité évidentes).

Il faudra que :
- Tu fasse une conversion pour que ton code soit adapté à du .NET.
- Soit, tu changes de système de BDD (pour un MySql, Sql Server, SQLite, ...) plus enclin à faire des procédures stockées SQL.

---------------------------------------------------------------------
[list=ordered][*]Pour poser correctement une question et optimiser vos chances d'obtenir des réponses, pensez à lire le règlement CS, celui-ci pour bien poser votre question ou encore celui-ci pour les PFE et autres exercices.[*]Quand vous postez un code, merci d'utiliser la coloration syntaxique (3ième icône en partant de la droite : ).[*]En VB.NET pensez à activer Option Explicit et Option Strict (propriété du projet) et à retirer l'import automatique de l'espace de nom Microsoft.VisualBasic (onglet Références dans les propriétés du projet).[*]Si votre problème est résolu (et uniquement si c'est le cas), pensez à mettre "Réponse acceptée" sur le ou les messages qui vous ont aidés/list
---
Mon site
Messages postés
14733
Date d'inscription
vendredi 14 mars 2003
Statut
Modérateur
Dernière intervention
12 octobre 2020
146
Bonjour,

Tu ne peux pas directement utiliser un code VB6 ou VBA dans VB.NET.

Il te faudra l'adapter, regardes ADO.NET.

---------------------------------------------------------------------
[list=ordered][*]Pour poser correctement une question et optimiser vos chances d'obtenir des réponses, pensez à lire le règlement CS, celui-ci pour bien poser votre question ou encore celui-ci pour les PFE et autres exercices.[*]Quand vous postez un code, merci d'utiliser la coloration syntaxique (3ième icône en partant de la droite : ).[*]En VB.NET pensez à activer Option Explicit et Option Strict (propriété du projet) et à retirer l'import automatique de l'espace de nom Microsoft.VisualBasic (onglet Références dans les propriétés du projet).[*]Si votre problème est résolu (et uniquement si c'est le cas), pensez à mettre "Réponse acceptée" sur le ou les messages qui vous ont aidés/list
---
Mon site
Messages postés
3
Date d'inscription
mercredi 27 juin 2012
Statut
Membre
Dernière intervention
13 juillet 2012

Bonjour,

Merci pour votre réponse.
J'ai effectué quelques recherche et effectivement ADO.Net permet de manipuler les bases de données via Visual studio.

Cependant, je n'ai pas trouvé comment lancer une macro dans access via une commande ADO.NET.

Pourriez vous me dire si seulement c'est possible ?

Encore merci pour votre soutien.
Messages postés
3
Date d'inscription
mercredi 27 juin 2012
Statut
Membre
Dernière intervention
13 juillet 2012

eh bien c'est très facheux...même s'il est clair que je comprends pourquoi...

C'est toujours la surprise lorsque l'on reprend le travail laissé par nos prédécésseur et qu'on est chargé de faire des refonte du process.

En fait il n'y aurait aucun souci (je pense) si j'avais un logiciel VB6 (le VS2008 posant aussi problème)...

Je sent se pointer les longues heures de travail devant moi.

Merci pour ces éclaircissements.

Bonne continuation !