VBA - Recolorier/Transparency sur image PNG

Bonjour toute le monde,

Y a t'il quelqu'un qui a percé le mystère de comment utiliser les fonctions de modification d'image de base d'excel, soit recolorier une image png ou la rendre transparente à hauteur de 50% via VBA.

J'ai testé plein de code mais la seule chose qu'il modifie c'est le fond transparent de l'image et non l'image en elle même comme on peut le faire avec les outils de base.

color
6testcolor.xlsm (43.42 Ko)

Bonjour,

Pour jouer sur la transparence, la brillance et le contraste (modifiez les paramètres de la tempo pour une variation plus ou moins rapide):

Sub De_moins_en_moins_Transparent()
    Dim Image As Shape
    Set Image = ActiveSheet.Shapes("Image 3")

    For I = 0.01 To 0.5 Step 0.01 ' s'arrête à 50%
        With Image
            .Fill.Transparency = I ' Transparence (valeurs de 0 à 0.5 par centième)
            .pictureFormat.Brightness = I ' Brillance (valeurs de 0 à 0.5 par centième)
            .pictureFormat.Contrast = I ' Contraste (valeurs de 0 à 0.5 par centième)
        End With
        'Tempo
        For j = 1 To 1500000
            If j Mod 100000 = 0 Then
                DoEvents
            End If
        Next j
    Next I
End Sub

Pour la couleur, je ne connais pas.

Cdlt

re,

on peut changer le "forecolor" ou le "backcolor", mais ce n'est pas çà que vous voulez, je pense

Non, parce que je voudrais garder la transparence de base du .png et juste modifier la partie solide de l image. Après je sais pas si en vba c'est possible

Bonjour Nunos31,

C'est possible par VBA en utilisant la propriété Colortype de PictureFormat. Et en la faisant suivre d'un chiffre de 1 à 4 qui représente la constante msoColorType applicable.

Donc Pictureformat.Colortype = 1 à 4. Mais ce n'est qu'une variation basique même si on peut aussi jouer sur la brillance, le contraste et la transparence de l'image.

Excel ajoute un thème de couleurs qui ne peut être accessible directement. Par contre on peut refaire le thème indirectement ou en créer un autre. Comme je te réponds de mon phone je ne peux accéder à ton fichier xlsm. Mais ce soir je te ferais un exemple.

A nouveau,

Ci-dessous le fichier modifié.

Voir explications sur le côté droit de la feuille.

18testcolormodif.xlsm (59.53 Ko)
Rechercher des sujets similaires à "vba recolorier transparency image png"