Excel-VBA recherche verticale du 1er mot gras

Résolu/Fermé
mod77 Messages postés 1273 Date d'inscription vendredi 10 juillet 2009 Statut Membre Dernière intervention 14 janvier 2024 - 6 févr. 2010 à 22:16
mod77 Messages postés 1273 Date d'inscription vendredi 10 juillet 2009 Statut Membre Dernière intervention 14 janvier 2024 - 7 févr. 2010 à 00:11
Bonjour,
Je voudrais récupérer dans une colonne le 1er mot écrit en gras par une recherche verticale vers le haut.
J'explique: dans la colonne A j'ai des noms qui sont inscrit et certaine fois se sont des mots en gras, ainsi:
[A]
RdC
Salle video
salle chimie
Niv 1
Salle info
..
Je récupère dans un tableau en colonne H les noms de certaine salle mais je voudrais aussi récupérer le nom du niveau qui est en gras pour le mettre en colonne G, ainsi:
[G] [H]
RdC Salle

Quelqu'un peut-il m'écrire comment le faire en vba SVP ?

Merci
A voir également:

4 réponses

Le Pingou Messages postés 12041 Date d'inscription mercredi 11 août 2004 Statut Contributeur Dernière intervention 22 avril 2024 1 425
6 févr. 2010 à 23:20
Bonjour,
Une petite procédure pour trouver les cellules en gras.
Il suffit de l'adapter selon vos besoin.
Sub trouverGras()
' boucle sur la colonne A de la ligne 50 à 1
' attention, commence par la fin
For c = 50 To 1 Step -1
If Cells(c, 1).Font.Bold = True Then
MsgBox "la cellule " & Cells(c, 1).Address & " est en gras"
End If
Next c
End Sub
--

Salutations.
Jean-Pierre
0
mod77 Messages postés 1273 Date d'inscription vendredi 10 juillet 2009 Statut Membre Dernière intervention 14 janvier 2024 53
6 févr. 2010 à 23:46
Bonsoir Le Pingou,

Je ne peux malheureusement pas adapter votre solution, se serait trop long pour l'expliquer (a cause du double clic), mais existe une formule qui ressemblerait à celle-ci, SVP ?

livide = Cells(Columns(1).Cells.Count, [“A”]).End(xlUp).Row - 1

Si j'essaie: motgras = cells(columns(1).font.bold, ["A"]).End(xlUp).Row -1

est-ce possible ?
0
Le Pingou Messages postés 12041 Date d'inscription mercredi 11 août 2004 Statut Contributeur Dernière intervention 22 avril 2024 1 425
6 févr. 2010 à 23:52
Bonjour,
Désolé, pas de formule de ce type à ma connaissance.
Par contre mon code est facile à intégrer, vous devriez avoir ses lignes dans votre procédure:
livide = Cells(Columns(1).Cells.Count, ["A"]).End(xlUp).Row - 1
For c = livide To 1 Step -1
If Cells(c, 1).Font.Bold = True Then
MsgBox "la cellule " & Cells(c, 1).Address & " est en gras"
End If
Next c

Vous récupérez l'adresse de la cellule au niveau de la [MsgBox] !
0
mod77 Messages postés 1273 Date d'inscription vendredi 10 juillet 2009 Statut Membre Dernière intervention 14 janvier 2024 53
7 févr. 2010 à 00:11
Merci Le Pingou!
0