2015-08-04 3 views
0

Это мой код получает данные моего файла Excel ...PHPExcel установить значение ячейки динамически

require_once 'IOFactory.php'; 
    $objPHPExcel = PHPExcel_IOFactory::load("NAV USER ACCESS Calculation.xlsx"); 
    $objPHPExcel->setActiveSheetIndex(2); 

    $worksheet = $objPHPExcel->getActiveSheet(); 

    $worksheetTitle  = $worksheet->getTitle(); 
    $highestRow   = $worksheet->getHighestRow(); // e.g. 10 
    $highestColumn  = $worksheet->getHighestColumn(); // e.g 'F' 
    $highestColumnIndex = PHPExcel_Cell::columnIndexFromString($highestColumn); 
    $nrColumns = ord($highestColumn) - 64; 
    echo '<div id="table-cont"> 
     <table border="1">'; 
    for ($row = 1; $row <= $highestRow; ++ $row) 
    { 
     echo '<tr>'; 
     for ($col = 0; $col < $highestColumnIndex; ++ $col) 
     { 
      $cell = $worksheet->getCellByColumnAndRow($col, $row); 
      $val = $cell->getValue(); 
      $val =$cell->getCalculatedValue(); 
      $val =$cell->getFormattedValue(); 

      $dataType = PHPExcel_Cell_DataType::dataTypeForValue($val); 
      echo '<td>' . $val . '</td>'; 
     } 
     echo '</tr>'; 
    } 
    echo '</table> 
     <div id="clock"></div> 
     </div>'; 

И это мой код настройки моей таблицы в Excel, но я не знаю, Что неправильно ...

$serverName="192.168.1.253"; 
    $conInfo=array("Database"=>"dbName","UID"=>"sa","PWD"=>"xxxxx"); 
    $con= sqlsrv_connect($serverName,$conInfo); 

    require_once 'IOFactory.php'; 
    $objPHPExcel = PHPExcel_IOFactory::load("NAV USER ACCESS Calculation.xlsx"); 
    $objPHPExcel->setActiveSheetIndex(2); 

    $worksheet = $objPHPExcel->getActiveSheet(); 

    $worksheetTitle  = $worksheet->getTitle(); 
    $highestRow   = $worksheet->getHighestRow(); // e.g. 10 
    $highestColumn  = $worksheet->getHighestColumn(); // e.g 'F' 
    $highestColumnIndex = PHPExcel_Cell::columnIndexFromString($highestColumn); 
    $nrColumns = ord($highestColumn) - 64; 
    echo '<div id="table-cont"> 
     <table border="1">'; 
    $sql= sqlsrv_query($con,"SELECT * FROM dbo.[Active Session]"); 
    while($data=sqlsrv_fetch_array($sql)) 
    { 
     for ($row = 1; $row <= $highestRow; ++ $row) 
     { 
      echo '<tr>'; 
      for ($col = 0; $col < $highestColumnIndex; ++ $col) 
      { 
       $cell = $worksheet->setCellValueByColumnAndRow($col, $row); 
       $val = $cell->getValue(); 
       $val =$cell->getCalculatedValue(); 
       $val =$cell->getFormattedValue(); 

       $dataType = PHPExcel_Cell_DataType::dataTypeForValue($val); 
       echo '<td>' . $val . '</td>'; 
      } 
      echo '</tr>'; 
     } 
    } 
    echo '</table> 
     <div id="clock"></div> 
     </div>'; 
+0

И ваша проблема? –

+0

Я хочу вставить все данные в таблицу в файл excel –

+0

Вы пытаетесь сгенерировать вывод HTML одновременно с записью в файл Excel? Вы пытаетесь добавить новые данные в существующий файл, который уже содержит данные? –

ответ

0

Должно быть так просто, как

$worksheet = $objPHPExcel->getActiveSheet(); 

$highestRow = $worksheet->getHighestRow() + 1; 
$sql= sqlsrv_query($con,"SELECT * FROM dbo.[Active Session]"); 
while($data=sqlsrv_fetch_array($sql)) 
{ 
    $worksheet->fromArray($data, null, 'A' . $highestRow++); 
} 

И затем сохранить файл снова после этого

+0

, как вставить это? T_T –

+0

нет ошибки, но ничего не происходит, это не изменило изменения данных в моем excel ... –

+0

Затем выполните некоторую базовую отладку, чтобы убедиться, что ваш запрос фактически возвращает данные –

Смежные вопросы