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 :

Mise en forme du texte d'une cellule


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éprouvé Avatar de Many31
    Profil pro
    Inscrit en
    Février 2007
    Messages
    198
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Février 2007
    Messages : 198
    Par défaut Mise en forme du texte d'une cellule
    Bonjour a tous pour une énieme question... cette fois ci je doute qu'il y ait des possibilité de résoudre ce pb sur Vba :/

    ==> comment mettre en forme une partie du texte contenu dans une cellule...

    Les macros enregistrée ne peuvent pas suivre sur ce sujet... une erreur d'enregistrement est produite.

    Pourtant il est possible de mettre en forme une partie du texte seulement:

    exemple
    Ce texte ci. Par A. Talon
    cet exemple est possible dans une cellule... coder cette mise en forme?? est ce possible?

  2. #2
    Invité
    Invité(e)
    Par défaut
    Bonjour

    C'est possible, regardes dans l'aide avec Characters

    Remarque : je ne me souvenais pas du nom, je l'ai retrouvé grâce à l'enregistreur de macro.

    Starec

  3. #3
    Membre éprouvé Avatar de Many31
    Profil pro
    Inscrit en
    Février 2007
    Messages
    198
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Février 2007
    Messages : 198
    Par défaut
    ouaip je viens de voir aussi -_-" je me suis fait eu par Excel.... deg

    en fait excel veut bien faire une mise en forme spécifique... la seule chose qu'il refuse c'est la sélection du texte par la souris.
    Dans ce cas là l'enregistreur ne suit plus...

    donc mon problème c'est de savoir maintenant si je peux réaliser cette mise en forme dans un objet. :/

  4. #4
    Expert confirmé
    Avatar de cafeine
    Inscrit en
    Juin 2002
    Messages
    3 904
    Détails du profil
    Informations forums :
    Inscription : Juin 2002
    Messages : 3 904
    Par défaut
    Hello,

    Un exemple de code pour mettre en évidence un mot sur une plage de cellules afin d'illustrer l'utilisation de Characters.

    Utilisation
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    highlightword   "gestion", Range("A1:A30")
    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
    Option Explicit
     
    Public Sub HighlightWord(ByVal str As String, r As Range)
     
        Dim res As Range
        Dim firstAddress As String, pos As Long
     
        ' on fait une recherche sur la plage
        With r.Cells
            Set res = .Find(What:=str, After:=r.Cells(1, 1), LookIn:=xlFormulas _
                , LookAt:=xlPart, SearchOrder:=xlByColumns, SearchDirection:=xlNext, _
                MatchCase:=False, SearchFormat:=False)
     
            If Not res Is Nothing Then
                firstAddress = res.Address
                Do
                    pos = InStr(res.Value, str)
                    Do While pos > 0
                        With res.Characters(pos, Len(str))
                            'ici on mettra en gras rouge
                            .Font.Color = vbRed
                            .Font.Bold = True
                        End With
                        pos = InStr(pos + 1, res.Value, str)
                    Loop
                    Set res = .Find(What:=str, After:=res, LookIn:=xlFormulas _
                            , LookAt:=xlPart, SearchOrder:=xlByColumns, SearchDirection:=xlNext, _
                            MatchCase:=False, SearchFormat:=False)
                Loop While Not res Is Nothing And res.Address <> firstAddress
            End If
        End With
     
        Set res = Nothing
     
    End Sub

  5. #5
    Membre éprouvé Avatar de Many31
    Profil pro
    Inscrit en
    Février 2007
    Messages
    198
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Février 2007
    Messages : 198
    Par défaut
    Merci a vous. Suite au recherche je pense qu'une simple combobox ne pourrait suffire et comme j'arrive pas a activer les Rich Text Box je pense que je vais pas perséver dans cette voie et me contenter de mettre en forme le texte des cellules :/

Discussions similaires

  1. [XL-2003] Mise en forme de texte dans une cellule
    Par PapyInfo dans le forum Conception
    Réponses: 14
    Dernier message: 22/12/2013, 00h47
  2. Mise en forme de texte dans une barre d'outils
    Par Christophe dans le forum Débuter
    Réponses: 2
    Dernier message: 02/01/2012, 09h48
  3. Réponses: 2
    Dernier message: 24/07/2009, 14h32
  4. Mise en forme de texte avec une css
    Par Gizmil dans le forum Intégration
    Réponses: 1
    Dernier message: 28/11/2007, 22h20
  5. VBA/Excel "Mise en forme de texte dans des cellules"
    Par Invité dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 06/03/2007, 17h20

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