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 :

Inserer image dans excel depuis access


Sujet :

VBA Access

  1. #1
    Futur Membre du Club
    Inscrit en
    Mai 2006
    Messages
    15
    Détails du profil
    Informations forums :
    Inscription : Mai 2006
    Messages : 15
    Points : 7
    Points
    7
    Par défaut Inserer image dans excel depuis access
    Bonjour à tous, j'ai besoin de votre aide.
    Je me bats depuis plusieurs jours avec ça et je trouve pas de solution...
    Je dois à partir du lien d'une image enregistré dans une base de données access, inserer cette image dans une feuille excel à la place et à la taille désirée...
    Or je n'y arrive pas.
    J'arrive à inserer avec la commande Mafeuilleexcel.pictures.insert(monchemin)

    Seulement apres je n'arrive pas à reprendre la main sur mon image pour la mettre à la taille et à l'endroit désiré...

    Merci de votre aide.

  2. #2
    Responsable Access

    Avatar de Arkham46
    Profil pro
    Inscrit en
    Septembre 2003
    Messages
    5 865
    Détails du profil
    Informations personnelles :
    Localisation : France, Loiret (Centre)

    Informations forums :
    Inscription : Septembre 2003
    Messages : 5 865
    Points : 14 524
    Points
    14 524
    Par défaut
    slt,

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    Dim oPic As Object
    Set oPic = Mafeuilleexcel.pictures.insert(monchemin)
    oPic.Top = 146
    oPic.Left = 246
    oPic.Width = 46
    oPic.Height = 46
    Set oPic = Nothing

  3. #3
    Futur Membre du Club
    Inscrit en
    Mai 2006
    Messages
    15
    Détails du profil
    Informations forums :
    Inscription : Mai 2006
    Messages : 15
    Points : 7
    Points
    7
    Par défaut
    Merci beaucoup, je m'echinais avec le type Pictures

    Par contre, je sais que j'abuse mais saurais-tu comment récupérer soit la taille d'une image contenue dans le fichier excel (image avec un nom connu), soit comment récupérer la taille d'un groupe de celulle nommée?

    Pour les cellules nommées j'ai un pb : ex : de D9 à F12 c'est Une seule cellule nommée et je veux récupérer la taille de cette cellule. Seulement quand je la récupére il me donne que la taille de D9...
    Set Emplacement = Range(nomcelule)
    Merci.

  4. #4
    Membre du Club
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    116
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 116
    Points : 50
    Points
    50
    Par défaut
    excuse moi flool, si tu as le temps (ou l'envie (ou les deux)) tu pourrais expliquer comment fonctionne Mafeuilleexcel.pictures.insert(monchemin)
    comment dit on dans quelle fichier excel travaille-t-on ?

    peux t'on le placer tout simplement sur un bouton ?

  5. #5
    Responsable Access

    Avatar de Arkham46
    Profil pro
    Inscrit en
    Septembre 2003
    Messages
    5 865
    Détails du profil
    Informations personnelles :
    Localisation : France, Loiret (Centre)

    Informations forums :
    Inscription : Septembre 2003
    Messages : 5 865
    Points : 14 524
    Points
    14 524
    Par défaut
    Pour positionner l'image dans un ensemble de cellules fusionnées :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    Dim oPic As Object
    Set oPic = Mafeuilleexcel.pictures.insert(monchemin)
    oPic.Left = Range("titi").MergeArea.Left
    oPic.Top = Range("titi").MergeArea.Top
    oPic.Width = Range("titi").MergeArea.Width
    oPic.Height = Range("titi").MergeArea.Height
    Set oPic = Nothing

  6. #6
    Futur Membre du Club
    Inscrit en
    Mai 2006
    Messages
    15
    Détails du profil
    Informations forums :
    Inscription : Mai 2006
    Messages : 15
    Points : 7
    Points
    7
    Par défaut
    Bien sur
    En fait je travaille à automatiser des attestations.
    Donc je me base sur des modeles dont le nom est en dur dans le code.
    J'ouvre mes fichiers excel :

    Dim appExcel As excel.Application
    Dim ClasseurExcelQuest As excel.Workbook
    Dim FeuilleExcelQuest As excel.Worksheet

    Set appExcel = CreateObject("Excel.Application")
    appExcel.Visible = True
    Set ClasseurExcelQuest = appExcel.Workbooks.Add(adressefichierxl)
    Set FeuilleExcelQuest = ClasseurExcelQuest.Worksheets(feuillexl)
    Et apres j'inserer avec la ligne feuille.pictures.insert(adresseimage)

    Apres si tu veux, tu peux faire choisir le fichier xl par l'ouverture d'une boite de dialogue

  7. #7
    Membre du Club
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    116
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 116
    Points : 50
    Points
    50
    Par défaut
    merci c'est gentil

  8. #8
    Futur Membre du Club
    Inscrit en
    Mai 2006
    Messages
    15
    Détails du profil
    Informations forums :
    Inscription : Mai 2006
    Messages : 15
    Points : 7
    Points
    7
    Par défaut
    Un grand merci Arkham46.
    Ca marche nickel

  9. #9
    Membre du Club
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    116
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 116
    Points : 50
    Points
    50
    Par défaut
    non rien
    j'ai honte j'ai posé une question bête, j'avais oublié de préciser la feuille excel

  10. #10
    Futur Membre du Club
    Inscrit en
    Mai 2006
    Messages
    15
    Détails du profil
    Informations forums :
    Inscription : Mai 2006
    Messages : 15
    Points : 7
    Points
    7
    Par défaut
    Arkham46 j'aurais encore besoin de tes lumières.
    En fait, j'ai un pb avec le code que tu m'as passé pour acceder aux valeurs d'une cellule nommée (la taille, etc...).
    Il s'avere que ça fait planter excel.
    En fait le lien ne se fait pas.
    Au début je pensais que c'etait un plus gros pb mais apres différents tests je me suis aperçu que si j'enleve juste l'accés à la cellule nommée mais que j'insere bien l'image, tout va pour le mieux...
    J'ai essayé en declarant la cellule nommée à part avec un

    Dim cellule As Range
    Set cellule = Range(nomcellule).MergeArea

    temp = cellule.left
    Set cellule = Nothing
    Juste ça me fait planter excel.

    PS : ce que j'appelle planter excel, c'est à dire qu'il se ferme bien mais l'ouverture ne se fait plus et dans le gestionnaire des taches excel apparait toujours...

  11. #11
    Responsable Access

    Avatar de Arkham46
    Profil pro
    Inscrit en
    Septembre 2003
    Messages
    5 865
    Détails du profil
    Informations personnelles :
    Localisation : France, Loiret (Centre)

    Informations forums :
    Inscription : Septembre 2003
    Messages : 5 865
    Points : 14 524
    Points
    14 524
    Par défaut
    J'ai oublié un petit morceau :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    Dim oPic As Object
    Set oPic = Mafeuilleexcel.pictures.insert(monchemin)
    oPic.Left = Mafeuilleexcel.Range("titi").MergeArea.Left
    oPic.Top = Mafeuilleexcel.Range("titi").MergeArea.Top
    oPic.Width = Mafeuilleexcel.Range("titi").MergeArea.Width
    oPic.Height = Mafeuilleexcel.Range("titi").MergeArea.Height
    Set oPic = Nothing
    Il faut préciser la feuille, sinon en appliquant le "Range" directement ça ne marche pas correctement. Enfin ça marche une première fois mais ensuite les objets Range ne sont pas libérés et bloque le fichier.

  12. #12
    Futur Membre du Club
    Inscrit en
    Mai 2006
    Messages
    15
    Détails du profil
    Informations forums :
    Inscription : Mai 2006
    Messages : 15
    Points : 7
    Points
    7
    Par défaut
    Je te remercie
    Apres tatonnement j'avais trouvé, mais je prefere me faire confirmer le truc
    Par contre je ne comprends pas pourquoi ça ne libére pas. Une idée quelqu'un?

Discussions similaires

  1. Inserer image dans excel avec PHP
    Par hamzito dans le forum Langage
    Réponses: 5
    Dernier message: 12/08/2011, 12h53
  2. Suppression de ligne dans Excel depuis Access
    Par zoom61 dans le forum VBA Access
    Réponses: 2
    Dernier message: 19/06/2008, 15h28
  3. Modifier dimension d'un commentaire dans EXCEL depuis access
    Par petitours dans le forum VBA Access
    Réponses: 5
    Dernier message: 22/11/2007, 09h08
  4. Afficher résultat requete dans Excel depuis Access.
    Par nighthawksf117a dans le forum Access
    Réponses: 1
    Dernier message: 12/04/2006, 23h18

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