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

Macros et VBA Excel Discussion :

Copier une Image dynamiquement dans un Entête de feuille EXCEL. [XL-2007]


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Futur Membre du Club
    Homme Profil pro
    Formateur en informatique
    Inscrit en
    Février 2014
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Formateur en informatique

    Informations forums :
    Inscription : Février 2014
    Messages : 3
    Par défaut Copier une Image dynamiquement dans un Entête de feuille EXCEL.
    Bonjour,

    Un peu novice sur EXCEL, j'essaye de rendre dynamique l'affichage de Logo dans l'entête d'une page EXCEL.
    C'est pour avoir une seule matrice de devis pour plusieurs sociétés.

    Je sais afficher un logo différent si je passe par des fichiers externes :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    ActiveSheet.PageSetup.RightHeaderPicture.Filename = "C:\IDEX.jpg" 
    ActiveSheet.PageSetup.RightHeader = "&G"
    Mais mes logos sont stockés dans le fichier EXCEL.

    J'imagine que le code devrait être du style :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    ActiveSheet.PageSetup.RightHeaderPicture.Filename = Sheets("Feuil1").Shapes("Image 1")
    ActiveSheet.PageSetup.RightHeader = "&G"
    J'ai essayé de passer par une variable :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    MonImage = Sheets("Feuil1").Shapes("Image 1")
    , mais j'ai une erreur 438 : Propriété ou Méthode non gérée par cet objet
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ActiveSheet.PageSetup.RightHeaderPicture.Filename = MonImage
    Bref vous l'aurez compris, je ne maîtrise pas les syntaxes EXCEL, si une bonne âme pouvait m'aider.

  2. #2
    Expert éminent

    Profil pro
    Conseil, Formation, Développement - Indépendant
    Inscrit en
    Février 2010
    Messages
    8 591
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Conseil, Formation, Développement - Indépendant

    Informations forums :
    Inscription : Février 2010
    Messages : 8 591
    Par défaut
    Bonjour

    J'ai fait cela il y a quelques années mais je pense que cela n'a pas changé : l'image ne pouvait être que sur le disque.

  3. #3
    Futur Membre du Club
    Homme Profil pro
    Formateur en informatique
    Inscrit en
    Février 2014
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Formateur en informatique

    Informations forums :
    Inscription : Février 2014
    Messages : 3
    Par défaut
    Merci de votre réponse rapide, je ne peux pas me permettre d'avoir les images sur le disque malheureusement.

    Mais j'ai peut-être une idée :
    Est-il pensable de prendre l'image, de la copier temporairement de la feuille EXCEL vers un répertoire du C:\ par exemple de faire le :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ActiveSheet.PageSetup.RightHeaderPicture.Filename = "C:\IDEX.jpg"
    qui lui fonctionne et de détruire le fichier IDEX.jpg ensuite ?

    Ma question est l'entête gardera-t-il mon image ou est-ce juste un lien dynamique vers le C:\ (et dans ce cas, je n'ai plus d'image dans mon entête) ?

  4. #4
    Inactif  

    Homme Profil pro
    cuisiniste
    Inscrit en
    Avril 2009
    Messages
    15 374
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : cuisiniste
    Secteur : Bâtiment

    Informations forums :
    Inscription : Avril 2009
    Messages : 15 374
    Billets dans le blog
    8
    Par défaut re
    Merci de votre réponse rapide, je ne peux pas me permettre d'avoir les images sur le disque malheureusement
    bon ben voila encore un exemple un nouveau qui n'a pas trouver le bouton rechercher

    dans la faq les contrib vba excel tu fait une recherche exporter un graph en gif
    tu trouvera aussi comment exporter de la même façon un shapes une image, etc.....
    le reste de l'idée tu la vois?????

    allez je te laisse faire tes recherches
    mes fichiers dans les contributions:
    mail avec CDO en vba et mail avec CDO en vbs dans un HTA
    survol des bouton dans userform
    prendre un cliché d'un range

    si ton problème est résolu n'oublie pas de pointer : : ça peut servir aux autres
    et n'oublie pas de voter

  5. #5
    Expert éminent

    Profil pro
    Conseil, Formation, Développement - Indépendant
    Inscrit en
    Février 2010
    Messages
    8 591
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Conseil, Formation, Développement - Indépendant

    Informations forums :
    Inscription : Février 2010
    Messages : 8 591
    Par défaut
    Bonjour

    Pour compléter la réponse de Patrick Toulon que je salue : oui l'image ensuite est intégrée dans l'en-tête et tu peux effacer le fichier.

  6. #6
    Inactif  

    Homme Profil pro
    cuisiniste
    Inscrit en
    Avril 2009
    Messages
    15 374
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : cuisiniste
    Secteur : Bâtiment

    Informations forums :
    Inscription : Avril 2009
    Messages : 15 374
    Billets dans le blog
    8
    Par défaut re
    Bonjour
    allez un exemple je trouvais l'exercice intéressant
    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
     
    Sub appercu_avec_image_du_sheet_en_logo()
        Dim logotemp As String, mylogo As Object
     
        logotemp = ThisWorkbook.Path & "\logotemp.jpg"
        With Sheets(1) ' adapte ton sheets
            Set mylogo = .Shapes("logodvp")    ' adapte le nom de ta shape ici
            mylogo.Copy
            With .ChartObjects.Add(0, 0, mylogo.Width, mylogo.Height).Chart
                .Paste    'colle l'image dans un graphique temporaire
                .Export logotemp, "JPG"    'enregistre  l'image temporaire (logotemp.jpg)  dans le même répertoire que ce classeur.
                .Parent.Delete    'on supprime le chart temporaire
            End With
            .PageSetup.RightHeaderPicture.Filename = logotemp
            .PageSetup.RightHeader = "&G"
            .PrintPreview    'printout pour imprimer directement
        End With
        Kill logotemp    ' on suprime le fichier logotemp.jpg
    End Sub
    Edit:
    Ps: voila en vba pour rendre ton shape non imprimable en dessous
    met ceci:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    mylogo.ControlFormat.PrintObject = False
    j'aurais appris quelque chose aujourd'hui



    Nom : demoingto64 in-out.gif
Affichages : 1079
Taille : 476,4 Ko
    mes fichiers dans les contributions:
    mail avec CDO en vba et mail avec CDO en vbs dans un HTA
    survol des bouton dans userform
    prendre un cliché d'un range

    si ton problème est résolu n'oublie pas de pointer : : ça peut servir aux autres
    et n'oublie pas de voter

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 2
    Dernier message: 05/07/2010, 14h06
  2. Afficher une image dynamique dans un rapport
    Par Foub dans le forum BIRT
    Réponses: 5
    Dernier message: 01/07/2008, 23h51
  3. Afficher une image dynamique dans une servlet
    Par reg01 dans le forum Servlets/JSP
    Réponses: 1
    Dernier message: 03/04/2008, 12h28
  4. Copier une image jpg dans une cellule dun DrawGrid
    Par ero-sennin dans le forum Delphi
    Réponses: 13
    Dernier message: 10/07/2007, 16h57
  5. Copier une image (jpeg) dans le presse papier
    Par benj63 dans le forum C++Builder
    Réponses: 2
    Dernier message: 29/07/2002, 15h51

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