For a value in A1, you could use:
Code:
=TEXT(INT(A1/(86400*365)),"00 ")&TEXT(MOD(INT(A1/86400),365),"00 ")&TEXT(MOD(INT(A1/3600),24),"00:")&TEXT(MOD(INT(A1/60),60),"00:")&TEXT(MOD(A1,60),"00")
or, more precisely, to take account of leap years:
Code:
=TEXT(INT(A1/(86400*365.2425)),"00 ")&TEXT(MOD(INT(A1/86400),365.2425),"00 ")&TEXT(MOD(INT(A1/3600),24),"00:")&TEXT(MOD(INT(A1/60),60),"00:")&TEXT(MOD(A1,60),"00")
As for what features MS might add to a future Excel release, your crystal ball is as good as anyone else's... That said, I don't see that the issue you're having problems with is related to a limitation of Excel; rather, it's a limitation of the formula you're using.