How to hide rows based on today’s date in Excel?
Supposing you have a fruit table in a worksheet as the below screenshot shown, and you need to hide all rows before or after current date (6/14/2016) in the table. This article provides three methods for you.
Hide rows based on today’s date with the Filter function
Hide rows based on today’s date with VBA code
Hide rows based on today’s date with Kutools for Excel
Hide rows based on today’s date with the Filter function
With the Filter function in Excel, you can easily filter out all needed rows and hide all unwanted rows based on today’s date.
1. In the table, please click the drop-down button on the Date column, and then click Date Filters > Before or After. See screenshot:
Notes:
2. In the Custom AutoFilter dialog box, click the Date Picker button next to the is after box, and then click the Today button in the calendar. And then click the OK button.
Then all rows before today’s date are hidden immediately.
Hide rows based on today’s date with VBA code
You can also apply VBA code to hide rows based on today’s date in Excel. Please do as follows.
1. Press Alt + F11 keys simultaneously to open the Microsoft Visual Basic for Applications window.
2. In the Microsoft Visual Basic for Applications window, please click Insert > Module. Then copy and paste the following VBA code into the window.
VBA code: Hide rows based on today’s date in Excel
Private Sub Hidebtn_Click()
Dim xRg As Range
Dim xTxt As String
Dim xCell As Range
On Error Resume Next
If ActiveWindow.RangeSelection.Count > 1 Then
xTxt = ActiveWindow.RangeSelection.AddressLocal
Else
xTxt = ActiveSheet.UsedRange.AddressLocal
End If
Set xRg = Application.InputBox("Please select range:", "Kutools for Excel", xTxt, , , , , 8)
If xRg Is Nothing Then Exit Sub
Application.ScreenUpdating = False
For Each xCell In xRg
If xCell.Value < Now Then
xCell.EntireRow.Hidden = True
End If
Next
End Sub
3. Press the F5 key, in the popping up Kutools for Excel dialog box, select the date range column, and then click the OK button.
Now all rows before today’s date are hidden immediately.
Notes:
VBA code: unhide all hidden rows in Excel
Private Sub Showbtn_Click()
Rows.EntireRow.Hidden = False
End Sub
Hide rows based on today’s date with Kutools for Excel
With the Select Specific Cells utility of Kutools for Excel, you can easily select all rows before or after today’s date, and then hide them manually.
Before applying Kutools for Excel, please download and install it firstly.
1. Select the date list in your table, and then click Kutools > Select > Select Specific Cells.
2. In the Select Specific Cells dialog box, select the Entire row option in the Selection type section, and select Less than or Greater than option (here I select the Less than option) in the first Specific type drop-down list, then enter today’s date into the next text box. Finally click the OK button. See screenshot:
3. Then a dialog box pops up to tell you how many rows were selected, please click the OK button. And you can see all rows before today’s date are selected as below screenshot shown.
4. Right click on the selection, then click Hide in the right-clicking menu to hide all selected rows before today’s date.
If you want to have a free trial (30-day) of this utility, please click to download it, and then go to apply the operation according above steps.
Related articles:
- How to hide checkbox when row is hidden in Excel?
- How to hide/unhide rows or columns with plus or minus sign in Excel?
Best Office Productivity Tools
Supercharge Your Excel Skills with Kutools for Excel, and Experience Efficiency Like Never Before. Kutools for Excel Offers Over 300 Advanced Features to Boost Productivity and Save Time. Click Here to Get The Feature You Need The Most...
Office Tab Brings Tabbed interface to Office, and Make Your Work Much Easier
- Enable tabbed editing and reading in Word, Excel, PowerPoint, Publisher, Access, Visio and Project.
- Open and create multiple documents in new tabs of the same window, rather than in new windows.
- Increases your productivity by 50%, and reduces hundreds of mouse clicks for you every day!