Advanced Gantt Chart Template
This Gantt chart uses a stacked bar chart to display the tasks and their corresponding date ranges. Completed days are green and remaining days are red, see image above.
The chart utilizes an Excel defined Table in a very efficient way, you don't need to adjust chart data source ranges when you add or delete records. The Excel defined Table takes care of that for you.
How to build worksheet
First you need to convert your data into an Excel defined Table.
Excel defined Table
- Select a cell in your data set.
- Press CTRL + T.
- Enable the checkbox if the data set contains column headers.
- Click OK.
Now you need to create a stacked bar chart.
Insert a stacked bar chart
- Select one of the cells in the Excel defined Table.
- Go to tab "Insert" on the ribbon.
- Click on "Insert Column or Bar Chart" button.
- Click on "Stacked Bar chart" button.
- A chart appears, however, we need to customize it quite a lot before we can use it.
Customize stacked bar chart
The data source ranges are not what we want but we can easily change those.
- Right click on chart
- Select "Data source..."
- Change the first Legend entry "Days" so i points to column "Start Date" in the Excel defined Table".
- Click "Edit" button (Horizontal (Category) Axis Labels and change the cell reference so it points to the "Activity" column on the Excel defined Table.
- Click OK button.
The chart now looks like this:
We are now going to remove the blue bar.
- Double-click on one of the blue bars to open the format pane.
- Click on the Fill & Line button.
- Select "No fill".
If you want the tasks to be arranged in reverse order then follow these steps.
- Double click on the y-axis categories to open the Format Pane, see image above.
- Click on "Axis Options" button.
- Click the checkbox "Categories in reverse order.
The image now looks like this, the dates are however in a mess.
- Double-click on x-axis values to open the Format Pane.
- Click on "Axis Options" button.
- The "minimum" value is the number equivalent to an Excel date, in this case, 10/24/2011. The first date range starts at 20/11/2011 which is number 40868. I will use 40867.
- Feel free to change the maximum value as well.
I recommend that you apply minor gridline to make the chart easier to read.
- Right-click on x-axis values.
- Click "Add minor gridlines".
- Change the "Minor" value to 1 in the Format Pane.
- Select and delete the major gridlines.
Repeat above steps but this time with y-axis values.
If you prefer the x-axis values below the chart then double-click the y-axis values to open the Format Pane.
Click "Horizontal axis crosses" At maximum category.
Recommended blog posts
Gantt Chart with Repeated Tasks via Excel XY Chart | Peltier Tech Blog
Question: How do I create a chart that dynamically adds the values, as i type them on the worksheet? Answer: […]
How to use mouse hover on a worksheet [VBA]
I recently discovered an interesting technique about using a user defined function in a HYPERLINK function. Jordan at the Option […]
Change chart data range using a Drop Down List [VBA]
In this article I will demonstrate how to quickly change chart data range utilizing a combobox (drop-down list). The above […]
The calendar shown in the image above highlights events based on frequency. It is made only with a few conditional […]
This chart is an arrow chart that has horizontal and vertical lines, positive arrows are green and negative arrows are […]
Today I am going to show you how to create a dynamic Gantt chart in excel 2007. A Gantt chart helps […]
Tesh asks: How easy is it to modify this for recurring tasks (weekdays, weekly, monthly, quarterly and yearly) and maybe […]
Plot date ranges in a calendar part 2
I will in this article demonstrate a calendar that automatically highlights dates based on date ranges, the calendar populates names […]
Geoff asks: Hi Oscar, I have a cross reference table we use for shift scheduling. The x-axis is comprised of […]
2 Responses to “Advanced Gantt Chart Template”
Leave a Reply to Tammyw
How to comment
How to add a formula to your comment
<code>Insert your formula here.</code>
Convert less than and larger than signs
Use html character entities instead of less than and larger than signs.
< becomes < and > becomes >
How to add VBA code to your comment
[vb 1="vbnet" language=","]
Put your VBA code here.
[/vb]
How to add a picture to your comment:
Upload picture to postimage.org or imgur
Paste image link to your comment.
Hi Oscar,
I need to chart task planned v's actuals and i'm stuck. i've tried gantt & x/y but can't get it to work for multiple calendar periods.
Example data
Deliverables Period11 Actuals11 Period 12 Actuals 12
Task 1 17/11/2014 12/11/2014 15/12/2014 17/12/2014
Task 2 19/11/2014 20/11/2014 17/12/2014
Task 3 20/11/2014 20/11/2014 18/12/2014
Task 4 20/11/2014 24/11/2014 18/12/2014
Any help appreciated.
Tammyw,
What are the calendar periods?
Task 1 17/11/2014 - 12/11/2014 and 15/12/2014 - 17/12/2014?