Excel เป็นหนึ่งในแอปพลิเคชันที่ใช้กันอย่างแพร่หลายที่สุดสำหรับการวิเคราะห์ข้อมูล, รายงาน, และการจัดการทางการเงิน บ่อยครั้ง, คุณจำเป็นต้องเปรียบเทียบสมุดงาน Excel สองเล่มหรือมากกว่าที่จะระบุการเปลี่ยนแปลง, ตรวจสอบการอัปเดต, หรือติดตามการแก้ไข การทำเช่นนี้ด้วยตนเองอาจใช้เวลานานและมีข้อผิดพลาดได้ โชคดีที่ด้วย GroupDocs.Comparison Cloud SDK สำหรับ .NET, คุณสามารถเปรียบเทียบสมุดงาน Excel แบบโปรแกรมได้ใน C# และสร้างไฟล์ใหม่ที่มีการเปลี่ยนแปลงทั้งหมดเน้นแสดงออกมา

ในบทเรียนนี้ คุณจะได้เรียนรู้วิธีการ:

วิธีการตั้งค่า API การเปรียบเทียบ Excel

เพื่อเปรียบเทียบ Excel XLSX files เราจะใช้ GroupDocs.Comparison Cloud SDK for .NEt ซึ่งช่วยให้คุณเปรียบเทียบแผ่นงาน ติดตามการเปลี่ยนแปลง และบันทึกผลลัพธ์ในสมุดงาน Excel เดียว

ติดตั้ง SDK ผ่าน NuGet:

Install-Package GroupDocs.Comparison-Cloud

ก่อนที่จะเรียกใช้โค้ดส่วนนี้ กรุณาเอา Client ID และ Client Secret จาก cloud dashboard.

เปรียบเทียบไฟล์ Excel สองไฟล์โดยใช้ C#

คุณสามารถเปรียบเทียบไฟล์ Excel สองไฟล์ใน C# ได้โดยทำตามขั้นตอนเหล่านี้:

  1. อัปโหลดไฟล์งาน Excel แหล่งที่มาและเป้าหมาย
  2. เปรียบเทียบโดยใช้ GroupDocs.Comparison API.
  3. ดาวน์โหลดไฟล์ที่ได้พร้อมการเปลี่ยนแปลงที่เน้นสี

อัปโหลด Excel Workbook

ในการทำการเปรียบเทียบ เราต้องอัปโหลดไฟล์ XLSX แหล่งที่มาและเป้าหมายไปยังพื้นที่เก็บข้อมูลคลาวด์ก่อน โดยใช้ตัวอย่างโค้ดดังต่อไปนี้:

var fileApi = new FileApi(configuration);

using (var source = File.OpenRead("source.xlsx"))
{
    fileApi.UploadFile(new UploadFileRequest("source.xlsx", source));
}

using (var target = File.OpenRead("target.xlsx"))
{
    fileApi.UploadFile(new UploadFileRequest("target.xlsx", target));
}

เปรียบเทียบ Excel Workbooks

ตอนนี้ให้ใช้รหัสต่อไปนี้เพื่อเปรียบเทียบสองไฟล์ Excel เมื่อถูกดำเนินการ API จะสร้างไฟล์ Excel ใหม่ที่มีการเปลี่ยนแปลงที่ถูกเน้นระหว่างสองสเปรดชีต

var options = new ComparisonOptions
{
    SourceFile = new FileInfo { FilePath = "source.xlsx" },
    TargetFiles = new List<FileInfo> { new FileInfo { FilePath = "target.xlsx" } },
    OutputPath = "result/comparison-result.xlsx"
};

var request = new ComparisonsRequest(options);
var response = compareApi.Comparisons(request);

เปรียบเทียบสมุดงาน Excel หลายไฟล์ใน C#

REST API ยังมีความสามารถในการเปรียบเทียบเอกสาร Excel หลายฉบับ โปรดทำตามขั้นตอนที่ระบุไว้ด้านล่างนี้

  • ก่อนอื่น ให้สร้างอินสแตนซ์ของ CompareApi.
  • 其次,将输入 Excel 工作簿上传到云存储。
  • ตอนนี้ ให้เริ่มต้นวัตถุ ComparisonOptions ที่เรากำหนดไฟล์ Excel ขาเข้าและผลลัพธ์
  • จากนั้น สร้างอ็อบเจ็กต์ของ ComparisonsRequest โดยที่เราส่งอ็อบเจ็กต์ ComparisonOptions เป็นอาร์กิวเมนต์
  • ในที่สุด เปรียบเทียบเวิร์กบุ๊กของ Excel โดยใช้ Comparisons() การเรียก API.
var options = new ComparisonOptions
{
    SourceFile = new FileInfo { FilePath = "source.xlsx" },
    TargetFiles = new List<FileInfo>
    {
        new FileInfo { FilePath = "target1.xlsx" },
        new FileInfo { FilePath = "target2.xlsx" }
    },
    OutputPath = "result/multiple-comparison.xlsx"
};

var request = new ComparisonsRequest(options);
var response = compareApi.Comparisons(request);
วิธีเปรียบเทียบข้อมูลใน excel

Source and target Excel files.

ด้านล่างนี้คือการแสดงตัวอย่างของสมุดงานผลลัพธ์ที่สร้างขึ้นหลังจากการเปรียบเทียบเสร็จสิ้นแล้ว

เปรียบเทียบไฟล์ Excel ใน C#.

การแสดงตัวอย่างการเปรียบเทียบ Excel โดยใช้ REST API.

รับรายการการเปลี่ยนแปลงใน C#

API REST ยังมีความสามารถในการดึงรายชื่อการเปลี่ยนแปลงทั้งหมดและเปรียบเทียบข้อมูลในแผ่นงาน Excel ที่พบระหว่างกระบวนการเปรียบเทียบ

  • ก่อนอื่น ให้สร้างอินสแตนซ์ของ CompareApi.
  • ถัดไป ตั้งค่าเส้นทางไฟล์ต้นทาง XLSX.
  • จากนั้น กำหนดเส้นทางไฟล์ XLSX เป้าหมาย。
  • ถัดไป, ให้เริ่มต้นอ็อบเจ็กต์ ComparisonOptions.
  • จากนั้น กำหนดไฟล์ต้นทาง/เป้าหมาย และตั้งค่าตำแหน่งไฟล์ส่งออก
  • หลังจากนั้น สร้าง PostChangesRequest พร้อมกับอ็อบเจ็กต์ ComparisonOptions เป็นอาร์กิวเมนต์
  • สุดท้าย ให้รับผลลัพธ์โดยการเรียกใช้เมธอด postChanges()
var options = new ComparisonOptions
{
    SourceFile = new FileInfo { FilePath = "source.xlsx" },
    TargetFiles = new List<FileInfo> { new FileInfo { FilePath = "target.xlsx" } },
    OutputPath = "result/changes-summary.xlsx"
};

var request = new PostChangesRequest(options);
var changes = compareApi.PostChanges(request);

foreach (var change in changes)
{
    Console.WriteLine($"{change.Type}: {change.Text}");
}

ลองใช้งานออนไลน์

หากคุณต้องการลองความสามารถของ API โดยตรงภายในเว็บเบราว์เซอร์ โดยไม่ต้องเขียนโค้ดแม้แต่บรรทัดเดียว คุณอาจพิจารณาใช้เครื่องมือ Online XLSX comparison tool ฟรีของเรา เครื่องมือนี้เปรียบเทียบแผ่นงาน Excel 2 แผ่นทางออนไลน์และส่งคืนผลลัพธ์

เปรียบเทียบไฟล์ excel ออนไลน์

ข้อสรุป

ในบทความนี้ เราได้สาธิตวิธีการเปรียบเทียบสมุดงาน Excel ใน C# .NET เน้นความแตกต่างระหว่างสเปรดชีตทางโปรแกรม เปรียบเทียบไฟล์ Excel หลายไฟล์พร้อมกันและวิธีการดึงรายการการเปลี่ยนแปลงอย่างละเอียดในไฟล์ Excel ด้วย GroupDocs.Comparison Cloud SDK สำหรับ .NET คุณสามารถทำให้การเปรียบเทียบไฟล์ Excel เป็นอัตโนมัติเพื่อปรับปรุงความถูกต้อง ประหยัดเวลา และทำให้กระบวนการตรวจสอบข้อมูลมีความเรียบง่ายมากขึ้น

ลิงก์ที่มีประโยชน์

บทความที่แนะนำ