Une macro pour insérer une caractère
Résolu
Guilhot
Messages postés
200
Date d'inscription
Statut
Membre
Dernière intervention
-
eriiic Messages postés 25847 Date d'inscription Statut Contributeur Dernière intervention -
eriiic Messages postés 25847 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour,
j'ai pu créer une macro dans word qui insère les caractères trèfle, Carreau, coeur ou Pique dans mon texte; je voudrais faire la même chose dans excel 2007 mais je n'obtiens que le signe "?". Est il possible de faire ce que je voudrais réaliser ?
j'ai pu créer une macro dans word qui insère les caractères trèfle, Carreau, coeur ou Pique dans mon texte; je voudrais faire la même chose dans excel 2007 mais je n'obtiens que le signe "?". Est il possible de faire ce que je voudrais réaliser ?
A voir également:
- Une macro pour insérer une caractère
- Insérer une vidéo dans powerpoint - Guide
- Caractère ascii - Guide
- Caractère spéciaux - Guide
- Insérer une signature sur word - Guide
- Telecharger macro convertir chiffre en lettre excel - Télécharger - Tableur
4 réponses
Bonjour
Prendre la police symbol
=car(167) trèfle
=car(168) carreau
= car(169) coeur
=car(170) pique
Prendre la police symbol
=car(167) trèfle
=car(168) carreau
= car(169) coeur
=car(170) pique
Merci, effectivement je peux faire une macro (en passant d'une police à l'autre) qui fait apparaître le symbole trèfle dans ma cellule. Mon problème demeure quand même car dés que j'ai inscrit du texte dans la cellule le macro ne m'inscrit plus rien. Il faut peut-être que je modifie la "nature" du contenu de la cellule .... transformer en TEXTE ???
En tout cas merci pour cette réponse rapide.
En tout cas merci pour cette réponse rapide.
Bonjour,
Une proposition en vba.
Saisir /p pour pique, /c pour coeur, /k pour carreau et /t pour trèfle, garder la police Arial.
Avec en bonus coeur et carreau en rouges.
edit : voir autre version sur post suivant
eric
En essayant continuellement, on finit par réussir.
Donc plus ça rate, plus on a de chances que ça marche.(les Shadoks)
En plus du merci (si si, ça se fait !!!), penser à mettre en résolu. Merci
Une proposition en vba.
Saisir /p pour pique, /c pour coeur, /k pour carreau et /t pour trèfle, garder la police Arial.
Avec en bonus coeur et carreau en rouges.
edit : voir autre version sur post suivant
eric
En essayant continuellement, on finit par réussir.
Donc plus ça rate, plus on a de chances que ça marche.(les Shadoks)
En plus du merci (si si, ça se fait !!!), penser à mettre en résolu. Merci
Vraiment Chapeau !!! Merci beaucoup.
Si ce n'est pas trop demander: j'ai copié ça dans un fichier Excel qui supporte les macros et ça marche au poil; est ce qu'il serait possible d'intégrer dans mon Excel habituel pour que je retrouve la macro à chaque feuille ?
Est ce que je peux importer et sauvegarder ? De quelle manière ?
Très sympa et encore merci
Michel
Si ce n'est pas trop demander: j'ai copié ça dans un fichier Excel qui supporte les macros et ça marche au poil; est ce qu'il serait possible d'intégrer dans mon Excel habituel pour que je retrouve la macro à chaque feuille ?
Est ce que je peux importer et sauvegarder ? De quelle manière ?
Très sympa et encore merci
Michel
J'en profite pour améliorer, chaque caractère peut être présent plusieurs fois.
Saisir /p pour pique, /c pour coeur, /k pour carreau et /t pour trèfle, garder la police Arial
Actif sur toutes les feuille du classeur, à mettre dans Thisworkbook :
Est ce que je peux importer et sauvegarder ? De quelle manière ?
A partir d'excel 2007 il faut enregistrer le classeur en type *.xlsm pour conserver les macros.
https://www.cjoint.com/?DExuihpwMRI
eric
Saisir /p pour pique, /c pour coeur, /k pour carreau et /t pour trèfle, garder la police Arial
Actif sur toutes les feuille du classeur, à mettre dans Thisworkbook :
Option Explicit
Dim stopEvents As Boolean
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
Dim i As Long, ch As String
If Intersect(Target, Range("A2:C10")) Is Nothing Then Exit Sub
If Target.Count > 1 Or stopEvents Then Exit Sub
ch = Target
While InStr(ch, "/p") > 0
ch = Replace(ch, "/p", ChrW(&H2660))
Wend
While InStr(ch, "/c") > 0
ch = Replace(ch, "/c", ChrW(&H2665))
Wend
While InStr(ch, "/k") > 0
ch = Replace(ch, "/k", ChrW(&H2666))
Wend
While InStr(ch, "/t") > 0
ch = Replace(ch, "/t", ChrW(&H2663))
Wend
stopEvents = True
Target = ch
stopEvents = False
'rouge
For i = 1 To Len(Target)
If Mid(Target, i, 1) = ChrW(&H2665) Or Mid(Target, i, 1) = ChrW(&H2666) Then
Target.Characters(i, 1).Font.ColorIndex = 3
End If
Next i
End Sub
Est ce que je peux importer et sauvegarder ? De quelle manière ?
A partir d'excel 2007 il faut enregistrer le classeur en type *.xlsm pour conserver les macros.
https://www.cjoint.com/?DExuihpwMRI
eric
Pourtant c'est très facile de faire cette macro sous word ......je continuerai à faire Insertion, symbole, insérer, fermer, OK ...... tant pis