EPPlus ব্যবহার করে কক্ষগুলি মার্জ করবেন?


94

আমি এক্সপি ফাইলগুলি পড়তে / লিখতে ইপিপ্লাস গ্রন্থাগারটি ব্যবহার করছি: http://epplus.codeplex.com/

ডকুমেন্ট লেখার সময় আমি কিছু কক্ষকে মার্জ করার চেষ্টা করছি:

using (ExcelPackage pck = new ExcelPackage())
{
    //Create the worksheet
    ExcelWorksheet ws = pck.Workbook.Worksheets.Add("Demo");

    //Format the header for column 1-3
    using (ExcelRange rng = ws.Cells["A1:C1"])
    {
        bool merge = rng.Merge;
    }
}

মার্জ নামে একটি সম্পত্তি রয়েছে যা কেবল সত্য বা মিথ্যা দেয়। আমি ভেবেছিলাম যে এটি কোষগুলিকে মার্জ করবে, তবে তা হয় না।

কেউ কি করতে পারে জানেন?

উত্তর:


166

আপনার এটি এটির মতো ব্যবহার করতে হবে:

ws.Cells["A1:C1"].Merge = true;

পরিবর্তে:

using (ExcelRange rng = ws.Cells["A1:C1"])
{
    bool merge = rng.Merge;
}

Vb.net- এ কোষগুলিকে একীভূত করতে ডায়নামিক পরামিতিগুলি কীভাবে আমি পাস করতে পারি
— হরি

আমি বিপরীত কাজ করতে চাইলে এই কাজ করবে? কোষগুলি আনমারেজ করুন।
— নিকসভি

শর্তের ভিত্তিতে আমি কীভাবে কলামগুলি মার্জ করব?
— প্রশান্ত পিম্পলে

4
@ প্রশান্তপিম্পলে আমি আপনার প্রশ্নটি বুঝতে পারি না। মনে রাখবেন যে আপনি যে পরিসরটির একত্রীকরণ করতে চান সেই কক্ষগুলিকে সংলগ্ন হওয়া দরকার।
— কার্লস সংস্থা 8:15

4
এখানে অতিরিক্ত তথ্য হিসাবে। মার্জ হওয়ার পরে কেবলমাত্র শীর্ষের বাম
— ঘরটিই

77

আপনি যদি গতিশীল কক্ষগুলি মার্জ করতে চান তবে আপনি এটি ব্যবহার করতে পারেন:

worksheet.Cells[FromRow, FromColumn, ToRow, ToColumn].Merge = true;

এই সমস্ত পরিবর্তনশীল পূর্ণসংখ্যা হয়।


7

আপনি একটি এক্সটেনশন পদ্ধতি তৈরি করতে পারেন:

public static void Merge(this ExcelRangeBase range)
{
    ExcelCellAddress start = range.Start;
    ExcelCellAddress end = range.End;
    range.Worksheet.Cells[start.Row, start.Column, end.Row, end.Column].Merge = true;
}

আপনি ইন্টারোপের মাধ্যমে যেমন ব্যবহার করতে পারেন:

range.Merge();
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.