Im not the best but I have become very very very familiar with Excel. and not sure if some have miss-interpreted your question, but I would believe there is a big difference between have Excel create the schedule for you, or use Excel to just manually input the Hours like it sounds like you described. Because of how familiar Iv become with it, I believe both is more then doable with Excel, however the latter is much easyer. 
From the sound of it you dont seem to familiar with the variety of functions.. I have become familiar with Excel but not VB macro's. So I dont know how they affect Excel on a processing level, I'd imagine VB is more efficent(if done right) but I wont comment on that at all because im not qualified for VB. 
For starters though, I would recomend you google and learn Volatile Functions for excel.. So you can minimize the use of them, especialy if used with arrays. You'd be saprized how many non-volatile alternatives there are, even if you dont know VB as I. If you google these functions you'l realize quickly why i mentioned it first, so i wont bother explaining.
next depending on how much data or different peoples hrs in your example you want mixed on the same sheet you can create a chart anywhere, up top, another sheet, etc... As long as u keep the same fields of columns in order and don't leave spaces when filling out the data , you can have the data automatically total'd and sorted in the chart. but without VB macro's or seperating each person to a different sheet... you'l need to do either of these things = 1) learn Array formula's (=sumproduct() and (=if()"ctrl+shift+enter")  2)learn arrays and then break down the individual process's of it into its own function and have each step of the array's functions(not arrays anymore) fill the column's beside the Data columns or on a seperate sheet, and use these formula columns as the 'markers' or 'reference' cells for the chart formula's. 3) learn VB
only reason i mention 2) is because all arrays are tecknically volatile.
EDIT: oh yea just fyi the most common formula i'v used to break down arrays incorperate usually =IF/SUMIF/INDEX/VLOOKUP/COUNTIF/ and a slew of other basic ones.
EDIT again: and oh just fyi for anyone that it interests, and doesnt know or care at this point in learning VB.... If you go by ex.2) even though it drastically increases the physical size of the Data Sheet... The proccessing time of the data when modified is nil compaired to using a volatile function or array(if your data sheet/columns are large or contain a lot of data)