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 :

Insertion et copie d'images [XL-2010]


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre émérite Avatar de issoram
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2009
    Messages
    665
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Saône et Loire (Bourgogne)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2009
    Messages : 665
    Par défaut Insertion et copie d'images
    Bonjour à tous,

    • Je dispose dans un classeur source d'une feuille "MODELE" dans laquelle j'insère une image (par code).
    • Une fois cette feuille "MODELE" mise en forme, je la copie dans un autre classeur via la méthode
      Code : Sélectionner tout - Visualiser dans une fenêtre à part
      Worksheet("MODELE").Copy
    Voici le problème:
    Lorsque je déplace l'images source ou la supprime, l'image ne s'affiche plus dans le nouveau classeur créé. En fait Excel cherche le lien vers cette image est bien évidement ne la trouve plus.
    Or ce que je ne comprends pas c'est pourquoi il me copie un lien et pas l'image en tant que telle. Car dans le classeur source je ne rencontre pas ce problème (Il a bien copié l'image sans le lien)

    Idéalement il me faudrait l'équivalent en VBA des options:
    1. Insérer
    2. Lier au fichier
    3. Insérer et lier
    proposées lors de l'insertion d'image. Avec l'enregistreur de Macros c'est toujours le même code qui est généré quelque soit l'option choisie:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Pictures.Insert("chemin de l'image")
    Merci d'avance à ceux qui pourront m'aider.

  2. #2
    Membre chevronné Avatar de jackborogar
    Homme Profil pro
    Etudiant Ingénierie Financière
    Inscrit en
    Avril 2012
    Messages
    290
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Etudiant Ingénierie Financière
    Secteur : Finance

    Informations forums :
    Inscription : Avril 2012
    Messages : 290
    Par défaut
    Essayes dans ton nouveau fichier:

    Edition => Liaisons => Rompre la liaison => OK

    Cdt

  3. #3
    Membre émérite Avatar de issoram
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2009
    Messages
    665
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Saône et Loire (Bourgogne)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2009
    Messages : 665
    Par défaut
    Merci,

    Je ne trouve pas l'équivalent sous 2010. J'ai essayé données/connexion mais rien la dedans.

  4. #4
    Membre chevronné Avatar de jackborogar
    Homme Profil pro
    Etudiant Ingénierie Financière
    Inscrit en
    Avril 2012
    Messages
    290
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Etudiant Ingénierie Financière
    Secteur : Finance

    Informations forums :
    Inscription : Avril 2012
    Messages : 290

  5. #5
    Membre émérite Avatar de issoram
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2009
    Messages
    665
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Saône et Loire (Bourgogne)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2009
    Messages : 665
    Par défaut
    Oui, c'est bien ce que j'avais tenté mais il n'y a pas les liens vers les images.
    ça doit être une option quelque part.

  6. #6
    Membre émérite Avatar de issoram
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2009
    Messages
    665
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Saône et Loire (Bourgogne)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2009
    Messages : 665
    Par défaut
    Bon ben j'ai résolu mon problème mais c'est pas du très propre.Je vous résume rapidement ce que j'ai trouvé. Si jamais il y 'a mieux, je suis preneur.

    Après avoir parcouru les différents forums du net, il en ressort que (pour Excel 2010):
    1. Charger une image avec Pictures.Insert ne permet pas de spécifier si on insère cette dernière avec ou sans lien. (Chez moi c'est assez aléatoire)
    2. Il vaut mieux utiliser la méthode
      Code : Sélectionner tout - Visualiser dans une fenêtre à part
      AddPicture(Filename, LinkToFile, SaveWithDocument, Left, Top, Width, Height)
      où l'argument LinkToFile permet de spécifier l'édition ou non de lien.

    Par contre, les arguments Width, Height sont obligatoires. Or dans mon cas, souhaitant conserver les proportions de l'image d'origine, il faut donc que je récupère ses dimensions avant le chargement.

    Du coup:
    1. Je charge l'image une première fois avec la méthode Pictures.Insert
    2. Je récupère ses dimensions
    3. Je calcule les nouvelles dimensions (en gardant les proportions)
    4. La supprime
    5. La recharge avec la méthode Shapes.AddPicture


    Je laisse un moment en non résolu, car il doit sûrement y avoir moyen de faire autrement.

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

Discussions similaires

  1. hauteur et largeur d'une copie d'image
    Par guismoman33 dans le forum Macros et VBA Excel
    Réponses: 12
    Dernier message: 15/06/2007, 10h48
  2. Deplacement - copie d'image
    Par pinpin_ dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 22/11/2006, 08h54
  3. Copie d'images dans le presse papier
    Par Tiwaz dans le forum C++Builder
    Réponses: 16
    Dernier message: 31/10/2006, 19h08
  4. Insertion dans un champ image
    Par loicbd dans le forum MS SQL Server
    Réponses: 9
    Dernier message: 06/01/2006, 09h56
  5. [Sécurité] Bloquer la copie d'images
    Par Pascal Lob dans le forum Langage
    Réponses: 6
    Dernier message: 14/10/2005, 22h29

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