Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

forme libre rayée

eastwick

XLDnaute Accro
Bonjour à toutes et tous, membres et amis du forum,
Dans le fichier joint, est-il possible d'obtenir des rayures (ou autres motifs) sur une forme libre depuis une indication dans une cellule précise. Il va de soi que cela se règle en VBA
Exemple ici en A1, il pourrait y avoir un chiffre ou autre qui indiquerait de rayer la forme.
J'ai déjà réussi, via le forum, à colorer ces mêmes formes. Aujourd'hui j'aimerais savoir si on peut y mettre tel ou tel motif de telle ou telle couleur.

Merci beaucoup
 

Pièces jointes

  • Classeur1.xlsx
    11.3 KB · Affichages: 39
  • Classeur1.xlsx
    11.3 KB · Affichages: 37

ERIC S

XLDnaute Barbatruc
Re : forme libre rayée

Bonjour

en utilisant l'enregistreur de macro pour les pattern et en adaptant selon valeur de A1

Code:
    Range("E6").Select
    ActiveSheet.Shapes.Range(Array("Freeform 1")).Select
    With Selection.ShapeRange.Fill
        .Visible = msoTrue
        Select Case Range("A1").Value
            Case 1
                .Patterned msoPatternLightVertical
            Case 2
                .Patterned msoPatternLightHorizontal
            Case Else
                .Patterned msoPattern90Percent
        End Select
    End With

A adapter
 

thebenoit59

XLDnaute Accro
Re : forme libre rayée

Bonjour eastwick, bonjour le fil.

Je te joins un fichier, dis-moi si c'est le genre de choses que tu souhaites.

Edit : Le résultat est sur la Feuil1, la Feuil2 est juste la liste des correspondances que tu vois.
J'ai intégré une recherche dans le code, pour si tu souhaites faire apparaître le motif tu n'as qu'à ajouter après la recherche : MsgBox Remplissage.
 

Pièces jointes

  • Esatwick.xlsm
    23.5 KB · Affichages: 43

thebenoit59

XLDnaute Accro
Re : forme libre rayée

Oui tu peux ajouter un code couleur.
Pour se faire :

Code:
With Selection.ShapeRange.Fill
    .Patterned Range("A1").Value
    .ForeColor.RGB = Range("B1").Interior.Color
End With

Je suis parti sur le fait que la couleur sera celle de la cellule B1. Tu peux tout à fait utiliser un code RGB classique dedans ou autre. Mais au moins tu connais la procédure .
 

eastwick

XLDnaute Accro
Re : forme libre rayée

Merci beaucoup. Si je souhaite nommer des images dans les cellules en a10 (par exemple); le code pattern en B10 et le code couleur en C10, comment dois-je procéder ?
Mon travail va consister à mettre un pattern en fonction d'un pourcentage, une image symbolisera une ville.
 

thebenoit59

XLDnaute Accro
Re : forme libre rayée

Bonjour tout le monde.
Je te joins le fichier, j'ai intégré une fonction pour créer une formule de récupération du code couleur (en colonne E pour l'exemple, ça peut t'aider pour connaître le code qui te plaît)
Tu peux faire un listing de tes villes à partir de A10 (le nom de la ville correspond au nom de ta forme, à changer selon les besoins).
Si tu modifies une cellule entre "A10" & la dernièreligne remplie en A, tes formes changent.
Sauf pour le remplissage, je n'ai pas pris le temps de faire une SelectionChange.
Par la suite, je suppose que tu vas faire appelle à des formules pour définir tes pattern et couleurs, là il faudra également changer le code et utiliser Calculate.
 

Pièces jointes

  • Eastwick.xlsm
    25.2 KB · Affichages: 52
  • Eastwick.xlsm
    25.2 KB · Affichages: 44

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…