VBA Insérer la meme photo dans plusieurs onglets en mm temps

Bonjour !

Je voudrais avoir une macro qui me permettrait d'insérer une photo (à partir d'un chemin d'accès écrit dans le fichier excel) dans une cellule de plusieurs onglets de ce fichier en même temps.

Mes trois premiers onglets ont tous le même format je voudrais donc insérer une photo dans la celulle A11 de chacun de ces trois onglets en même temps.

Pour le moment la macro que j'ai me permet de faire ca sur chacun des onglets séparément et je n'arrive pas à l'adapter!

Pouvez-vous m'aider SVP??

33classeur1.xlsx (8.25 Ko)

Bonsoir xxhzlxx, le forum,

Un début de réponse:

Sub Image()

        Dim Image As Variant
        Dim L As Single, T As Single, W As Single, H As Single
        Dim Wsh As Worksheet

   For Each Wsh In Worksheets(Array("Feuil1", "Feuil2", "Feuil3"))

    L = Range("A11").Left
    T = Range("A11").Top
    W = Range("A11").Width
    H = Range("A11").Height

    Image = Application.GetOpenFilename
    If Image <> False Then
        Wsh.Shapes.AddPicture Image, True, True, L, T, W, H
    End If

    Next Wsh

End Sub

Le seul Hic, c'est qu'il faut cliquer sur l'image 3 fois...pas su faire mieux....c'est une macro que j'ai trouvé sur le net (de Mytå) et que j'ai adaptée.

Bonjour à tous,

Salut xorsankukai

Pourquoi ne places-tu pas ton instruction :

Image = Application.GetOpenFilename

avant ta boucle ...???

Bonjour James007, le forum,

Pourquoi ne places-tu pas ton instruction

avant ta boucle ...???

J'avais pourtant fait quelques essais mais sans trop m'attarder, mon erreur était de déplacer

 Image = Application.GetOpenFilename
    If Image <> False Then
        Wsh.Shapes.AddPicture Image, True, True, L, T, W, H
    End If

J'aurai dû y passer un peu plus de temps, c'était à ma portée

Je te remercie donc pour ton intervention, qui me permets de poursuivre mon apprentissage

Le code corrigé:

Sub Image()

            Dim Image As Variant
            Dim L As Single, T As Single, W As Single, H As Single
            Dim Wsh As Worksheet

            Image = Application.GetOpenFilename

       For Each Wsh In Worksheets(Array("Feuil1", "Feuil2", "Feuil3"))

        L = Range("A11").Left
        T = Range("A11").Top
        W = Range("A11").Width
        H = Range("A11").Height

        If Image <> False Then
            Wsh.Shapes.AddPicture Image, True, True, L, T, W, H
        End If

        Next Wsh

    End Sub

Amicalement,

De rien ...

Ce qu'il y a de Génial avec Excel ... c'est que nous sommes tous en mode "apprentissage" .... tout le temps ....

Merci beaucoup pour toutes vos réponses!! Et comment on peut faire pour que la macro aille chercher une photo (dont le nom sera dans la cellule A11) dans un endroit précis? (Comme j'avais initialement fait dans ma macro, les photos se trouvaient tous dans l'emplacement dont le lien etait dans un autre onglet)

Bonjour,

Chaque photo ... comme tu le dis ... possède un nom ...

Donc il suffit d'utiliser le nom dont tu as besoin ...

Oui mais j'aimerais qu'il y ait un bouton et quand je clic sur le bouton j'aimerais que la photo vienne directement (sans que j'aille sélectionner un fichier et le cherche dans mes documents..)

Dans la macro que j'avais fait initialement j'avais cette partie de code là qui permettait à mon macro d'aller chercher les phtoos dans un chemin précis:

On Error GoTo Erreur                                'Gestion des erreurs, renvoir à l'étiquette Erreur

Application.ScreenUpdating = False                  'Bloque la mise à jour de l'écran

Chemin = Range("PARAMETRES!B4").Value               'Définition du nom et du chemin d'acces à l'imagette
Nom = Range("A11") & ".jpg"
AdImage = Chemin & Nom

Set MonImage = ActiveSheet.Pictures.Insert(AdImage) 'Insertion de l'imagette

Comment je pourrai integrér cette partie à ton macro?

Un grand merci pour vos aides en tout cas!

Rechercher des sujets similaires à "vba inserer meme photo onglets temps"