|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | |||
![]() ![]() |
Bonjour,
Je vais essayer de faire court.... [Windows 7, Visual Studio (VS) 2010 et Excel 2010] Sous VS2005 et Access2003, je n'ai eu aucun soucis pour ajouter un module avec une sub() puis la lancer depuis un programme C#. J'ai modifier un peu le code sous VS 2010 avec Excel 2010. Et là je suis quasi sûr à 98% qu'il s'agit d'un problème de droit d'accès : A l'ajout de la ligne pour créer le nouveau module je tombe en Exception. Voici un exemple de code : Code :
Citation:
Je rajoute que pour écrire ou utiliser des Objets sur les feuilles avec mon compte perso il n'y a pas de soucis (Contrairement au compte Admin, donc je dois être Super Admin en plus C'est juste un problème d'accès pour moi. J'ai surfer sur le Net hier soir mais y'a tout et rien, soit je fatigue, soit je fatigue ![]() Qu'est-ce que j'ai zappé ? Merci par avance, Cordialement,
__________________
- De quelque manière qu'on s'y prenne on s'y prend toujours mal - -Sigmund Freud- Les meilleurs cours, tutoriels et Docs sur les SGBD et le SQL Tous les cours Office
|
|||
|
|
00
|
|
|
#2 | |
|
Expert Confirmé Sénior
![]() Jérôme FONTAINEContrôleur de Gestion Inscription : juin 2006 Messages : 3 924 ![]() |
Bonjour,
A tout hasard, as tu essayé en cochant l'option "Accès approuvé au modèle d'objet du projet VBA" ? Nouvelle image (1).jpg
__________________
Jérôme Citation:
nous encouragera.Dans le cas ou la réponse mérite, à vos yeux, un , nous faire partager la raison de ce vote, pourrait nous permettre de nous améliorer.
|
|
|
|
00
|
|
|
#3 |
![]() ![]() |
Bonjour jfontaine,
Je vais voir comment taper cette fonctionnalité en C# mais merci ![]() Tout doit être automatisé pour des traitement nocturne. J'ai juste besoin d'idées ! Je testerais cette aprem, voir dans ce sens ! Cordialement, Ps : Je voulais dire que c'est du C# du début à la fin donc....
__________________
- De quelque manière qu'on s'y prenne on s'y prend toujours mal - -Sigmund Freud- Les meilleurs cours, tutoriels et Docs sur les SGBD et le SQL Tous les cours Office
|
|
|
00
|
|
|
#4 | |
|
Expert Confirmé Sénior
![]() Jérôme FONTAINEContrôleur de Gestion Inscription : juin 2006 Messages : 3 924 ![]() |
Tu ne peux pas automatiser cette option, il te fait l'activer sur le poste. (option de sécurité)
__________________
Jérôme Citation:
nous encouragera.Dans le cas ou la réponse mérite, à vos yeux, un , nous faire partager la raison de ce vote, pourrait nous permettre de nous améliorer.
|
|
|
|
10
|
|
|
#5 |
![]() ![]() |
Merci,
J'ai déjà tenté les options de sécurités ! Rien de mieux !
__________________
- De quelque manière qu'on s'y prenne on s'y prend toujours mal - -Sigmund Freud- Les meilleurs cours, tutoriels et Docs sur les SGBD et le SQL Tous les cours Office
|
|
|
00
|
|
|
#6 | ||
|
Membre Expert
![]() Inscription : décembre 2011 Messages : 566 ![]() |
Bonsoir,
Juste pour être sûr que toute les options de sécurité ait bien été configuré voir : Programmation d'accès au projet VBA de Office est refusé Cette configuration doit être fait sur le projet VBA du fichier Excel utilisé en C# Sinon pour avoir plus d'information sur l'exception, est ce qu'il est possible de capturer l'exception et d'afficher la pile d'appel ? Code :
|
||
|
|
00
|
|
|
#7 |
![]() ![]() |
Merci pour vos réponses !
@BlueMonkey : - Je vais regarder ton lien ! - En pj l'exception levée !
__________________
- De quelque manière qu'on s'y prenne on s'y prend toujours mal - -Sigmund Freud- Les meilleurs cours, tutoriels et Docs sur les SGBD et le SQL Tous les cours Office
|
|
|
00
|
|
|
#8 |
|
Membre Expert
![]() Inscription : décembre 2011 Messages : 566 ![]() |
Bonjour,
En regardant le détail de l'exception, il me semble que ça plante déjà sur la récupération du classeur ThisWorkbook. Est-ce qu'il y a bien un classeur Excel ouvert (pas juste l'application Excel lancée) ? Et en fait en VBA ThisWorkbook est déjà un module existant par défaut pour chaque classeur. Je ne connais pas la syntaxe exacte en C#, mais si dans la ligne de commande app désigne Excel, je dirais que ça devrait s'écrire plutôt comme ça : Code :
oModule = app.ActiveWorkbook.VBProject.VBComponents.Add(...); Code :
app.Workbooks("<nom du classeur XLS>").VBProject.VBComponents.Add(...);
|
|
|
20
|
|
|
#9 |
![]() ![]() |
Bonsoir,
Merci @BlueMonkey, c'était ça, pffff ! Programmation d'accès au projet VBA de Office est refusé. Ça marche impeccable maintenant, Cordialement,
__________________
- De quelque manière qu'on s'y prenne on s'y prend toujours mal - -Sigmund Freud- Les meilleurs cours, tutoriels et Docs sur les SGBD et le SQL Tous les cours Office
|
|
|
00
|
|
|
#10 |
|
Membre Expert
![]() Inscription : décembre 2011 Messages : 566 ![]() |
Bonsoir,
Si le problème venait de la "Programmation d'accès au projet VBA de Office", Jfontaine avait trouver le problème post #2. Le lien donné plus loin ne donnait que des explications pour la configuration. Quoiqu'il en soit content de voir que ce problème est résolu.
|
|
|
00
|
Copyright © 2000-2012 - www.developpez.com