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