2014-03-03 82 views
0

我想根據出生日期計算年齡。 Excel公式是在PHPExcel中創建公式

= DATEDIF(K4,DATE(2014,3,31), 「Y」)= DATEDIF(K4,DATE(2014,3,31), 「YM」)

如果單元格K中的值爲2004-08-01,則顯示9.7這是完美的,但我無法使用PHPExcel在Excel表單中設置此公式。 這裏是我想

$date = date('2014,03,31'); 
for($i=3;$i<=100;$i++){ 
$objPHPExcel->getActiveSheet()-setCellValue('AQ'.$i,'=DATEDIF(K'.$i.',DATE('.$date.'),"Y")'.'& . & '.'DATEDIF(K'.$i.',DATE('.$date.'),"YM")'); 
} 

什麼是錯的代碼,爲什麼擅長下載後的文件無法打開,並顯示FILEFORMAT或文件擴展名無效的代碼。

+0

是,在這個問題或者代碼輸入錯誤? 'getActiveSheet() - setCellValue' – MackieeE

+0

是的,它看起來像getActiveSheet() - > setCellValue –

+0

@MackieeE對不起,輸入錯誤。 – user1357093

回答

1

你的Excel公式級聯是無效.。假設你要的一年,然後你需要把它作爲一個字符串字面量(".")月間顯示.

$date = date('2014,03,31'); 
for($i=3;$i<=100;$i++){ 
    $objPHPExcel->getActiveSheet()-setCellValue(
     'AQ'.$i, 
     '=DATEDIF(K'.$i.',DATE('.$date.'),"Y")'.'& "." & '.'DATEDIF(K'.$i.',DATE('.$date.'),"YM")' 
    ); 
} 
0

沒有測試,試試這個,

$date = date('2014,03,31'); 
for($i=3;$i<=100;$i++){ 
$objPHPExcel->getActiveSheet()->setCellValue('AQ'.$i,'=DATEDIF(K'.$i.',DATE('.$date.'),"Y")'.'& . & '.'DATEDIF(K'.$i.',DATE('.$date.'),"YM")'); 
}