Mettre en gras une cellule active Excel VBA

Résolu
johannes30 Messages postés 1 Statut Membre -  
Mike-31 Messages postés 18405 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour,

je vous sollicite pour une petite manipulation qui me rendrait un fière service, je m'explique:

j'ai un tableau excel avec beaucoup de données du style grosse base de données fournisseurs.
Je souhaiterais récupérer un peu de lisibilité lors de l'utilisation de ce tableau et je souhaiterais donc que chaque fois que je me déplace dans ce tableau la cellule sur laquelle je me trouve passe en gras pour qu'elle puisse se démarquer du reste du tableau.

J'ai excel 2007 et après quelques recherches sur le net je ne trouve rien qui corresponde a ma demande ...

Merci d'avance
Cordialement

3 réponses

  1. Patrice33740 Messages postés 8400 Date d'inscription   Statut Membre Dernière intervention   1 784
     
    Bonjour,

    Essayer ce code :
    Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    Static Gras As String
      
      If Gras <> "" Then Range(Gras).Font.Bold = False
      Gras = Target.Address
      Range(Gras).Font.Bold = True
    
    End Sub

    Pour cela : copier le code ci-dessus, Faire un clic droit sur l'onglet de la feuille concernée, Visualiser le Code, et Copier le code.
    1
    1. Patrice33740 Messages postés 8400 Date d'inscription   Statut Membre Dernière intervention   1 784
       
      PS : Ce code fonctionne aussi lors de la sélection de plusieurs cellules et quelle que soit la taille du fichier
      0
  2. Patrice67
     
    Bonjour johannes30

    Tu peux utiliser cette macro:

    Public ADDcell1, ADDcell2 As String

    Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    If ADDcell1 = "" Then ADDcell1 = ActiveCell.Address
    Range(ADDcell1).Font.ColorIndex = xlAutomatic
    Range(ADDcell1).Font.Bold = False
    ADDcell2 = ActiveCell.Address
    Selection.Font.Bold = True
    With Selection.Font
    .Color = -16776961
    End With
    ADDcell1 = ADDcell2
    End Sub

    Pour la mettre en place tu fais un clic droit sur l'onglet de la feuille où tu souhaites changer le format. Tu sélectionnes Visualiser le code et tu colles la macro.
    Quand on clique sur une cellule la valeur passe en gras rouge. Si le rouge ne convient pas enlever les lignes.
    With Selection.Font
    .Color = -16776961
    End With

    Cordialement
    Patrice67
    0
  3. Mike-31 Messages postés 18405 Date d'inscription   Statut Contributeur Dernière intervention   5 147
     
    Salut,

    Un autre code

    Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    [A1:E100].Font.Bold = False
    ActiveCell.Font.Bold = True
    End Sub

    On peut jouer avec les couleurs

    Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    [A1:E100].Font.Bold = False
    [A1:E100].Font.ColorIndex = xlAutomatic
    ActiveCell.Font.Bold = True
    ActiveCell.Font.ColorIndex = 3
    End Sub

    Ou encore jouer avec la couleur des cellules et limiter l'action du code
    Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    If Not Intersect(Selection, [A1:E100]) Is Nothing Then
    [A1:E100].Interior.ColorIndex = xlNone
    ActiveCell.Interior.ColorIndex = 3
    End If
    End Sub
    0