Séparation des cellules en fonction de la couleur du texte (Microsoft Excel)
Thomas a une colonne qui ne contient que des valeurs de texte, telles que des phrases et des phrases. Certaines cellules affichent leur texte en rouge et les autres sont en noir. Il aimerait un moyen de séparer le texte de telle sorte que les cellules de texte noir restent dans la colonne et les cellules de texte rouge soient déplacées vers la colonne suivante.
Il existe plusieurs façons d’aborder ce problème. L’approche la plus simple consiste peut-être à trier ou filtrer simplement la colonne contenant les valeurs de texte. Excel vous permet de filtrer et de trier en fonction de la couleur du texte, ce qui signifie que vous pouvez voir uniquement les cellules de texte rouge ou placer toutes les cellules de texte rouge dans une plage contiguë. Ensuite, il est facile de couper les cellules de texte rouge et de les coller dans la colonne suivante.
Par exemple, voici comment vous feriez le tri:
-
Sélectionnez les cellules contenant vos valeurs de texte.
-
Affichez l’onglet Données du ruban.
-
Cliquez sur l’outil Trier dans le groupe Trier et filtrer. Excel affiche la boîte de dialogue Trier.
-
À l’aide de la liste déroulante Trier sur, choisissez Couleur de police.
-
Utilisez la liste déroulante Ordre pour indiquer la couleur à afficher en premier dans la liste triée. (C’est ici que vous choisiriez votre couleur rouge. La liste déroulante comprend chaque couleur détectée dans la plage que vous avez sélectionnée à l’étape 1.)
-
Cliquez sur OK.
Maintenant, vos cellules sont triées, par couleur, avec la couleur spécifiée à l’étape 5 au début de la plage de cellules. Vous pouvez facilement le copier ou le déplacer dans une colonne différente. Vous pouvez utiliser les mêmes étapes générales si vous souhaitez filtrer vos valeurs de texte en fonction de la couleur de la police.
Si vous préférez, vous pouvez également utiliser une macro pour déplacer vos cellules de texte rouge.
Voici un exemple qui copie la valeur de la cellule et la couleur de police d’une cellule vers la droite.
Sub MoveRedText1() Dim c As Range If Selection.Columns.Count > 1 Then Exit Sub For Each c In Selection If c.Font.Color = vbRed Then c.Offset(0, 1) = cell.Value c.Offset(0, 1).Font.Color = vbRed c.ClearContents c.Font.Color = vbBlack End If Next c End Sub
Pour utiliser la macro, sélectionnez simplement les cellules que vous souhaitez analyser, puis exécutez la macro. Il ne copie pas tout le formatage des cellules qu’il déplace; si cela est critique, vous pouvez en fait utiliser une macro beaucoup plus simple pour faire le déplacement.
Sub MoveRedText2() Dim c As Range For Each c In Selection If c.Font.Color = vbRed Then _ c.Cut Destination:=c.Offset(0, 1) Next c End Sub
Si vous utilisez l’une de ces macros et que vos cellules de texte rouge ne bougent pas, cela peut être dû au fait que les cellules n’utilisent pas de texte rouge. Il existe de nombreuses nuances de rouge qui peuvent être affichées dans Excel, vous devrez donc modifier les macros pour vous assurer que vous vérifiez la couleur de police appropriée.
_Note: _
Si vous souhaitez savoir comment utiliser les macros décrites sur cette page (ou sur toute autre page des sites ExcelTips), j’ai préparé une page spéciale qui comprend des informations utiles.
lien: / excelribbon-ExcelTipsMacros [Cliquez ici pour ouvrir cette page spéciale dans un nouvel onglet de navigateur]
.
ExcelTips est votre source pour une formation Microsoft Excel rentable.
Cette astuce (12604) s’applique à Microsoft Excel 2007, 2010, 2013, 2016, 2019 et Excel dans Office 365.