Définir l’arrière-plan de couleur en fonction de la date à l’aide VBA dans Microsoft Excel
Dans cet article, nous allons créer une macro pour mettre en évidence les données pour la plage de dates définie.
Les données brutes se composent des détails quotidiens des articles vendus par les agents.
Spécifiez la date de début et de fin avant d’exécuter la macro. La macro prend la valeur de la cellule H8 comme date de début et la valeur de H9 comme date de fin. Cliquez sur le bouton «Soumettre» pour exécuter la macro.
Les données entre les dates mentionnées ont été mises en évidence en jaune.
Explication logique
Nous avons créé une macro «Marquage» pour mettre en évidence les données, en fonction de la plage de dates spécifiée. Cette macro est liée au bouton «Soumettre».
Explication du code
StartDate = Cells (8, 8) .Value EndDate = Cells (9, 8) .Value Le code ci-dessus est utilisé pour spécifier la date de début et la date de fin.
Définir Source = Range (« A1: A » & LastRow)
Le code ci-dessus est utilisé pour initialiser la plage de données source.
Définissez Start = Source.Find (CDate (StartDate), LookAt: = xlWhole)
Le code ci-dessus est utilisé pour rechercher la première occurrence de la date spécifiée.
Plage (Cellules (Start.Row, 1), Cells (Off.Row, 3)). Sélectionnez Le code ci-dessus est utilisé pour sélectionner la plage définie.
Selection.Interior.Color = RVB (255, 255, 0)
Le code ci-dessus est utilisé pour mettre en évidence la plage sélectionnée en couleur jaune.
Veuillez suivre ci-dessous pour le code
Option Explicit Sub Marking() 'Declaring Variables Dim Source As Range Dim Start As Range, Off As Range Dim StartDate As Date Dim EndDate As Date Dim LastRow As Long 'Initializing start and end date StartDate = Cells(8, 8).Value EndDate = Cells(9, 8).Value 'Getting the row number of the last cell LastRow = ActiveCell.SpecialCells(xlCellTypeLastCell).Row 'Initializing the source range Set Source = Range("A1:A" & LastRow) 'Finding the cell containing first reference of the value Set Start = Source.Find(CDate(StartDate), LookAt:=xlWhole) Set Off = Source.Find(CDate(EndDate), LookAt:=xlWhole) 'Selecting the range Range(Cells(Start.Row, 1), Cells(Off.Row, 3)).Select 'Assigning Yellow color to selection Selection.Interior.Color = RGB(255, 255, 0) End Sub
Si vous avez aimé ce blog, partagez-le avec vos amis sur Facebook et Facebook.
Nous serions ravis de vous entendre, faites-nous savoir comment nous pouvons améliorer notre travail et l’améliorer pour vous. Écrivez-nous à [email protected]