الملخص
في Microsoft Excel، يمكنك إنشاء ماكرو Microsoft Visual Basic for Applications (VBA) يمنع مطالبة حفظ التغييرات عند إغلاق مصنف. يمكن القيام بذلك إما عن طريق تحديد حالة الخاصية المحفوظة في المصنف، أو عن طريق منع جميع التنبيهات للمصنف.
المزيد من المعلومات
ملاحظةتوفر Microsoft أمثلة برمجة للتوضيح فقط، دون ضمان سواء تم التعبير عنه أو تضمينه. وهذا يشمل، على سبيل المثال لا الحصر، الضمانات الضمنية للقابلية التجارية أو اللياقة البدنية لغرض معين. تفترض هذه المقالة أنك على دراية بلغة البرمجة التي يتم توضيحها ومع الأدوات المستخدمة لإنشاء إجراءات وتصحيح الأخطاء. يمكن لمهندسي دعم Microsoft المساعدة في شرح وظيفة إجراء معين. ومع ذلك، لن يعدلوا هذه الأمثلة لتوفير وظائف إضافية أو إجراءات إنشاء لتلبية متطلباتك المحددة.
للتحضير لتنفيذ أي من الأمثلة أدناه، قم بتنفيذ الخطوات التالية أولا:-
ابدأ تشغيل Excel وافتح مصنفا جديدا.
-
اضغط على ALT+F11 لبدء محرر Visual Basic.
-
في القائمة إدراج، انقر فوق الوحدة النمطية.
-
اكتب نموذج التعليمات البرمجية للماكرو في ورقة الوحدة النمطية.
-
اضغط على ALT+F11 للعودة إلى Excel.
-
في Microsoft Office Excel 2003 والإصدارات السابقة من Excel، اختر ماكرو من القائمة أدوات، ثم انقر فوق وحدات الماكرو.
في Microsoft Office Excel 2007، انقر فوق وحدات الماكرو في مجموعة التعليمات البرمجية ضمن علامة التبويب المطور. إذا لم تكن علامة التبويب المطور متوفرة، ففكر في القيام بذلك: a. انقر فوق زر Microsoft Office ، ثم انقر فوق خيارات Excel. b. في الفئة "شائع"، ضمن خيارات "الأعلى" للعمل مع Excel، انقر لتحديد "إظهار " علامة تبويب المطور في خانة الاختيار الشريط، ثم انقر فوق موافق. -
حدد الماكرو الذي تريده، ثم انقر فوق تشغيل.
ترجع الخاصية Saved القيمة False إذا تم إجراء تغييرات على مصنف منذ آخر حفظ له.Auto_Close لتحديد ماكرو يجب تشغيله كلما تم إغلاق مصنف. عند القيام بذلك، يمكنك التحكم في كيفية معالجة المستند عند إغلاق المستخدم للمستندات في Excel.
يمكنك استخدام اسم السجل الفرعي المحجوزمثال 1: إغلاق المصنف دون حفظ التغييرات
لفرض إغلاق مصنف دون حفظ أي تغييرات، اكتب التعليمات البرمجية التالية في وحدة Visual Basic لهذا المصنف:
Auto_Close الفرعي()
ThisWorkbook.Saved = True
End Sub
عند تعيين الخاصية محفوظة إلى True، يستجيب Excel كما لو أن المصنف قد تم حفظه بالفعل ولم تحدث أي تغييرات منذ الحفظ الأخير.
يمكن استخدام خاصية DisplayAlerts للبرنامج لنفس الغرض. على سبيل المثال، يقوم الماكرو التالي بإيقاف تشغيل DisplayAlerts، وإغلاق المصنف النشط دون حفظ التغييرات، ثم تشغيل DisplayAlerts مرة أخرى.Sub CloseBook()
Application.DisplayAlerts = False
ActiveWorkbook.Close
Application.DisplayAlerts = True
End Sub
يمكنك أيضا استخدام الوسيطة SaveChanges للأسلوب Close.
يقوم الماكرو التالي بإغلاق المصنف دون حفظ التغييرات:Sub CloseBook2()
ActiveWorkbook.Close savechanges:=False
End Sub
مثال 2: إغلاق المصنف وحفظ التغييرات
لإجبار مصنف على حفظ التغييرات، اكتب التعليمات البرمجية التالية في وحدة Visual Basic لهذا المصنف:
Auto_Close الفرعي()
إذا كان ThisWorkbook.Saved = False ثم
ThisWorkbook.Save End If
End Sub
يتحقق هذا المستند الفرعي لمعرفة ما إذا تم تعيين الخاصية File Saved إلى False. إذا كان الأمر كذلك، فقد تم تغيير المصنف منذ الحفظ الأخير، ويتم حفظ هذه التغييرات.