كيف تمنع حفظ الملف إذا كانت خلية معيّنة فارغة في Excel؟
تخيّل أنك أنشأت نموذجًا في Excel وشاركته مع زملائك، وتريد منهم إدخال أسمائهم في خلية معيّنة لتحديد هوية من قام بتعبئة البيانات. كما تريد منع حفظ النموذج إذا بقيت تلك الخلية فارغة. في هذا البرنامج التعليمي، سأوضح لك كيفية استخدام ماكرو VBA لحظر عملية الحفظ تلقائيًا عندما تكون الخلية المخصصة فارغة في Excel.
منع الحفظ إذا كانت خلية معيّنة فارغة في Excel
لمنع حفظ المصنف الحالي في Excel إذا كانت الخلية المعيّنة فارغة، يمكنك بسهولة تطبيق ماكرو VBA التالي.
الخطوة 1: افتح نافذة Microsoft Visual Basic for Applications بالضغط على مفاتيحAlt + F11 في الوقت نفسه.
الخطوة 2: في Project Explorer، قم بتوسيعVBAProject (Your اسم المصنف.xlsm)وMicrosoft Excel Objects، ثم انقر مرتين علىThisWorkbook. راجع لقطة الشاشة:

الخطوة 3: في نافذة ThisWorkbook المفتوحة، الصق ماكرو VBA التالي:
ماكرو VBA: منع الحفظ إذا كانت الخلية المعيّنة فارغة
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
'Update by ExtendOffice 20220907
Dim xFileName As String
Dim xStr As String
Dim xStrWSH As String
Dim xWSh As Worksheet
Dim xWShs As Sheets
Dim xWSh1 As Worksheet
Dim xWB As Workbook
xStrWSH = "xHidWSH_LJY"
On Error Resume Next
Set xWB = Application.ActiveWorkbook
Set xWShs = xWB.Worksheets
Set xWSh = xWShs.Item(xStrWSH)
If xWSh Is Nothing Then
Set xWSh1 = xWShs.Add
xWSh1.Name = xStrWSH
xWSh1.Visible = xlSheetVeryHidden
Cancel = False
Else
If Trim(Application.Sheets("Sheet1").Range("A1").Value) = "" Then
Cancel = True
MsgBox "Save cancelled"
End If
End If
End Sub ملاحظة:1. في السطر السادس والعشرين من كود VBA أعلاه،"Sheet1"هو الورقة المعيّنة، و"A1هي الخلية المعيّنة، ويمكنك تغييرها بحسب احتياجاتك.
2. بعد إدخال كود VBA،ThisWorkbookيجب عليك حفظ المصنف أولًا، ثم يمكنك إرسال الملف المفعّل للماكرو إلى الآخرين.
الآن، إذا كانت الخلية المعيّنة فارغة في المصنف الحالي، فعند محاولة حفظه، ستظهر نافذة تحذير تُخبرك بـ "تم إلغاء الحفظ". راجع لقطة الشاشة التالية:

مقالات ذات صلة
كيف يمكنك التحقق من أن خلية ما تحتوي على نص أو كلمة أو سلسلة محددة في Excel؟
كيف تنسخ الصفوف التي يحتوي عمودها على نص أو قيمة محددة في Excel؟
كيف تنسخ الخلايا إذا كان العمود يحتوي على قيمة أو نص محدد في Excel؟
أفضل أدوات الإنتاجية لمكتبتك
عزِّز مهاراتك في Excel باستخدام Kutools لـ Excel، وعايش الكفاءة كما لم تفعل من قبل.يقدّم Kutools لـ Excel أكثر من 300 ميزة متقدمة لتعزيز الإنتاجية ووقت الحفظ.انقر هنا للحصول على الميزة التي تحتاجها أكثر من غيرها...
يجلب Office Tab واجهة ذات علامات تبويب إلى Office، ويجعل عملك أسهل بكثير
- تمكّن من التحرير والقراءة باستخدام علامات التبويب في Word وExcel وPowerPoint، وPublisher وAccess وVisio وProject.
- افتح وأنشئ مستندات متعددة في علامات تبويب جديدة داخل النافذة نفسها، بدلاً من فتح نوافذ جديدة.
- يزيد إنتاجيتك بنسبة 50% ويوفّر لك مئات نقرات الفأرة كل يوم!
جميع الإضافات من Kutools في برنامج تثبيت واحد!
Kutools for Office حزمةٌ تحتوي على إضافاتٍ مخصصة لتطبيقات Excel وWord وOutlook وPowerPoint، إلى جانب Office Tab Pro، مما يجعلها الخيار المثالي للفِرق التي تعمل عبر تطبيقات Office.
- حزمة شاملة واحدة— إضافات Excel وWord وOutlook وPowerPoint بالإضافة إلى Office Tab Pro
- برنامج تثبيت واحد، ترخيص واحد— الإعداد خلال دقائق (جاهز لـ MSI)
- يعمل بشكل أفضل معًا— إنتاجية ميسَّرة عبر تطبيقات Office
- تجربة مجانية لمدة 30 يومًا بكامل الميزات— بدون تسجيل، بدون بطاقة ائتمان
- أفضل قيمة— وفِّر مقارنةً بشراء الإضافات بشكل منفصل