日期格式的問題(編號:1511)

最近在做民國日期及西元日期的轉換的發現一些問題!!
1.cdate()在轉兩位數年時會轉成 4位數
如 cdate("89/2/18") 會變成 1989/2/18
 但 cdate("100/2/18") 會變成 100/2/18
 這樣的話在轉回民國年時就會有問題了(就不能減 1900)
 有什麼好的方法可以互轉而不會有問題呢? 
2.用datediff ("yyyy",N)時,N 最小只能到 -1900 而不能
到-1911 這樣的話要取民國年月日只能年月日一個一個接嗎?