How to calculate quarter start date or end date based on a given date in Excel?
When working with business data, financial records, or planning tasks that are organized by quarters, it is often necessary to determine the beginning or ending dates of a quarter for a list of given dates. For example, you may need to quickly retrieve the start and end dates of the quarter for each transaction or event captured in your spreadsheet. Excel does not offer a direct function for this purpose, but there are practical methods that allow you to perform this operation efficiently. The methods covered below will help you seamlessly compute quarter boundaries for each listed date, ensuring consistency and accuracy in your reporting and analysis. You may find these steps especially valuable for period-based summaries, reporting deadlines, or aligning data with fiscal quarters. The solutions discussed include formulas and VBA code, catering to both quick manual processing and batch automation needs.
Calculate quarter’s start date or end date based on given date with formulas
VBA macro: Automatically calculate and fill quarter start and end dates for a range of dates
Calculate quarter’s start date or end date based on given date with formulas
To get the start or end date of a quarter for any given date, you can use straightforward formulas in Excel. This is particularly useful for quickly referencing key time periods without manual lookups, and it works best when you need to apply the calculation to a reasonably sized list.
The following steps demonstrate how to efficiently calculate quarter boundaries using Excel formulas. This approach is ideal when you want to avoid VBA or add-in solutions and prefer a formula-based workflow that updates results dynamically as your data changes. However, for datasets with thousands of entries or mixed/dynamic ranges, automation or scripting options might offer better scalability.
To calculate the start date of a quarter based on a date:
1. Click into a blank cell where you want the quarter start date to appear, for example, cell B2 if your dates are in column A.
2. Enter the following formula:
=DATE(YEAR(A2),FLOOR(MONTH(A2)-1,3)+1,1)
3. Press Enter to confirm. Then, drag the fill handle (small square at the bottom-right corner of the cell) down to apply the formula to other rows as needed. This will compute the start date of the quarter for each corresponding date in column A.
Tip: Ensure your cell references are correct; for example, use A2, A3, etc., based on where your dates are located. Formatting the result cell as a date is recommended for proper display.
This formula works by extracting the year from your date and calculating the proper month for the start of the quarter, always resulting in the first day of the respective quarter.
To calculate the end date of a quarter based on a date:
1. Select a blank cell where you want the quarter-end date to be displayed, for instance, cell C2.
2. Enter the following formula:
=DATE(YEAR(A2),((INT((MONTH(A2)-1)/3)+1)*3)+1,1)-1
3. Press Enter to apply. Drag the fill handle down alongside your data to calculate quarter-end dates for all rows.
The formula finds the first day of the next quarter and subtracts 1, thus giving the actual last day of the quarter for each date.
If your worksheet contains many dates, consider converting your data to an Excel Table so formulas are automatically applied to new rows. Also, ensure your cells are formatted as "Date" to display the results correctly.
Precautions and Tips:
- Both formulas assume the source dates are valid Excel dates. Incorrect or text-formatted dates may cause errors.
- If you see a serial number instead of a date, format the result cell as "Short Date" or "Long Date" via the Format Cells dialog.
- Review your regional date settings if you encounter unexpected results.
- Adjustment for fiscal year quarters (if your organization's quarters start from a month other than January) would require customizations to the formula.
If you experience unfamiliar #VALUE! errors, check for empty or non-date cells in your source range. For bulk updates or automatic calculations across different date ranges, you may want to consider the VBA macro approach described below.
VBA macro: Automatically calculate and fill quarter start and end dates for a range of dates
If you frequently need to calculate the start and end dates of quarters for a large or variable range of dates, a VBA macro allows for fast and automatic processing. This method is effective in large spreadsheets, supports dynamic data ranges, and helps to minimize manual entry and errors. However, it does require enabling macros and may not be suitable in strict security policy environments.
Advantages: Automates the entire process for large datasets, supports dynamic ranges, and minimizes manual risks.
Limitations: Requires macro-enabled workbooks and basic knowledge of the VBA editor; some organizations may restrict macro usage.
Follow these steps to set up and use the macro:
1. Press Alt + F11 to open the Microsoft Visual Basic for Applications editor.
2. In the VBA window, click Insert > Module to create a new module.
3. Copy and paste the following VBA code into the module window:
Sub FillQuarterStartEndDates()
Dim rng As Range
Dim cell As Range
Dim startCol As Long
Dim endCol As Long
On Error Resume Next
xTitleId = "KutoolsforExcel"
Set rng = Application.Selection
Set rng = Application.InputBox("Select the date range to process:", xTitleId, rng.Address, Type:=8)
If rng Is Nothing Then Exit Sub
startCol = rng.Columns(rng.Columns.Count).Column + 1
endCol = rng.Columns(rng.Columns.Count).Column + 2
' Add headers if necessary
If rng.Rows(1).Row = 1 Or rng.Offset(-1, 0).Cells(1, 1).Value = "" Then
rng.Cells(1, rng.Columns.Count + 1).Value = "Quarter Start Date"
rng.Cells(1, rng.Columns.Count + 2).Value = "Quarter End Date"
End If
For Each cell In rng
If IsDate(cell.Value) Then
' Quarter start date
cell.Offset(0, rng.Columns.Count).Value = DateSerial(Year(cell.Value), ((Int((Month(cell.Value) - 1) / 3)) * 3) + 1, 1)
' Quarter end date
cell.Offset(0, rng.Columns.Count + 1).Value = DateSerial(Year(cell.Value), (Int((Month(cell.Value) - 1) / 3) + 1) * 3 + 1, 1) - 1
Else
cell.Offset(0, rng.Columns.Count).Value = "N/A"
cell.Offset(0, rng.Columns.Count + 1).Value = "N/A"
End If
Next cell
End Sub
4. Return to Excel. Select the range of date cells you want to process.
5. Press F5 key or click Run button.
6. In the dialog box, confirm or select the exact date range you want to calculate for, then click OK.
The macro will automatically insert two new columns—one for the quarter start date and one for the quarter end date—next to the selected range, populating them with calculated results, or "N/A" for any non-date entry.
Notice:
- Always back up your data before running macros, in case of accidental overwrites.
- The macro identifies invalid or empty cells and marks them as "N/A" so you can easily spot issues.
- If you encounter any errors or the macro does not run, ensure macros are enabled in your Excel settings, and check there are no protected sheets that block writing new columns.
- To customize quarter logic for fiscal years starting in months other than January, you will need to adjust the code accordingly.
In summary, both methods let you generate quarterly period boundaries based on your specific workflow. Consider using formulas for quick reference and small data, and the macro solution for automating larger or repetitive tasks. If you experience issues or uncertain results, double-check date formatting and range selections. Consistent data structure reduces the chance of errors and boosts efficiency whether you use manual or automated calculations.

Unlock Excel Magic with Kutools AI
- Smart Execution: Perform cell operations, analyze data, and create charts—all driven by simple commands.
- Custom Formulas: Generate tailored formulas to streamline your workflows.
- VBA Coding: Write and implement VBA code effortlessly.
- Formula Interpretation: Understand complex formulas with ease.
- Text Translation: Break language barriers within your spreadsheets.
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!
All Kutools add-ins. One installer
Kutools for Office suite bundles add-ins for Excel, Word, Outlook & PowerPoint plus Office Tab Pro, which is ideal for teams working across Office apps.





- All-in-one suite — Excel, Word, Outlook & PowerPoint add-ins + Office Tab Pro
- One installer, one license — set up in minutes (MSI-ready)
- Works better together — streamlined productivity across Office apps
- 30-day full-featured trial — no registration, no credit card
- Best value — save vs buying individual add-in