كيفية منع الحفظ إذا كانت خلية محددة فارغة في Excel؟
تخيل أنك قمت بإنشاء نموذج في Excel وشاركته مع زملائك. تريد منهم إدخال أسمائهم في خلية محددة لتحديد الشخص الذي أدخل المعلومات. إذا تركت الخلية فارغة، ترغب في منع النموذج من الحفظ. في هذا البرنامج التعليمي، سأوضح لك كيفية استخدام ماكرو VBA لمنع عملية الحفظ إذا كانت الخلية المخصصة فارغة في Excel.
منع الحفظ إذا كانت خلية محددة فارغة في Excel
لمنع حفظ المصنف الحالي إذا كانت الخلية المحددة فارغة في Excel، يمكنك بسهولة تطبيق ماكرو VBA التالي.
الخطوة 1: افتح نافذة Microsoft Visual Basic for Applications بالضغط على مفاتيح Alt + F11 في نفس الوقت.
الخطوة 2: في مستكشف المشروع، قم بتوسيع اللوحة VBAProject (اسم الملف الخاص بك.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. في الصف 26 من كود VBA أعلاه، "Sheet1" هو اسم ورقة العمل المحددة، و "A1" هي الخلية المحددة، ويمكنك تغييرها حسب الحاجة.
2. بعد إدخال VBA في ThisWorkbook، يجب عليك حفظ المصنف أولاً. وبعد ذلك يمكنك إرسال الملف الذي يحتوي على الماكرو للآخرين.
الآن إذا كانت الخلية المحددة فارغة في المصنف الحالي، عند حفظه، ستظهر مربع تحذير ويبلغك بأن "الحفظ قد تم إلغاؤه". شاهد لقطة الشاشة التالية:
مقالات ذات صلة
كيفية التحقق أو البحث إذا كانت الخلية تحتوي على سلسلة/نص/كلمة محددة في Excel؟
كيفية نسخ الصفوف إذا كان العمود يحتوي على نص/قيمة محددة في Excel؟
كيفية نسخ الخلايا إذا كان العمود يحتوي على قيمة/نص محدد في Excel؟
أفضل أدوات زيادة الإنتاجية لمجموعة Office
عزز مهاراتك في Excel مع Kutools لـ Excel، وتمتع بكفاءة غير مسبوقة. يقدم Kutools لـ Excel أكثر من300 ميزة متقدمة لتعزيز الإنتاجية وتوفير وقت الحفظ. انقر هنا للحصول على الميزة التي تحتاجها أكثر...
Office Tab يجلب تجربة التبويبات إلى Office، ويجعل عملك أسهل بكثير
- فعّل تحرير وقراءة المستندات عبر التبويبات في Word وExcel وPowerPoint
- افتح وأنشئ مستندات متعددة في تبويبات جديدة ضمن نفس النافذة، بدلاً من فتحها في نوافذ جديدة.
- يمنحك زيادة إنتاجية تصل إلى50% ويوفر عليك مئات النقرات يومياً!