2012-09-27 3 views
10

Ich verwendete PHPExcel Bibliothek, Excel-Dateien basierend auf der Tabelle erstellt von der MySQL-Abfrage erstellt. Ich habe mehrere Tabs mit individuellen Daten aus verschiedenen Abfragen erstellt.PHPExcel, wie Ausrichtung für das gesamte Dokument aus mysql erstellt Tabelle

Ich muss die Daten in allen Zellen in allen Registerkarten (Arbeitsblättern) in der Mitte ausrichten.

Dies ist mein Code:

$mysql_xls = new MySqlExcelBuilder($mysql_db,$mysql_user,$mysql_pass); 

// Add the SQL statements to the spread sheet 

$tab_name = "tabname"; 
$mysql_xls->add_page($tab_name,$sql_statement,NULL,'A',1); 

$phpExcel = $mysql_xls->getExcel(); 

$phpExcel->setActiveSheetIndex(0); // Set the sheet to the first page (default first page). 

Ich habe versucht, die nach dem Text in den Zellen auszurichten, aber keine Änderung:

$phpExcel->getActiveSheet(0)->getStyle()->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_CENTER); 

Antwort

29

Option # 1

Set ein Standardstil für die gesamte Arbeitsmappe

$objPHPExcel->getDefaultStyle() 
    ->getAlignment() 
    ->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_CENTER); 

Option # 2

Wenden Sie den Stil auf eine Reihe von Zellen (das gesamte Arbeitsblatt in diesem Fall) auf jeder einzelnen Arbeitsblatt

$phpExcel->getActiveSheet() 
    ->getStyle($phpExcel->getActiveSheet()->calculateWorksheetDimension()) 
    ->getAlignment() 
    ->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_CENTER); 
+0

Mr.Backer Danke für die Antwort und für die erstaunliche Bibliothek! Ihre Antwort funktionierte perfekt, aber ich bekomme ein Leerzeichen auf der rechten Seite der Zellen in der ersten Zeile (Spaltennamen), das ich nicht will, gibt es eine Lösung, um diesen Raum loszuwerden. Hier ist ein Screenshot: http://tinypic.com/view.php?pic=2sayqvc&s=6 – user1702273

+0

Sie müssen die Spaltenbreite auf autocalculate setzen –

+0

Sorry, aber die Formatierung zu Mitte wird nicht für die Spaltennamen angewendet , gibt es einen Grund dafür und wie kann die gleiche Formatierung für die Spaltennamen angewendet werden, dh Zeile 1. – user1702273

Verwandte Themen