IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

VBA Access Discussion :

Extraction image Excel via appli Access


Sujet :

VBA Access

  1. #1
    Membre habitué
    Profil pro
    Inscrit en
    Février 2010
    Messages
    136
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2010
    Messages : 136
    Points : 169
    Points
    169
    Par défaut Extraction image Excel via appli Access
    Bonjour bonjour,

    Alors, j'ai un petit problème (quelle surprise... ! ).

    J'ai un formulaire sous Access. Ce formulaire permet de sélectionner un document *.xls (via un bouton "parcourir"). Une fois le document sélectionné, il s'ouvre automatiquement.

    Grosso modo, on aurait ensuite une procédure qui parcourerait toutes les feuilles du classeur et enregistrerait tous les graphiques.

    J'ai épuré google (si si, jvous jure), et y a pas mal de façons de faire. En fait, elles marchent toutes très bien sous Excel. Mais quand jles mets dans Access, ça coince. Et elles me ramènent toutes au même problème.
    J'ai une erreur d'execution 48 (erreur de chargement de la dll) sur la dernière ligne (activechart.export). Et j'ai rien de "manquant" dans les références (je crois qu'il suffit d'avoir MS Office Excel 10.0 de toutes façons non ?)...

    Mon code est ci-dessous.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
     
    Dim xlApp As Object
     
        Set xlApp = CreateObject("Excel.Application")
        xlApp.Visible = True
        xlApp.Workbooks.Open (Me.Nom_FileExcel)   'Me.Nom_FileExcel est le nom issu de la fenêtre "Parcourir", comme expliqué précédemment
     
        ' Boucle parcourant les feuilles
        For Each Sheets In xlApp.Sheets
            ' On ecrit dans la boite de message le nom de la feuille
            MsgBox Sheets.Name
            ' On parcourt les graphiques de la feuille
            For Each Graph In Sheets.ChartObjects
                i = i + 1
     
                ' Selection d'un graphique
                Sheets.ChartObjects(i).Activate
                MsgBox Sheets.ChartObjects(i).Name
     
                ' Chemin où l'on veut exporter les graphiques
                Fich = "P:\"
     
              ActiveChart.Export FileName:=Fich & "test.jpg", FilterName:="JPEG"    'PAF !!!! ERREUR !!
     
            Next
        Next
    End Sub

    Voilà... Donc si quelqu'un pouvait m'expliquer d'où ça vient (après 4h de galère, jpense que je l'ai mérité... ), j'admets que ça m'embellirait la journée ! ^^ Merci d'avance !! ^^

    PS : euh... Au fait, la question va faire très noob, mais la présentation du code en mode couleur et cadrage + barres de défilement, on la fait comment ? Histoire que je sache pour la prochaine fois ^^'
    Edit : ok j'ai rien dit, j'ai trouvé comme un grand. Suffisait d'ouvrir les yeux...

  2. #2
    Expert éminent sénior

    Avatar de Tofalu
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Octobre 2004
    Messages
    9 501
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Associations - ONG

    Informations forums :
    Inscription : Octobre 2004
    Messages : 9 501
    Points : 32 311
    Points
    32 311
    Par défaut
    Essaye en ajoutant la référence Microsoft Office 11.0 Object Library à ton projet.

    Elle est activée dans Excel mais pas dans Access

  3. #3
    Membre habitué
    Profil pro
    Inscrit en
    Février 2010
    Messages
    136
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2010
    Messages : 136
    Points : 169
    Points
    169
    Par défaut
    Justement, j'ai dû oublier de préciser que dans les contraintes de développement, on devait se limiter à la 10.0... Donc pas possible d'utiliser la 11.0 .

    (Je jure que c'est pas moi qui ai décidé... lol)

  4. #4
    Expert éminent sénior

    Avatar de Tofalu
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Octobre 2004
    Messages
    9 501
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Associations - ONG

    Informations forums :
    Inscription : Octobre 2004
    Messages : 9 501
    Points : 32 311
    Points
    32 311
    Par défaut
    Tu as Access 2002 donc c'est la 11

    Tu peux essayer quand même avec la référence 11.0 d'office XP (2002) pour voir si le soucis vient de là ou non ?

    Edit, j'ai bien dit référence Office et non Excel hein

  5. #5
    Membre habitué
    Profil pro
    Inscrit en
    Février 2010
    Messages
    136
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2010
    Messages : 136
    Points : 169
    Points
    169
    Par défaut
    Alors alors...

    J'ai réussi à trouver la 12.0 (oui je dis ça comme si c'était un exploit... ) et ça passait pas avec elle non plus.


    Par contre, j'ai modifié
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ActiveChart.Export FileName:=Fich & "test.jpg", FilterName:="JPEG"
    Par
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    xlApp.ActiveChart.Export FileName:=Fich & "test.jpg", FilterName:="JPEG"
    Et là ça marche... Avec la 10.0 (et la 12.0 évidemment) !

    Bref, je crois que pour le moment, j'ai tout ce qu'il me faut (jrisque de revenir, ça me semble un peu trop beau pour être vrai

    Merci beaucoup à toi en tous cas !! Le fait d'expliquer la situation et de voir tes réponses m'a permis d'évacuer un peu... lol ^^

Discussions similaires

  1. Génerer un fichier excel via VBA access
    Par kedmard dans le forum VBA Access
    Réponses: 10
    Dernier message: 20/03/2012, 12h01
  2. Réponses: 6
    Dernier message: 25/08/2008, 13h36
  3. Réponses: 1
    Dernier message: 25/08/2008, 11h57
  4. Feuilles Excel via VBA Access
    Par h_adil dans le forum VBA Access
    Réponses: 2
    Dernier message: 08/07/2008, 22h05
  5. Mise en page Excel via VBA Access
    Par popo68 dans le forum VBA Access
    Réponses: 3
    Dernier message: 06/11/2006, 17h03

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo