MEF speciale un peu comlpliquée

Bonjour a tous !

finies les vacances ?

Alors au boulot :)

je butte sur un truc et du coup je me demande si possible....

Je voudrais mettre en rouge et en gras uniquement les 7 derniers caractères si ma cellule contient --

ci joint exemple, il faut donc que le --12/09 pour TOTO et le --14/10 de TITI soit en rouge gras ...

en espérant avoir été clair dans ma demande

4test.xlsx (8.53 Ko)

merci

Bonjour,

Un test à insérer dans le module de la feuille :

Private Sub Worksheet_Change(ByVal Target As Range)
If Target Like "*--*" Then
    With Target.Characters(Start:=InStr(1, Target, "--"), Length:=Len(Target)).Font
        .FontStyle = "Gras"
        .Color = vbRed
    End With
    Else
    Target.Characters.Font.FontStyle = "Normal"
    Target.Characters.Font.Color = vbBlack
End If
End Sub

Ergotamine

11test.xlsm (15.50 Ko)

Merci pour ta réponse

comment je fais pour insérer ta formule....je suis largué ?

Bonjour,

Il ne s'agit pas d'une formule mais d'un code VBA. Pour le coller regarder ici : https://www.excel-pratique.com/fr/vba/introduction

Le coller VBAProject > Microsoft Excel Objets > Feuil1

Ergotamine

Bonjour

je dois etre nul mais je ne comprend pas comment mettre ce truc en place

je te joins mon fichier si tu as 5 minutes car mpoi je suis au bout de la crise de nerfs :)

2spn.xlsx (15.15 Ko)

Bonjour,

Ci-joint.

Le code sera à copier dans chaque feuille.

vba
1spn.xlsm (21.30 Ko)

J ai réussi...........!!!!!!!!!!!!!!!!!!!!!

Un grand merci a toi :)

OUPS

encore un souci, quand je remplace dans le tableau les données par des nouvelles la coloration ne fonctionne pas je fais juste un CC pourtant ?

Bonjour,

C'est "normal" le déclenchement ne se fait que lorsque le contenu de la cellule change, mais à la validation (donc lorsque l'on sort) de la cellule.
Un copier coller ne déclenche pas la procédure. Je peux soit la faire déclencher à chaque fois que vous sélectionnez une cellule, soit via une macro qui revérifie toutes les cellules. Comme vous n'avez pas expliqué le mode de déclenchement je suis parti du principe que c'est lors de l'inscription de valeur DANS la cellule. Ceci impacte la vitesse de votre fichier. Par exemple si la procédure se déclenche à chaque sélection de cellule, ce n'est pas pareil qu'à chaque changement de valeur. Comme ce n'est pas pareil que si elle se déclenche lorsque l'on se trouve dans la colonne D.

Tout est une question de description explicite du besoin.

J'ai cependant, dans le cas d'un copier coller inséré un bouton sur la feuille SEP22 à droite pour activer une macro afin de repasser à travers toutes les valeurs de la colonne D de toutes les feuilles. Après votre copier coller cliquez sur ce dernier et tout devrait être OK.

Ergotamine

3spn.xlsm (25.64 Ko)

j’ai un soucis de protection avec les macros pouvez vous me faire parvenir le texte de la macro, je devrais pouvoir m'en sortir normalement

fichier txt par exemple

merci

Bonjour,

Le code est sensiblement le même :

Sub MEF()
For Each WS In Worksheets
    For L = 2 To WS.Cells(WS.Rows.Count, 4).End(xlUp).Row
        If WS.Cells(L, 4) Like "*--*" Then
            With WS.Cells(L, 4).Characters(Start:=InStr(1, WS.Cells(L, 4), "--"), Length:=Len(WS.Cells(L, 4))).Font
                .FontStyle = "Gras"
                .Color = vbRed
            End With
            Else
            WS.Cells(L, 4).Characters.Font.FontStyle = "Normal"
            WS.Cells(L, 4).Characters.Font.Color = vbBlack
        End If
    Next L
Next WS
End Sub
vba

Ergotamine

voila tout fonctionne, la MEF fonctionne avec les nouvelles données qui remplacent les anciennes ...j aI juste un petit bug mais franchement c est déjà top

image

MERCI

Rechercher des sujets similaires à "mef speciale peu comlpliquee"