TRY THIS:
DECLARE @cols AS NVARCHAR(MAX);
DECLARE @query AS NVARCHAR(MAX);
select @cols = STUFF((SELECT distinct ',' + QUOTENAME(Worked_dte) FROM User_Timesheet
FOR XML PATH(''), TYPE ).value('.', 'NVARCHAR(MAX)') , 1, 1, '');
SELECT @query = 'SELECT * FROM
(
SELECT
[TM_UserID],
[FullName],
[Worked_dte],
[Worked_Hours]
FROM User_Timesheet where [worked_dte] BETWEEN ''2014-04-04'' AND ''2014-04-06''
) AS t
PIVOT
(
MAX(Worked_Hours)
FOR Worked_dte IN( ' + @cols + ' )' +
' ) AS p ; ';
execute(@query);