Modifier la mise en forme dans un cellule [Résolu/Fermé]

Signaler
Messages postés
11
Date d'inscription
samedi 28 juin 2014
Statut
Membre
Dernière intervention
29 juin 2014
-
Messages postés
11
Date d'inscription
samedi 28 juin 2014
Statut
Membre
Dernière intervention
29 juin 2014
-
Bonjour,

Je souhaite obtenir la fonction suivant :
sur l'ensemble d'un fichier excel dès que l'on rencontre la ponctuation "deux points" passer le texte en non gras.

exemple :
texte texte : test test test...
texte texte texte : test test
...

Je pense qu'une macro pourrait m'aider à gagner du temps !

D'avance merci pour vos retour.

3 réponses

Messages postés
12905
Date d'inscription
mercredi 16 janvier 2013
Statut
Membre
Dernière intervention
17 janvier 2021
2 101
Rebonjour

Macro à mettre dans le worksheet de la feuille à traiter :

Sub normal()
Dim c As Range
For Each c In ActiveSheet.UsedRange
If InStr(c, ":") > 0 Then
lg = Len(c.Value)
c.Characters(Start:=InStr(c, ":"), Length:=lg - InStr(c, ":")).Font.FontStyle = "Normal"
End If
Next

End Sub

Cdlmnt
1
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

CCM 63550 internautes nous ont dit merci ce mois-ci

Messages postés
11
Date d'inscription
samedi 28 juin 2014
Statut
Membre
Dernière intervention
29 juin 2014

Voilà Via55, je viens de tester et la macro fonctionne très bien jusqu'au bout sur une feuille.
Peut-on obtenir le même résultat sur l'ensemble d'un classeur (j'ai tenté en sélectionnant plusieurs onglets en même temps puis en sélectionnant une zone avec plusieurs onglets) mais la requête ne passe pas, elle reste sur la feuille active.

Existerait-il une possibilité ? Si oui, je suis preneuse ;)
Merci beaucoup !!
Marie
Messages postés
12905
Date d'inscription
mercredi 16 janvier 2013
Statut
Membre
Dernière intervention
17 janvier 2021
2 101
Oui ça ne fonctionne que sur une feuille parce que je t'avais dit de mettre la macro dans le Worksheet de la feuille à traiter ,
mais si tu veux que la macro soit disponible dans tout le classeur il suffit de la mettre dans un Module tout simplement (Insertion Module dans l'Editeur VBA), après elle s'appliquera dans la feuille à partir de laquelle tu la lanceras

Si au contraire tu veux qu'elle s'applique automatiquement à TOUTES les feuilles du classeur dès son lancement, il faut toujours la mettre dans un module puis la modifier ainsi en rajoutant ces lignes après celle Dim C..:

For n= 1 to Sheets.Count
Sheets(n).Select

puis rajouter un Next n avant le End sub

Cdlmnt
Messages postés
11
Date d'inscription
samedi 28 juin 2014
Statut
Membre
Dernière intervention
29 juin 2014

Bonjour Via55,

Je découvre avec toi l'action dans un classeur. J'ai tenté de placer le code dans un module de l'Editeur VBA mais je dois mal faire... la fonction s'applique trjs et uniquement au bouton de la feuille active.

Si tu le veux bien, je te laisse ma maquette pour que tu regardes.

https://www.cjoint.com/?0FDlnXxlHVF

D'avance merci.


Bon dimanche !
Marie.
Messages postés
12905
Date d'inscription
mercredi 16 janvier 2013
Statut
Membre
Dernière intervention
17 janvier 2021
2 101
Bonjour Marie

1) j'ai mis toutes les macros dans le même module (et supprimé les modules vides)

2) les 2 boutons dans Modele sont gênants; je n'ai laissé qu'un seul bouton qui lance la macro principale de création des onglets
puis cette macro principale lance elle même la macro dispatch qui remplit les onglets puis la macro normal qui les mets en forme (en rajoutant dans cette macro les lignes que je te donnais dans mon dernier message pour boucler sur tous les onglets)

3) Laisser un bouton dans chaque onglet n'est pas terrible et va provoquer une erreur si on clique dessus donc j'ai mis dans la macro principale une ligne qui supprime le bouton dans l'onglet créé

https://www.cjoint.com/?0FDnpIAt0NF

Bon dimanche également
Messages postés
11
Date d'inscription
samedi 28 juin 2014
Statut
Membre
Dernière intervention
29 juin 2014

Bonsoir Via55,

Voilà c'est bouclé, j'ai terminé mes mises en forme et le fichier fonctionne à merveille !!
Merci pour ton aide précieuse :)) sans toi je n'aurais pas pu arriver à un résultat aussi opérationnel et net.

Au plaisir.
Marie.
Messages postés
17300
Date d'inscription
dimanche 17 février 2008
Statut
Contributeur
Dernière intervention
13 janvier 2021
4 431
Bonjour,

Pas forcement besoin d'une macro mais faudrait il comprendre la demande, et dans les explication quel est la différence

exemple :
texte texte : test test test...
texte texte texte : test test
Messages postés
11
Date d'inscription
samedi 28 juin 2014
Statut
Membre
Dernière intervention
29 juin 2014

Je tente juste d'être la plus explicite possible. C'est pourquoi l'exemple ;) J'en conviens pas forcément tjrs nécessaire.
Messages postés
17300
Date d'inscription
dimanche 17 février 2008
Statut
Contributeur
Dernière intervention
13 janvier 2021
4 431
Et parce que la question est flou, on demande des explications pour ne pas répondre à côté on hérite d'un moins un
Drôle de mentalité, je m'en souviendrais
Messages postés
11
Date d'inscription
samedi 28 juin 2014
Statut
Membre
Dernière intervention
29 juin 2014

Ah non désolé, j'ai pensé que le - signifiait que le commentaire n'avait pas d'intérêt particulier pour la réponse.
Je ne pensais pas qu'il pouvait avoir une incidence quelconque pour toi... il est retiré :)
Bonne soirée.
Marie.
Messages postés
11
Date d'inscription
samedi 28 juin 2014
Statut
Membre
Dernière intervention
29 juin 2014

C'était pas bien méchant comme erreur à +1 près ;)

Merci bcp, je vais la tester au plus vite !


--