Impostare il colore di sfondo in base alla data utilizzando VBA in Microsoft Excel
In questo articolo creeremo una macro per evidenziare i dati per l’intervallo di date definito.
I dati grezzi consistono in dettagli giornalieri degli articoli venduti dagli agenti.
Specificare la data di inizio e di fine prima di eseguire la macro. La macro prende il valore nella cella H8 come data di inizio e il valore in H9 come data di fine. Fare clic sul pulsante “Invia” per eseguire la macro.
I dati tra le date menzionate sono stati evidenziati in colore giallo.
Spiegazione logica
Abbiamo creato una macro “Marcatura” per evidenziare i dati, in base all’intervallo di date specificato. Questa macro è collegata al pulsante “Invia”.
Spiegazione del codice
StartDate = Cells (8, 8) .Value EndDate = Cells (9, 8) .Value Il codice sopra viene utilizzato per specificare la data di inizio e la data di fine.
Set Source = Range (“A1: A” & LastRow)
Il codice precedente viene utilizzato per inizializzare l’intervallo di dati di origine.
Imposta Start = Source.Find (CDate (StartDate), LookAt: = xlWhole)
Il codice precedente viene utilizzato per trovare la prima occorrenza della data specificata.
Intervallo (Celle (Start.Row, 1), Celle (Off.Row, 3)) Seleziona Il codice sopra viene utilizzato per selezionare l’intervallo definito.
Selection.Interior.Color = RGB (255, 255, 0)
Il codice sopra viene utilizzato per evidenziare l’intervallo selezionato in colore giallo.
Segui sotto per il codice
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
Se ti è piaciuto questo blog, condividilo con i tuoi amici su Facebook e Facebook.
Ci piacerebbe sentire la tua opinione, facci sapere come possiamo migliorare il nostro lavoro e renderlo migliore per te. Scrivici a [email protected]