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 :

Appliquer un style bords arrondis sur une image [XL-2007]


Sujet :

Macros et VBA Excel

  1. #1
    Membre du Club
    Femme Profil pro
    Développeur informatique
    Inscrit en
    Octobre 2012
    Messages
    116
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Octobre 2012
    Messages : 116
    Points : 64
    Points
    64
    Par défaut Appliquer un style bords arrondis sur une image
    Bonjour,

    J'ai une macro me permettant d'insérer automatiquement une image sur une plage de cellule prédéfinis.
    Je souhaite que cette macro applique un effet à l'image => qu'elle ai les bords arrondis.

    Voici ma macro d'insertion:

    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
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    Sub InsertionImage(Emplacement)
        Dim Img As Object
        Dim ShapeObj As Shape
     
        If Application.Dialogs(xlDialogInsertPicture).Show Then
            Set Img = ActiveSheet.DrawingObjects(ActiveSheet.Shapes.Count)
     
            With Img.ShapeRange
                'Nommer l'image insérée (Pour la supprimer plus facilement ensuite)
                .Name = "nomImg"
                ' Conserve les proportions d'origine lors du redimensionnement
                .LockAspectRatio = msoTrue
                ' Définit l'emplacement
                .Left = Emplacement.Left
                .Top = Emplacement.Top
     
                If .Width > .Height Then
                    ' Définit la largeur
                    .Width = Emplacement.Width
                    If .Height > Emplacement.Height Then
                        ' Définit la hauteur
                        .Height = Emplacement.Height
                    End If
                Else
                    ' Définit la hauteur
                    .Height = Emplacement.Height
                    If .Width > Emplacement.Width Then
                        ' Définit la largeur
                        .Width = Emplacement.Width
                    End If
                End If
            End With
        End If
     
    End Sub
    Si l'un d'entre vous a une idée de comment faire elle est la bienvenue

    Merci d'avance

  2. #2
    Expert éminent sénior
    Avatar de Marc-L
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2013
    Messages
    9 468
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

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

    Informations forums :
    Inscription : Avril 2013
    Messages : 9 468
    Points : 18 674
    Points
    18 674
    Par défaut

    Bonjour,

    s'il y a la possibilité de le faire manuellement via les propriétés de l'image,
    alors l'effectuer en utilisant l'Enregistreur de macros livre le code immédiatement !

  3. #3
    Membre du Club
    Femme Profil pro
    Développeur informatique
    Inscrit en
    Octobre 2012
    Messages
    116
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Octobre 2012
    Messages : 116
    Points : 64
    Points
    64
    Par défaut
    C'est ce que j'ai fais mais aucun code n'est retourné

  4. #4
    Expert éminent sénior
    Avatar de Marc-L
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2013
    Messages
    9 468
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

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

    Informations forums :
    Inscription : Avril 2013
    Messages : 9 468
    Points : 18 674
    Points
    18 674
    Par défaut

    Te reste alors la recherche dans l'aide de l'objet concerné laquelle de ses propriétés correspond …

    Sinon si c'est un objet Shape, dès sa création son type peut être précisé, voir l'aide de la méthode AddShape

  5. #5
    Membre du Club
    Femme Profil pro
    Développeur informatique
    Inscrit en
    Octobre 2012
    Messages
    116
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Octobre 2012
    Messages : 116
    Points : 64
    Points
    64
    Par défaut
    Merci pour ton aide j'ai donc trouvé en regardant l'aide de la méthode Si ça peut aider certains voici le code qui arrondi mon image:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    Dim Img As Object
     
    If Application.Dialogs(xlDialogInsertPicture).Show Then
         Set Img = ActiveSheet.DrawingObjects(ActiveSheet.Shapes.Count)
     
         With Img.ShapeRange
             ' Arrondi les bords de l'image
             .AutoShapeType = msoShapeRoundedRectangle
         End With
    End If

  6. #6
    Membre chevronné
    Homme Profil pro
    Inscrit en
    Septembre 2013
    Messages
    1 369
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Septembre 2013
    Messages : 1 369
    Points : 2 156
    Points
    2 156
    Par défaut
    Bonjour,

    Cf exemple en PJ

    Jacques Boisgontier
    Fichiers attachés Fichiers attachés

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

Discussions similaires

  1. Réponses: 20
    Dernier message: 23/11/2013, 18h53
  2. Appliquer un filtre de Kalman sur une image 2D sous MATLAB
    Par djimisim dans le forum Traitement d'images
    Réponses: 0
    Dernier message: 11/05/2013, 22h53
  3. [Article] Appliquer un effet de zoom sur une image avec les CSS
    Par Bovino dans le forum Publications (X)HTML et CSS
    Réponses: 1
    Dernier message: 17/10/2010, 07h53
  4. Appliquer un effet de zoom sur une image avec les CSS
    Par Kerod dans le forum Mise en page CSS
    Réponses: 1
    Dernier message: 17/10/2010, 07h53
  5. Enlever un bord genant sur une image RGB
    Par ThomB. dans le forum Images
    Réponses: 5
    Dernier message: 04/02/2010, 03h25

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