Skip to content
The Chat Archive
gpt-4-0314· OpenAI WildChat-4.8M (AI2)

Comment en VBA Excel faire une condition pour identifier les cellules ayant le mot férié…

  1. User

    Comment en VBA Excel faire une condition pour identifier les cellules ayant le mot férié et colorier ensuite la cellule ?

  2. Assistant

    Pour colorier les cellules contenant le mot "férié" dans une plage de cellules spécifique, vous pouvez utiliser le code VBA suivant dans Excel :

    1. Appuyez sur Alt + F11 pour ouvrir l'éditeur VBA (Visual Basic for Applications).
    2. Cliquez sur "Insertion" puis sur "Module" pour insérer un nouveau module.
    3. Copiez et collez le code suivant dans le module :
    Sub ColorierFerie()
        Dim ws As Worksheet
        Dim rng As Range
        Dim cell As Range
        Dim motRecherche As String
    
        ' Spécifiez la feuille de calcul sur laquelle vous souhaitez travailler
        Set ws = ThisWorkbook.Worksheets("Feuil1") ' Modifiez "Feuil1" par le nom de votre feuille
    
        ' Spécifiez la plage de cellules à vérifier
        Set rng = ws.Range("A1:A100") ' Modifiez cette plage selon vos besoins
    
        ' Indiquez le mot à rechercher
        motRecherche = "férié"
    
        ' Parcourez chaque cellule de la plage
        For Each cell In rng
            ' Vérifiez si le mot recherché est présent dans la cellule
            If InStr(cell.Value, motRecherche) > 0 Then
                ' Si le mot est présent, coloriez la cellule
                cell.Interior.Color = RGB(255, 255, 0) ' Modifiez les valeurs RGB pour changer la couleur
            End If
        Next cell
    
    End Sub
    
    1. Modifiez la variable "ws" avec le nom de la feuille de calcul où vous souhaitez appliquer la condition.
    2. Modifiez la variable "rng" avec la plage de cellules où vous souhaitez rechercher le mot "férié".
    3. Si vous le souhaitez, modifiez les valeurs RGB pour changer la couleur de la cellule.
    4. Fermez l'éditeur VBA et revenez à Excel.
    5. Appuyez sur Alt + F8 pour ouvrir la fenêtre "Macro".
    6. Sélectionnez la macro "ColorierFerie" et cliquez sur "Exécuter" pour exécuter le code.

    Voilà, toutes les cellules contenant le mot "férié" dans la plage spécifiée seront colorées avec la couleur définie.

  3. User

    Comment en VBA Excel changer les coordonnées d'une cellule ?

  4. Assistant

    Dans VBA Excel, vous ne pouvez pas changer directement les coordonnées d'une cellule, car les coordonnées sont une propriété qui dépend de la structure de la feuille de calcul. Cependant, vous pouvez déplacer le contenu et/ou la mise en forme d'une cellule vers une autre cellule en utilisant plusieurs méthodes.

    Voici deux exemples pour déplacer le contenu et la mise en forme d'une cellule vers une autre cellule :

    Méthode 1 : Utiliser les propriétés .Value et .Interior.Color

    Sub DéplacerCellule()
    
        Dim ws As Worksheet
        Set ws = ThisWorkbook.Worksheets("Feuil1") ' Modifiez "Feuil1" par le nom de votre feuille
    
        ' Spécifiez les coordonnées des cellules source et destination
        Dim celluleSource As Range
        Dim celluleDestination As Range
        Set celluleSource = ws.Range("A1")
        Set celluleDestination = ws.Range("B2")
    
        ' Copiez le contenu et la couleur de fond de la cellule source vers la cellule de destination
        celluleDestination.Value = celluleSource.Value
        celluleDestination.Interior.Color = celluleSource.Interior.Color
    
        ' Effacez le contenu et la couleur de fond de la cellule source
        celluleSource.ClearContents
        celluleSource.Interior.Color = xlNone
    
    End Sub
    

    Méthode 2 : Utiliser la méthode .Copy

    Sub DéplacerCellule()
    
        Dim ws As Worksheet
        Set ws = ThisWorkbook.Worksheets("Feuil1") ' Modifiez "Feuil1" par le nom de votre feuille
    
        ' Spécifiez les coordonnées des cellules source et destination
        Dim celluleSource As Range
        Dim celluleDestination As Range
        Set celluleSource = ws.Range("A1")
        Set celluleDestination = ws.Range("B2")
    
        ' Copiez le contenu et la mise en forme de la cellule source vers la cellule de destination
        celluleSource.Copy celluleDestination
    
        ' Effacez le contenu et la mise en forme de la cellule source
        celluleSource.ClearContents
        celluleSource.Interior.Color = xlNone
    
    End Sub
    

    Ces exemples copient le contenu et la couleur de fond de la cellule A1 vers la cellule B2, puis effacent le contenu et la couleur de fond de la cellule A1. Vous pouvez modifier les coordonnées des cellules source et destination selon vos besoins.