2012-09-27 11 views
10

से बनाए गए पूरे दस्तावेज़ के लिए संरेखण को कैसे लागू करें, मैंने mysql क्वेरी द्वारा बनाई गई तालिका के आधार पर एक्सेल फ़ाइलों को उत्पन्न करने के लिए PHPExcel लाइब्रेरी का उपयोग किया। मैंने अलग-अलग प्रश्नों से अलग-अलग डेटा के साथ कई टैब बनाए।PHPExcel mysql तालिका

मुझे सभी टैब (वर्कशीट) में सभी कक्षों में डेटा को केंद्र में संरेखित करने की आवश्यकता है।

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

उत्तर

29

विकल्प # 1

सेट:

$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). 

मैं कोशिकाओं में पाठ लेकिन कोई परिवर्तन नहीं संरेखित करने के लिए निम्नलिखित की कोशिश की:

यह मेरा कोड है संपूर्ण कार्यपुस्तिका के लिए एक डिफ़ॉल्ट शैली

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

विकल्प # 2

शैली कक्षों की श्रेणी (इस मामले में संपूर्ण कार्यपत्रक) करने के लिए प्रत्येक व्यक्ति कार्यपत्रक पर लागू उत्तर के लिए और के लिए

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

Mr.Backer धन्यवाद अद्भुत पुस्तकालय! आपका जवाब पूरी तरह से काम करता है लेकिन मुझे पहली पंक्ति (कॉलम नाम) में सेल्स के दाईं ओर एक सफेद जगह मिल रही है, जिसे मैं नहीं चाहता, क्या उस स्थान से छुटकारा पाने के लिए कोई समाधान है। यहां एक स्क्रीन शॉट है: http://tinypic.com/view.php?pic=2sayqvc&s=6 – user1702273

+0

आपको कॉलम चौड़ाई को –

+0

को स्वत: गणना करने की आवश्यकता होगी क्षमा करें, लेकिन कॉलम नामों के लिए केंद्र में स्वरूपण लागू नहीं है , इसके लिए कोई कारण है और स्तंभ नामों के लिए समान प्रारूपण कैसे लागू कर सकते हैं यानी पंक्ति 1. – user1702273