I personally wouldn't use "+2", as it's nebulous unless you already know what it's doing; instead, I'd use the actual base date. And, if you shift from Excel, the base date might even change on its own. I put a "d" (for days) in the output just because it seems clearer to me:
WITH cte_constants AS (
SELECT CAST('1899-12-30' AS date) AS base_date, 60*60*24 AS seconds_in_a_day
cte_calc_total_duration AS (
SELECT SUM(DATEDIFF(SECOND, base_date, duration)) AS total_seconds
CROSS JOIN cte_constants
SELECT CASE WHEN total_seconds < seconds_in_a_day THEN ''
ELSE CAST(total_seconds / seconds_in_a_day AS varchar(5)) + 'd ' END +
CONVERT(varchar(8), DATEADD(SECOND, total_seconds % seconds_in_a_day, 0), 8)
SQL DBA,SQL Server MVP(07, 08, 09) Prosecutor James Blackburn, in closing argument in the Fatal Vision murders trial: If in the future, you should cry a tear, cry one for them [the murder victims]. If in the future, you should say a prayer, say one for them. And if in the future, you should light a candle, light one for them.