Excel 2007 macro pour insert image

Résolu
Bonjour,
L'insertion d'image avec une macro dans excel 2007 n'a pas la même réaction que excel 97
Cette macro en excel97 place les 2 images à peu près dans les cellules 16.2 et 16.5 en respectant .activate
En excel 2007 NON que ce soit avec activate ou avec Cells(x, y).Select même problème les images se supperposent toujours au même endroit ligne 5 entre les colonnes A et B

Quelqun a t'il une solution ou explication
Merci
Gilles

Public Sub afficher97()

Worksheets("feuil1").Cells(16, 2).Activate
image = "Caravaggio - GalleryPlayer [320x200].jpg"
ActiveSheet.Pictures.Insert(image).Select

Worksheets("feuil1").Cells(16, 5).Activate
image = "Hopper - GalleryPlayer [320x200].jpg"
ActiveSheet.Pictures.Insert(image).Select

End Sub
Configuration: Windows XP
Internet Explorer 7.0

10 réponses

  1. Bonjour,
    En guise de fin, essayez la macro, de gbinforme, donc j'ai modifié les lignes 3 et supprimé la 8.
    Ne serait-ce pas la solution !

    Public Sub afficher2007()
    Dim image
    Worksheets("Feuil1").Select
    image = "Caravaggio - GalleryPlayer [320x200].jpg"
    ActiveSheet.Pictures.Insert(image).Select
    Selection.Top = Cells(16, 2).Top
    Selection.Left = Cells(16, 2).Left

    image = "Hopper - GalleryPlayer [320x200].jpg"
    ActiveSheet.Pictures.Insert(image).Select
    Selection.Top = Cells(16, 5).Top
    Selection.Left = Cells(16, 5).Left
    End Sub
    0
    1. Gbinforme , Jean-Pierre
      Je suis persuadé que vos propos sont plein de vérités et on a du mal (moi en tout cas) à changer d'habitude

      Je vais passer ce sujet en résolu pour ne pas le laisser en cours .
      Bien qu'il n'y ai pas encore de solution qui soit ressortie de nos échanges, ces considérations pleines de bon sens .

      Merci les gars, je remonte 2007 , faut pas faiblir et se laisser abattre

      Et chiche que sur mon Gordini, après le double corps (bien vu) je passe au turbo

      Bonne semaine à vous
      Gilles
      0
      1. Bonjour gillesdemev,
        Eh bien je mets mon petit grain de sel par rapport à Access.
        J'ai passé sans problème mes diverses applications Access de 97 à 2003.
        Depuis mi-2008 j'ai le MSO 2007 et j'ai réalisée la même opération de 2003 sur 2007 sans problème.
        A l'utilisation et aussi lors de modification d'une application je trouve que c'est très bien.
        Il faut un peut de souplesse pour s'adapter comme le dit si bien gbinforme, mais à notre âge c'est un excellent exercice pour nos neurones.
        Bonne semaine.

        Salutations.
        Jean-Pierre
        0
        1. Contributeur
          bonjour

          L'interface est horripilant,

          Le changement d'habitude est difficile sans doute mais elle est adaptable et présente aussi des avantages.

          si on fait enregistrer une macro ... Dans la Sub on ne retrouve pas toutes les commandes

          Les commandes sur les objets sont ignorées effectivement mais par contre l'aide est plus structurée.

          Cohabitation entre 97 et 2007 ... douteuse

          Personnellement, entre 2002 et 2007 même lancés simultanément je n'ai pas de soucis...

          Fichiers .xlsx ? comportement étrange aussi

          Tu peux "enregistrer sous" puis "format 97-2003" sans problème.

          Bref, je ne voulais pas rester à la traîne mais là ...Et encore je n'ai pas attaqué Access

          Je ne te parlerai pas d'access car je n'ai que le pack familial.

          Quand même, je garde mon double corps sans revenir au Z80 trop fort le papé !

          Attention, ta machine ce n'est pas une Gordini il me semble qu'elle a plutôt double cœur ?
          0
          1. J'ai une solution efficace.
            J'ai viré excel 2007
            L'interface est horripilant, si on fait enregistrer une macro ... Dans la Sub on ne retrouve pas toutes les commandes
            par exemple justement insérer une image
            Cohabitation entre 97 et 2007 ... douteuse
            Fichiers .xlsx ? comportement étrange aussi
            Bref, je ne voulais pas rester à la traîne mais là ...
            Et encore je n'ai pas attaqué Access
            Quand même, je garde mon double corps sans revenir au Z80 trop fort le papé !
            Merci à vous
            0
            1. Merci à vous 2
              L'image est bien trouvée car elle est insérée dans la feuille.
              Pour mes essais les pics sont dans le même répertoire que le fichier Excel Alors que dans mon appli elles peuvent être ailleurs et donc dans ma variable j'ai le chemin complet
              Le Principal problème c'est qu'elle s'empilent toutes l'une sur l'autre

              Pour tout dire mon appli ne sert pas à grand chose
              Exemple, je laisse Excel (par des random) choisir dans 'n' colonnes le menu que je vais manger et pour compliquer la chose j'affiche l'image du plat
              Exemple colonne A les entrèes, B les viandes ou poisson etc .... c'est la bête qui vérifie le nombre de colonnes utilisées et dans chaque colonne le nombre d'item Tien je pourrais ajouter une colonne pour l'herbe grasse des prairies du jurassique

              ça peut marcher aussi pour les vêtements: chausettes, chemises cravates futal ....
              Aucun inérêt donc si ce n'est que m'obliger à réfléchir au lieu de m'ingurgiter des programmes télé débiles BEURK j'aime pas la télé
              Merci encore à vous
              Un dinosaure ravi
              Aller j'y retourne

              Ps: cdir ! ha que c'est bon
              0
              1. Contributeur
                bonjour Le Pingou,

                Soit mettre le chemin complet comme tu l'as précisé, soit être positionné sur le bon répertoire :

                cdir "C:\...."

                bonjour gillesdemev,

                Cette fonction doit donc te parler...

                le dinosaure de l'informatique chez Alcatel. ça veut tout dire

                C'est tout faux car tu es encore parmi nous et les dinosaures ne sont plus là !
                0
                1. Bonjour,
                  Je pense qu'il faut que la variable "image" contienne l'adresse de l'image à insérer.
                  La ligne de code devrait-être de cette forme :
                  image = "D:\Documents and Settings\gillesdemev\ ........ \Caravaggio - GalleryPlayer [320x200]"
                  0
                  1. Merci Gbinforme
                    J'ai une erreur 1004 (toujours 1004)
                    Qui me dit impossible de lire la propriété insert de la classe pictures
                    J'avoue que j'ai un peu de mal avec ces langages modernes.
                    Il y a peu de temps on me surnommait le dinosaure de l'informatique chez Alcatel. ça veut tout dire
                    C'est sympa de m'avoir proposé une solution
                    Gilles
                    0
                    1. Contributeur
                      bonjour

                      Tu peux essayer ainsi :
                      Public Sub afficher2007()
                      Dim image
                          Worksheets("feuil1").Cells(16, 2).Activate
                          image = "Caravaggio - GalleryPlayer [320x200].jpg"
                          ActiveSheet.Pictures.Insert(image).Select
                          Selection.Top = Cells(16, 2).Top
                          Selection.Left = Cells(16, 2).Left
                      
                          Worksheets("feuil1").Cells(16, 5).Activate
                          image = "Hopper - GalleryPlayer [320x200].jpg"
                          ActiveSheet.Pictures.Insert(image).Select
                          Selection.Top = Cells(16, 5).Top
                          Selection.Left = Cells(16, 5).Left
                      
                      End Sub
                      
                      0