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

inserer un caractère special

P

Patrick

Guest
Bonjour, on m'a fais parvenir ce code pour pouvoir inserer un caractère special (comme une case à cocher) dans ma forme automatique mais que dois je mettre à la place de ("nomdusignet"). Merci de m'aider.@ plus.



ActiveSheet.Shapes("nomdusignet").Top = ActiveSheet.Shapes(Application.Caller).Top
ActiveSheet.Shapes("nomdusignet").Left = ActiveSheet.Shapes(Application.Caller).witdh / 2
 
M

michel

Guest
Bonjour patrick

j'espère que le fichier joint pourra t'aider

bon week end
Michel
 

Pièces jointes

  • forms.zip
    13.2 KB · Affichages: 24
  • forms.zip
    13.2 KB · Affichages: 25
  • forms.zip
    13.2 KB · Affichages: 26
P

Patrick

Guest
Merci Michel, mais j'ai une erreure sur cette ligne: peux tu me dire ce qui se passe
ActiveSheet.Shapes("Ellipse 72").Left = ActiveSheet.Shapes(Application.Caller).witdh / 2

Merci, Patrick
 
P

Patrick

Guest
Merci Michel, c'était bien ça.
Pour le caractère spécial, il n'apparait pas encore ds mon ellipse, par contre comme pour ton exemple de couleur ça déplace mon ellipse à gauche, qu'en penses tu ? Patrick
 
M

michel

Guest
rebonjour patrick

c'est normal puisque top et width renvoient la position de la forme dans la feuille ( nottament width/2 qui décale la forme sur la gauche de la moitié de sa valeur initiale )

Il me semble que je te l'ai signalé dans le fichier en te disant que je ne comprenais pas trop ce que tu voulais faire avec cette procedure

as tu testé le dernier exemple que je me suis premis d'ajouter tout en bas dans la feuille ? normalement la forme est "cochée" quand tu cliques dessus
j'ai utilisé la macro ci dessous

Sub CaractereDansForm()
ActiveSheet.Shapes("rectangle 8").Select
With Selection
.Characters.Text = "a"
.Characters.Font.Name = "Webdings"
.Font.Size = 18
End With
End Sub



à moins que j'ai mal compris ta demande ....


bonnes soirée
Michel
 
P

Patrick

Guest
Excelent j'ai compris,ça fonctionne comme tu me l'as indiqué, c'est exactement ce que je veux, par contre j'aimerais faire la manip inverse, en recliquant dessus je voudrais qu'il disparaisse, tu peux m'indiquer la procédure, a toute. Patrick
 
M

michel

Guest
Bonsoir Patrick

l'exemple ci joint devrait répondre à ta question. il y a sans doute des soulutions plus simples mais avec ma version d'excel je suis obligé de mettre des select un peu partout , pour que cela fonctionne...

Sub CaractereDansForm()
ActiveSheet.Shapes("rectangle 8").Select
If Selection.Characters.Text = "" Then
With Selection
.Characters.Text = "a"
.Characters.Font.Name = "Webdings"
.Font.Size = 18
End With
Else
With Selection
.Characters.Text = ""
End With
End If
Range("B36").Select 'à adapter selon la position de la forme dans la feuille
End Sub


bonne soirée
Michel
 

Discussions similaires

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