Comment copier la mise en forme de la cellule source lorsqu’on utilise RECHERCHEV dans Excel ?
Dans les articles précédents, nous avons expliqué comment conserver la couleur de fond lors de l’utilisation de RECHERCHEV dans Excel. Dans cet article, découvrez une méthode permettant de copier intégralement la mise en forme de la cellule résultat avec RECHERCHEV. Suivez ces étapes :
Copier la mise en forme source lors de l’utilisation de RECHERCHEV dans Excel avec une fonction personnalisée
Supposons que vous disposiez d’un tableau tel que celui illustré ci-dessous. Vous souhaitez maintenant vérifier si une valeur donnée (dans la colonne E) figure dans la colonne A, puis renvoyer la valeur correspondante avec sa mise en forme depuis la colonne C. Voici les étapes à suivre pour y parvenir.

1. Dans la feuille de calcul contenant la valeur à rechercher avec RECHERCHEV, cliquez avec le bouton droit sur l’onglet de la feuille, puis sélectionnez Afficher le code dans le menu contextuel. Voir capture d’écran :

2. Dans la fenêtre Microsoft Visual Basic pour Applications qui s’ouvre, copiez le code VBA ci-dessous dans la fenêtre Code.
Code VBA 1 : RECHERCHEV et Valeur de retour avec mise en forme
Sub Worksheet_Change(ByVal Target As Range)
'Update by Extendoffice 20211203
Dim I As Long
Dim xKeys As Long
Dim xDicStr As String
On Error Resume Next
Application.ScreenUpdating = False
Application.CutCopyMode = False
xKeys = UBound(xDic.Keys)
If xKeys >= 0 Then
For I = 0 To UBound(xDic.Keys)
xDicStr = xDic.Items(I)
If xDicStr <> "" Then
Set xRg = Application.Range(xDicStr)
xRg.Copy
Range(xDic.Keys(I)).PasteSpecial xlPasteFormats
Else
Range(xDic.Keys(I)).Interior.Color = xlNone
End If
Next
Set xDic = Nothing
End If
Application.ScreenUpdating = True
Application.CutCopyMode = True
End Sub
3. Cliquez ensuite sur Insertion > Module, puis copiez le code VBA ci-dessous dans la fenêtre Module.
Code VBA 2 : RECHERCHEV et Valeur de retour avec mise en forme
Public xDic As New Dictionary
'Update by Extendoffice 20211203
Function LookupKeepFormat(ByRef FndValue, ByRef LookupRng As Range, ByRef xCol As Long)
Dim xFindCell As Range
On Error Resume Next
Application.ScreenUpdating = False
Set xFindCell = LookupRng.Find(FndValue, , xlValues, xlWhole)
If xFindCell Is Nothing Then
LookupKeepFormat = " "
xDic.Add Application.Caller.Address, " "
Else
LookupKeepFormat = xFindCell.Offset(0, xCol - 1).Value
xDic.Add Application.Caller.Address, xFindCell.Offset(0, xCol - 1).Address(External:=True)
End If
Application.ScreenUpdating = True
End Function 4. Cliquez sur Outils > Références. Cochez ensuite la case Microsoft Script Runtime dans la boîte de dialogue Références – VBAProject. Voir la capture d’écran :

5. Appuyez sur les touches Alt + Q pour fermer la fenêtre Microsoft Visual Basic pour Applications.
6. Sélectionnez une cellule vide adjacente à la valeur recherchée, saisissez la formule =LookupKeepFormat(E2;$A$1:$C$8;3) dans la Barre de formule, puis appuyez sur la touche Entrée.

Remarque : Dans la formule, E2 contient la valeur à rechercher, $A$1:$C$8 correspond à la plage du tableau, et le chiffre 3 indique que la valeur à renvoyer se trouve dans la troisième colonne du tableau. Adaptez ces éléments selon vos besoins.
7. Maintenez la sélection sur la première cellule de résultat, puis faites glisser la poignée de recopie vers le bas pour appliquer automatiquement tous les résultats avec leur mise en forme, comme illustré dans la capture d’écran ci-dessous.


Libérez la magie d’Excel avec Kutools IA
- Exécution intelligente : effectuez des opérations sur les cellules, analysez des données et créez des graphiques, le tout à partir de commandes simples.
- formules personnalisées : créez des formules sur mesure pour rationaliser vos flux de travail.
- Programmation VBA : Écrivez et implémentez du code VBA en toute simplicité.
- Interprétation de formules : Décryptez facilement les formules complexes.
- Traduction de texte : Franchissez les barrières linguistiques directement depuis vos feuilles de calcul.
Articles associés :
- Comment utiliser RECHERCHEV pour renvoyer la couleur de fond associée à la valeur recherchée dans Excel ?
- Comment utiliser RECHERCHEV pour obtenir un résultat au format date plutôt qu’un nombre dans Excel ?
- Comment combiner RECHERCHEV et SOMME dans Excel ?
- Comment utiliser RECHERCHEV pour récupérer la valeur située dans la cellule adjacente ou suivante dans Excel ?
- Comment utiliser RECHERCHEV pour obtenir VRAI ou FAUX (ou OUI ou NON) dans Excel ?
Meilleurs outils de productivité Office
Boostez vos compétences Excel avec Kutools pour Excel et découvrez une efficacité inégalée.Kutools pour Excel propose plus de 300 fonctionnalités avancées pour améliorer votre productivité et Gagner du temps.Cliquez ici pour obtenir la fonctionnalité dont vous avez le plus besoin...
Office Tab apporte une interface à onglets à Office et rend votre travail bien plus facile
- Activez l’édition et la lecture par onglets dans Word, Excel, PowerPoint, Publisher, Access, Visio et Project.
- Ouvrez et créez plusieurs documents dans de nouveaux onglets de la même fenêtre, plutôt que dans de nouvelles fenêtres.
- Augmente votre productivité de 50 % et vous fait économiser des centaines de clics de souris chaque jour !
Tous les compléments Kutools. Un seul installateur
Kutools for Office regroupe les compléments pour Excel, Word, Outlook et PowerPoint, ainsi que Office Tab Pro, ce qui en fait le choix idéal pour les équipes travaillant à travers les applications Office.
- Suite tout-en-un— Compléments Excel, Word, Outlook et PowerPoint + Office Tab Pro
- Un seul installateur, une seule licence— installation en quelques minutes (compatible MSI)
- Fonctionne mieux ensemble— productivité optimisée dans toutes les applications Office
- Essai gratuit de 30 jours avec toutes les fonctionnalités— aucune inscription, aucune carte bancaire
- Meilleur rapport qualité-prix— économisez par rapport à l’achat de compléments individuels