2016-06-21 8 views
0

Excelのスプレッドシートに変換するHTMLビルド・ビルドがありますが、number_formatで指定されたPHP関数のように、桁区切りと2小数点が表示されます。 Excelで100.00のために、私は100Excelエクスポートで桁区切りを受け付けません

$OutputExcel = " 
     <h3 align='center'>$COMPANYNAME</h3> 
     <table class='tblNemoList' border='0' cellpadding='2' cellspacing='0' width='100%' style='-fs-table-paginate: paginate;'> 
     <caption align='left'><b>Detailed Horse Charges</b></caption> 
     <thead> 
      <tr> 
       <th align='left'>#</th> 
       <th align='left'>No</th> 
       <th align='left'>Horse Name</th> 
       <th align='left'>Description</th> 
       <th align='left'>Date</th> 
       <th align='left'>Amount</th> 
      </tr> 
     </thead> 
    "; 
    $i = 0; 
    while($row = $xdb->fetch_object($rowHorseCharges)) 
    { 
     //ini 
     $i++; 

     $OutputPDF .= " 
     <tr > 
      <td>$i</td> 
      <td>".$row->No."</td> 
      <td>".$row->strHorse."</td> 
      <td>".$row->Description."</td> 
      <td>".$row->Date."</td> 
      <td align='right'>".number_format($row->Amount,2,'.',',')."</td> 
     </tr> 
     "; 
     $OutputExcel .= " 
     <tr > 
      <td align='left' >$i</td> 
      <td align='left' >".$row->No."</td> 
      <td align='left' >".$row->strHorse."</td> 
      <td align='left' >".$row->Description."</td> 
      <td align='left' >".$row->Date."</td> 
      <td align='right' >".number_format($row->Amount,2,'.',',')."</td> 
     </tr> 
     "; 
    } 
    $OutputPDF .= " 
     <tr><td colspan='6' style='border-bottom:1px solid black;'></td></tr> 
     <tr> 
     <td></td> 
     <td></td> 
     <td></td> 
     <td></td> 
     <td></td> 
     <td align='right' ><b>Tota: ".number_format($rowTotal->Total,2,'.',',')."</b></td> 
     </tr> 
    </table>"; 

    $OutputExcel .= " 
     <tr> 
     <td></td> 
     <td></td> 
     <td></td> 
     <td></td> 
     <td></td> 
     <td align='right' ><b>Total: ".number_format($rowTotal->Total,2,'.',',')."</b></td> 
     </tr> 
    </table> 
    "; 

を持っていますのような短い中で私はあなたがあなたのテーブルページにCSSを追加する必要があり、この

switch($Action){ 
       case "Clear": 
       break; 

       case "Export Excel": 
       include_once("reports/". $_REQUEST[radReport] .".php"); 
       header("Content-type: application/x-msdownload"); 
       header("Content-Disposition: attachment; filename=". $strFilename .".xls"); //gets set inside the report.rpt.php 
       header("Pragma: no-cache"); 
       header("Expires: 0"); 

        echo $OutputExcel; 
        die; 

       break; 

       case "ExportPDF": 
       include_once("reports/". $_REQUEST[radReport] .".php"); 
       ini_set('display_errors', '0'); 
       header("Content-type: application/pdf"); 

       require_once('includes/mpdf/mpdf.php'); 
       $mpdf = new mPDF('utf-8', $format ,9,'Arial'); 
       $mpdf->setHTMLHeader(getPDFHeader($COMPANYNAME)); 
       $mpdf->setHTMLFooter(getPDFFooter()); 
       if($orientation == 'P'){$mpdf->AddPage($orientation,'', '' ,'','',15,15,20,16,7,9);}else{$mpdf->AddPage($orientation,'', '' ,'','',30,30,30,30,18,12);} 
       $mpdf->WriteHTML($OutputPDF); 
       $mpdf->Output($strFilename."pdf", "I"); 

       die; 
       break; 

       case "OpenPDF": 
       default: 
        $page->Content .= $Output 
        . js("d('". $_POST[radReport] ."').click(function())"); 
       break; 
      } 
+0

どのように結果を書式設定しますか? – olegsv

+0

ドットを10進数のセパレータとして使用しています。したがって、「100.00」と「100」は同じ値を表します。小数点以下2桁の目に見えるようにExcelに通知する必要があります。それはお金ですか? –

+0

10000のためにこの100.00を表示したい –

答えて

0

を使用して、それを変換しています。これと同じように:

<style type='text/css'> 
    .num2d { 
    mso-number-format:"0\.00"; 
    } 
</style> 

、その後はそのよう<td>にクラスとしてことを使用します。

<td class="num2d">34</td> 

私は自分自身をこれをしなかったが、それはここで見つける:

http://cosicimiento.blogspot.nl/2008/11/styling-excel-cells-with-mso-number.html

+0

ありがとう。それは完全に働いた –

関連する問題