حماية الصف في ورقة عمل Excel

مقدمة

عند العمل مع جداول بيانات Excel، غالبًا ما يكون من الضروري حماية صفوف معينة للحفاظ على سلامة البيانات. سواء كنت تدير مشروع فريق أو تشرف على تقرير مالي أو تشارك مستندات، فإن تقييد الوصول إلى صفوف معينة يمكن أن يمنع التغييرات غير المرغوب فيها. في هذا البرنامج التعليمي، سنستكشف كيفية الاستفادة من Aspose.Cells for .NET لحماية صفوف معينة في ورقة عمل Excel. لذا، استعد للبرمجة، ولنغوص في عالم التعامل مع Excel المثير باستخدام C#!

المتطلبات الأساسية

قبل أن ننتقل إلى الجزء العملي، دعنا نتأكد من إعداد كل شيء. فيما يلي بعض المتطلبات الأساسية:

  1. Aspose.Cells لـ .NET: قم بتنزيل المكتبة من موقع اسبوس تأكد من حصولك على الإصدار الأحدث لجميع الميزات الجديدة وإصلاحات الأخطاء.
  2. Visual Studio: بيئة التطوير المتكاملة (IDE) مثل Visual Studio (Community أو Professional أو Enterprise) سوف تساعدك على تجميع وتشغيل كود C# الخاص بك بشكل فعال.
  3. .NET Framework: ستحتاج إلى إصدار متوافق من .NET Framework. يدعم Aspose.Cells إصدارات متعددة، لذا تأكد من تحديث الإصدار الذي تستخدمه.
  4. المعرفة الأساسية بلغة C#: سيكون الفهم الأساسي للغة C# مفيدًا أثناء كتابة الكود الخاص بنا خلال هذا الدليل.
  5. توثيقات مرجعية: تعرف على توثيق Aspose.Cells لـ .NET لمزيد من التفاصيل حول الأساليب والفئات المستخدمة.

استيراد الحزم

الخطوة الأولى في رحلتنا هي استيراد الحزم اللازمة في مشروع C# الخاص بنا. يعمل Aspose.Cells من خلال مجموعة من الفئات التي نحتاج إلى تضمينها:

using System.IO;
using Aspose.Cells;

الآن بعد أن قمنا باستيراد الحزم المطلوبة، دعنا ننتقل إلى الخطوات اللازمة لإنشاء مصنف Excel وحماية صف معين.

الخطوة 1: تحديد الدليل

في هذه الخطوة، سنحدد المكان الذي سيتم حفظ ملف Excel فيه. من المهم التأكد من وجود هذا الدليل، وإلا فسنقوم بإنشائه برمجيًا إذا لزم الأمر.

string dataDir = "YOUR DOCUMENT DIRECTORY"; // استبدل بمسار المستند الخاص بك
bool IsExists = Directory.Exists(dataDir);
if (!IsExists)
{
    Directory.CreateDirectory(dataDir);
}

في هذا الكود، استبدلYOUR DOCUMENT DIRECTORY مع المسار الفعلي الذي تريد حفظ ملف Excel فيه.

الخطوة 2: إنشاء مصنف جديد

بعد ذلك، سننشئ مصنف عمل جديدًا حيث ستتم جميع عمليات التلاعب. هذه خطوة أساسية، مثل وضع الأساس قبل بناء منزل أحلامك.

Workbook wb = new Workbook();

يقوم هذا الخط بتهيئة مثيل جديد منWorkbook الصف، إنشاء ورقة عمل جديدة لنا للعمل عليها.

الخطوة 3: الوصول إلى ورقة العمل

بعد إنشاء المصنف، دعنا ننتقل إلى ورقة العمل الأولى. تذكر أن ملف Excel قد يحتوي على أوراق عمل متعددة، لذا فإن اختيار الورقة المناسبة أمر بالغ الأهمية.

Worksheet sheet = wb.Worksheets[0]; // الوصول إلى الورقة الأولى

الخطوة 4: إلغاء قفل جميع الأعمدة

قبل قفل صف معين، من الأفضل إلغاء قفل جميع الأعمدة في البداية. يتيح لنا هذا التحكم في البيانات التي تظل قابلة للتحرير لاحقًا.

Style style;
StyleFlag flag;

// قم بالمرور عبر جميع الأعمدة وإلغاء قفلها
for (int i = 0; i <= 255; i++)
{
    style = sheet.Cells.Columns[(byte)i].Style;
    style.IsLocked = false;
    flag = new StyleFlag();
    flag.Locked = true;
    sheet.Cells.Columns[(byte)i].ApplyStyle(style, flag);
}

تتكرر هذه الحلقة خلال أول 256 عمودًا، وتفتح قفل كل عمود لضمان أذونات التحرير الافتراضية.

الخطوة 5: قفل الصف المحدد

الآن، سنستهدف الصف الأول من ورقة العمل الخاصة بنا للقفل. تضمن هذه الخطوة عدم تمكن المستخدمين من إجراء تغييرات غير مصرح بها على البيانات المهمة الموجودة في هذا الصف.

style = sheet.Cells.Rows[0].Style; // احصل على نمط الصف الأول
style.IsLocked = true; // قفل الصف
flag = new StyleFlag();
flag.Locked = true; // ضبط علم القفل
sheet.Cells.ApplyRowStyle(0, style, flag); // تطبيق النمط على الصف الأول

هنا، نستعيد النمط الخاص بالصف الأول، ونضع علامة عليه بأنه مقفل، ونطبق نمط القفل. وهذا يشبه وضع قفل على درج مهم - وهو أمر ضروري لتأمين المعلومات الحساسة!

الخطوة 6: حماية الورقة

مع قفل الصف، دعنا نتخذ هذه الخطوة الإضافية ونحمي ورقة العمل بالكامل. سيؤدي هذا إلى فرض القفل على جميع الوظائف المحددة فيProtectionType.

sheet.Protect(ProtectionType.All); // حماية الورقة بكل المميزات

من خلال تطبيق هذه الحماية، لا يمكن للمستخدمين تحرير الصف المقفل أو إجراء أي تغييرات قد تؤثر على المناطق المقفلة.

الخطوة 7: حفظ المصنف

تتضمن الخطوة الأخيرة حفظ المصنف. وهنا تأتي ثمار كل عملنا الشاق، حيث يمكننا أن نرى جدول البيانات الجميل والمحمي ينبض بالحياة!

wb.Save(dataDir + "output.out.xls", SaveFormat.Excel97To2003);

تأكد من أن اسم الملف المحفوظ وتنسيقه يطابقان متطلباتك. في هذه الحالة، نقوم بحفظه بتنسيق Excel أقدم (Excel 97-2003).

خاتمة

والآن، لقد تعلمت بنجاح كيفية حماية صف معين في ورقة عمل Excel باستخدام Aspose.Cells for .NET. فباستخدام بضعة أسطر فقط من التعليمات البرمجية، لم تقم بإنشاء مصنف فحسب، بل تمكنت أيضًا من تأمين المعلومات الحساسة، مما يضمن بقاء ملفات Excel الخاصة بك سليمة وجديرة بالثقة. سواء كان الأمر يتعلق بتقرير مالي أو ورقة حضور أو خطة مشروع تعاوني، فإن حماية البيانات المهمة أمر ضروري.

الأسئلة الشائعة

ما هو Aspose.Cells؟

Aspose.Cells هي مكتبة قوية لـ .NET تتيح للمستخدمين إنشاء ملفات Excel ومعالجتها وتحويلها برمجيًا.

هل يمكنني حماية عدة صفوف في وقت واحد باستخدام Aspose.Cells؟

نعم، يمكنك توسيع تقنية القفل عن طريق التكرار عبر عدة صفوف وتطبيق تغييرات نمطية مماثلة على كل منها.

هل هناك طريقة لفتح الصفوف بعد الحماية؟

نعم، يمكنك إلغاء حماية الورقة أولاً ثم ضبطهاIsLocked خاصية الصفوف المطلوبة، ثم إعادة تطبيق الحماية لاحقًا.

هل يدعم Aspose.Cells تنسيقات أخرى إلى جانب Excel؟

بالتأكيد! يمكن لبرنامج Aspose.Cells تحويل المصنفات وحفظها بتنسيقات مختلفة، بما في ذلك CSV وPDF وHTML.

أين يمكنني الحصول على الدعم لـ Aspose.Cells؟

يمكنك زيارة منتدى دعم Aspose للحصول على المساعدة والتوجيه المجتمعي.