1. في بعض الأحيان عند تصدير Excel ، تحتاج إلى التصدير حسب الفئة. هناك العديد من الفئات الفرعية تحت فئة واحدة رئيسية ، وهناك العديد من الفئات الفرعية تحت الفئات الفرعية ، تمامًا مثل الصورة التالية:
ليس من الصعب تحقيق ذلك.
الفكرة هي كما يلي: تداول وفقًا للفئات الرئيسية. على سبيل المثال ، ما سبق هو الدوران وفقًا للفئات الرئيسية الثلاث في حرم Zhangjiang و Xuhui Campus و Lingang Campus ، ثم معالجة الفئات الصغيرة. نظرًا لأن هذا المثال لا يتضمن دمجًا ، فإنه لا ينطوي على معالجة فئات صغيرة فقط. إذا كنت بحاجة إلى معالجة فئات صغيرة ، فلا يزال عليك التعامل معها. مبدأ التنفيذ المحدد هو نفس الفئات الصغيرة ؛
كل دورة ، سجل نوع المنزل لهذه الدورة ونوع المنزل في الدورة الأخيرة. عندما يكون الاثنين متماثلين ، يتم دمج الصف النهائي ++. خلاف ذلك ، فهذا يعني أنه تم الانتهاء من نوع المنزل (شريطة أن يتم طلب كل نوع بالترتيب ، مما يضمن أن نفس النوع مجاور) ويبدأ في الاندماج. التنفيذ المحدد هو كما يلي:
2. تنفيذ الكود ، الفكرة المحددة موجودة بالفعل في التعليقات
public void Expstatistics (String filepath ، String Campuscode) {try {dritableWorkbook wwb = workbook.createworkbook (ملف جديد (filepath)) ؛ jxlformatutil jfu = new jxlformatutil () ؛ WritableShet WS = WWB.Createshet ("إحصائيات تقرير المنزل" ، 0) ؛ String [] Tablehead = {"Campus Name: 20" ، "House Type: 30" ، "House Use: 30" ، "Arty areas (): 20"} ؛ لـ (int i = 0 ؛ i <tablehead.length ؛ i ++) {// نمط العنوان لكل عمود ws.addcell (تسمية جديدة (i ، 0 ، tablehead [i] .split (":") [0] ، jxlformatutil.wchead)) ؛ ws.setColumnView (i ، integer.valueof (tablehead [i] .Split (":") [1])) ؛ } int col = 1 ؛ // ابدأ من السطر 1 // يتم استخدام المتغيرات التالية لتدميب نفس المحتوى int percol = col ؛ سلسلة perpurpose = "" ؛ // استخدام نوع الاستخدام السابق الغرض = "" ؛ // نوع الاستخدام الحالي int startmeCol = 1 ؛ // السطر الأول الذي يتم دمجه int endmergecol = 0 ؛ // السطر الأخير المطلوب للنزعة boolean flag = new if (null! = campuscode &&! ". } آخر {campuslist = campusdao.findcampus () ؛ } لـ (fcxtcampus campus: campuslist) {list <FcxtBuild> builds = builddao.StatisticsBuilds (campus.getCampusCode ()) ؛ // الحصول على جميع معلومات المنزل (null! = builds &&size ()> 0) {fcxtbuild build: builds) { Label (row ++ ، col ، campus.getCampusName () ، jxlformatutil.wccenter)) ؛ الغرض = build.getusefulPurpose () ؛ إذا (العلم) {// إذا كانت الحلقة الأولى ، فقم بتهيئة الغرض بحيث يكون الحكم الأول اللاحق perpurpose = الغرض ؛ العلم = خطأ ؛ } ws.addcell (تسمية جديدة (row ++ ، col ، fcxtbuild.build_usefulpurpose.get (build.getusefulpurpose ()) ، jxlformatutil.wccenter)) ؛ if (الغرض. } آخر {// عندما يختلف الاثنان ، نفس الخطوط قبل الانصهار ws.mergecells (1 ، startMeCol ، 1 ، endmergecol) ؛ StartMergecol = col ؛ endmergecol = startmergecol ؛ perpurpose = الغرض ؛ } ws.addcell (تسمية جديدة (row ++ ، col ، fcxtbuild.build_buildingtype.get (build.getBuildingType ()) ، jxlformatutil.wccenter)) ؛ Ws.Addcell (Label New (Row ++ ، Col ، build.getBuildarea (). ToString () ، JxlFormatutil.wccenter)) ؛ العقيد ++ ؛ } ws.mergecells (0 ، percol ، 0 ، col-1) ؛ percol = col ؛ }} wwb.write () ؛ wwb.close () ؛ } catch (استثناء e) {E.PrintStackTrace () ؛ }}لخص
ما سبق هو شرح مفصل لأفكار خط دمج نفس المحتوى في نفس العمود عند تصدير Java Excel. آمل أن يكون ذلك مفيدًا للجميع. إذا كان لديك أي أسئلة ، فيرجى ترك رسالة لي وسوف يرد المحرر على الجميع في الوقت المناسب. شكرا جزيلا لدعمكم لموقع wulin.com!