Note: The other languages of the website are Google-translated. Back to English

كيف تحفظ ملف Excel وإغلاقه تلقائيًا بعد فترة معينة من الخمول؟

في بعض الحالات ، مثل ترك ملف Excel على قرص مشترك ، عندما لا يزال الملف مفتوحًا من قبل المستخدم ، لا يتمكن الآخرون من تحرير المصنف. فكيف تغلق الملف تلقائيًا بعد فترة زمنية معينة من الخمول لتسهيل عمل الآخرين؟ ستساعدك هذه المقالة في طريقة VBA.

حفظ وإغلاق ملف Excel تلقائيًا بعد وقت خمول معين باستخدام رمز VBA


حفظ وإغلاق ملف Excel تلقائيًا بعد وقت خمول معين باستخدام رمز VBA

للحفظ التلقائي وإغلاق ملف Excel بعد فترة معينة من الخمول ، يرجى القيام بما يلي.

1. افتح المصنف الذي تريد حفظه وإغلاقه تلقائيًا بعد فترة خمول معينة. ثم اضغط على قديم + F11 مفاتيح معًا لفتح ملفات ميكروسوفت فيسوال باسيك للتطبيقات نافذة.

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

كود فبا 1: الحفظ التلقائي وإغلاق ملف Excel بعد وقت خمول معين

Dim xTime As String
Dim xWB As Workbook

Private Sub Workbook_Open()
'Updated by Extendoffice 2019/1/20
    On Error Resume Next
    xTime = Application.InputBox("Please specify the idle time:", "KuTool For Excel", "00:00:20", , , , , 2)
    Set xWB = ActiveWorkbook
    If xTime = "" Then Exit Sub
    Reset
End Sub
Private Sub Workbook_SheetActivate(ByVal Sh As Object)
    On Error Resume Next
    If xTime = "" Then Exit Sub
    Reset
End Sub

Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
    On Error Resume Next
    If xTime = "" Then Exit Sub
    Reset
End Sub

Sub Reset()
    Static xCloseTime
    If xCloseTime <> 0 Then
        ActiveWorkbook.Application.OnTime xCloseTime, "SaveWork1", , False
    End If
    xCloseTime = Now + TimeValue(xTime)
    ActiveWorkbook.Application.OnTime xCloseTime, "SaveWork1", , True
End Sub

3. ثم انتقل إلى النقر إدراج > وحدة، وانسخ الكود أدناه والصقه في نافذة الوحدة النمطية. انظر لقطة الشاشة:

كود فبا 2: الحفظ التلقائي وإغلاق ملف Excel بعد وقت خمول معين

Sub SaveWork1()
'Updated by Extendoffice 2019/1/20
    Application.DisplayAlerts = False
    ActiveWorkbook.Save
    ActiveWorkbook.Close
    
    Application.DisplayAlerts = True
End Sub

4. اضغط على قديم + Q مفاتيح في نفس الوقت لإغلاق ميكروسوفت فيسوال باسيك للتطبيقات نافذة.

5. انقر قم بتقديم > حفظ باسم > تصفح. انظر لقطة الشاشة:

6. في ال حفظ باسم مربع الحوار ، الرجاء تحديد مجلد لحفظ الملف ، قم بتسميته كما تريد في مربع اسم الملف ، حدد مصنف Excel ممكن بماكرو من حفظ ك نوع القائمة المنسدلة ، ثم انقر فوق الزر حفظ زر. انظر لقطة الشاشة:

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

وسيتم حفظ المصنف وإغلاقه تلقائيًا بعد وقت الخمول المحدد. انظر لقطة الشاشة:


أفضل أدوات إنتاجية المكتب

Kutools for Excel يحل معظم مشاكلك ويزيد إنتاجيتك بنسبة 80٪

  • إعادة استخدام: أدخل بسرعة الصيغ المعقدة والرسوم البيانية وأي شيء استخدمته من قبل ؛ تشفير الخلايا مع كلمة السر إنشاء قائمة بريدية وإرسال رسائل البريد الإلكتروني ...
  • سوبر فورميولا بار (بسهولة تحرير أسطر متعددة من النص والصيغة) ؛ تخطيط القراءة (قراءة وتحرير أعداد كبيرة من الخلايا بسهولة) ؛ لصق في النطاق المصفى
  • دمج الخلايا / الصفوف / الأعمدة دون فقدان البيانات ؛ تقسيم محتوى الخلايا ؛ ادمج الصفوف / الأعمدة المكررة... منع تكرار الخلايا؛ قارن النطاقات
  • حدد مكرر أو فريد صفوف حدد صفوف فارغة (جميع الخلايا فارغة) ؛ البحث الفائق والبحث الغامض في العديد من المصنفات. تحديد عشوائي ...
  • نسخة طبق الأصل خلايا متعددة بدون تغيير مرجع الصيغة ؛ إنشاء المراجع تلقائيًا إلى أوراق متعددة أدخل الرموز النقطية، مربعات الاختيار والمزيد ...
  • استخراج النص، إضافة نص ، إزالة حسب الموضع ، إزالة الفضاء؛ إنشاء وطباعة المجاميع الفرعية لترحيل الصفحات ؛ التحويل بين محتوى الخلايا والتعليقات
  • سوبر تصفية (حفظ وتطبيق مخططات التصفية على أوراق أخرى) ؛ فرز متقدم حسب الشهر / الأسبوع / اليوم ، التكرار والمزيد ؛ مرشح خاص بواسطة bold، italic ...
  • اجمع بين المصنفات وأوراق العمل؛ دمج الجداول على أساس الأعمدة الرئيسية ؛ تقسيم البيانات إلى أوراق متعددة; تحويل دفعة xls و xlsx و PDF
  • أكثر من 300 ميزة قوية. يدعم Office / Excel 2007-2021 و 365. يدعم جميع اللغات. سهولة النشر في مؤسستك أو مؤسستك. الميزات الكاملة نسخة تجريبية مجانية لمدة 30 يومًا. ضمان استرداد الأموال لمدة 60 يومًا.
علامة تبويب kte 201905

يجلب Office Tab الواجهة المبوبة إلى Office ، ويجعل عملك أسهل بكثير

  • تمكين التحرير والقراءة المبوبة في Word و Excel و PowerPointوالناشر والوصول و Visio والمشروع.
  • فتح وإنشاء مستندات متعددة في علامات تبويب جديدة من نفس النافذة ، بدلاً من النوافذ الجديدة.
  • يزيد من إنتاجيتك بنسبة 50٪ ، ويقلل مئات النقرات بالماوس كل يوم!
أوفيسيتاب القاع
فرز التعليقات حسب
التعليقات (23)
لا يوجد تقييم. كن أول من يقيم!
تم تصغير هذا التعليق بواسطة المشرف على الموقع
مرحبًا ، شكرًا جزيلاً على هذا الرمز. مجرد قضية واحدة. يبدو أنه يحاول إغلاق كافة المصنفات المفتوحة وبالتالي يتوقف إذا تم إلغاء إغلاق مصنف آخر أو عدم الاستجابة له. هل لديك أي تعديلات يمكنها إصلاح هذا؟
تم تصغير هذا التعليق بواسطة المشرف على الموقع
لدي نفس المشكلة ... حاولت فتح مصنف جديد ، وأدخلت بعض البيانات .... عندما حان الوقت ، تم إغلاق كلا المصنفين ، ولكن لم يتم حفظ المصنف الجديد ... هل هناك طريقة لذلك اصلح هذا؟
إلى جانب ذلك ، فهو يعمل بشكل رائع !! شكرًا جزيلاً!!
تم تصغير هذا التعليق بواسطة المشرف على الموقع
مرحبا جاستون ،
تم تحديث الكود مع حل المشكلة. يرجى المحاولة. آسف على الإزعاج وشكرا لتعليقك.
تم تصغير هذا التعليق بواسطة المشرف على الموقع
مرحبا هنري،
تم تحديث الكود مع حل المشكلة. يرجى المحاولة. آسف على الإزعاج وشكرا لتعليقك.
تم تصغير هذا التعليق بواسطة المشرف على الموقع
لا يعمل هذا عند التركيز على خلية معينة في ورقة. حالة الاستخدام هي عندما يكتب المستخدم في خلية ويترك Excel مفتوحًا مع وجود المؤشر داخل الخلية.
تم تصغير هذا التعليق بواسطة المشرف على الموقع
هل تمكنت من إيجاد حل لهذا بأي فرصة؟
تم تصغير هذا التعليق بواسطة المشرف على الموقع
أوصي بتعريف المصنف باسم ملف المصنف. سيسمح هذا للمستخدمين بفتح العديد من المصنفات وإغلاقها فقط المصنف المحدد الذي يحتاج إلى تأمين الوقت.

اقتراح: تعيين xwb = مصنفات (" ")
بدلاً من: تعيين xwb = ActiveWorkbook

أيضًا ، استبدل جميع الإشارات إلى "ActiveWorkbook" إلى Xwb في الوحدة النمطية

كود عظيم خلاف ذلك.
تم تصغير هذا التعليق بواسطة المشرف على الموقع
مرحبا مارك،
شكرا لك على المشاركة.
تم تصغير هذا التعليق بواسطة المشرف على الموقع
مرحبا مارك،

شكرًا لنشر هذا التعديل - تم العثور على العديد من الرموز لإغلاق المصنفات غير النشطة ، ولكن يبدو أن جميعها تؤثر على الشخص الذي لا تريد إغلاقه!

أنا جديد جدًا على VBA ، لذلك لست متأكدًا من كيفية عمل الكود لاستبدال الصياغة "ActiveWorkbook" داخل الوحدة النمطية. لقد حاولت استبدال الصياغة بـ "Xwb" لكن هذا لا يغير شيئًا وقد أكون سخيفًا. هل تمانع في نشر نسخة من الكود من فضلك؟

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

أريد ألا يظهر الوقت أثناء فتح المصنف. (إذا لزم الأمر ، يمكن تغييره في VBA)
تم تصغير هذا التعليق بواسطة المشرف على الموقع
تغيير الخط
xTime = Application.InputBox ("الرجاء تحديد وقت الخمول:" ، "KuTool For Excel" ، "00:00:20" ، ، ، ، ، 2)


إلى

xTime = "00:00:20"


لن تسأل
تم تصغير هذا التعليق بواسطة المشرف على الموقع
هل هناك طريقة لتغيير هذا بحيث يطالب المستخدم بحفظ / إغلاق الملف ، بدلاً من حفظ الملف وإغلاقه تلقائيًا؟
تم تصغير هذا التعليق بواسطة المشرف على الموقع
أهلاً. أحتاج إلى تعيين جدول البيانات المشترك الخاص بي على شبكة المكتب للحفظ التلقائي والإغلاق عندما أنتهي من استخدامه لهذا اليوم. من المفترض أنا ورئيسي فقط إجراء التغييرات وحفظها ، لكن العديد من المديرين يشاهدونها يوميًا.
أحتاج إلى أن أكون قادرًا على حفظه تلقائيًا لنا نحن الاثنين ، مع عدم الحفظ للمستخدمين الآخرين. هل هذا ممكن؟ هل يمكنني تعيين الماكرو للعمل فقط من أجلنا؟ أم أنها ستؤثر على الجميع؟
أعرف كيف أحمي الملاءة ، لكن لا يمكنني فعل ذلك ، لأنهم يريدون أن يكونوا قادرين على إجراء بعض التغييرات المؤقتة من وقت لآخر. أريد فقط أن أكون قادرًا على تقييد الحفظ التلقائي لمستخدمين محددين.
تم تصغير هذا التعليق بواسطة المشرف على الموقع
(تنهد.)
الق نظرة على الكود.
إذا قمت بوضع VBA هذا في Excel001.xlsm ، ولكن عند حدوث المهلة ، يكون لديك Excel002.xlsm كمصنف "نشط" ، فسيتم إغلاق ملف Excel هذا ، بدلاً من الملف الذي وضعت فيه VBA .
تم تصغير هذا التعليق بواسطة المشرف على الموقع
انظر أدناه ، تعليق مارك: "أوصي بتعريف المصنف باسم ملف المصنف. سيسمح هذا للمستخدمين بفتح مصنفات متعددة وإغلاق المصنف المحدد فقط الذي يحتاج إلى تأمين الوقت.

اقتراح: تعيين xwb = مصنفات (" ")
بدلاً من: تعيين xwb = ActiveWorkbook

أيضًا ، استبدل جميع الإشارات إلى "ActiveWorkbook" إلى Xwb في الوحدة النمطية

رمز عظيم خلاف ذلك. "
تم تصغير هذا التعليق بواسطة المشرف على الموقع
مرحبا سيد كيف عرض العد التنازلي؟
تم تصغير هذا التعليق بواسطة المشرف على الموقع
مرحبا سيد كيف عرض العد التنازلي؟
تم تصغير هذا التعليق بواسطة المشرف على الموقع
Perdonen، si se pudiera modificar el código o adaptarlo para que reaccione con formularios (UserForm)، porque solo reacciona al estar active en las celdas pero no en los formularios، gracias
تم تصغير هذا التعليق بواسطة المشرف على الموقع
مرحبًا Moises Peraza ،
لا يؤثر UserForm على استخدام التعليمات البرمجية لـ VBA. هل يمكنك وصف المشكلة التي واجهتها بشكل أكثر وضوحًا.
تم تصغير هذا التعليق بواسطة المشرف على الموقع
Gracias por Responder، el inconveniente que tengo es: le pongo de tiempo de inactividad 2 min. En el momento de trabajar con formularios (ingresar información del cliente)، pasado ese tiempo me cierra o me tira el mensaje que se cerrara، espero darme a entender
تم تصغير هذا التعليق بواسطة المشرف على الموقع
لا يعمل الرمز إذا كانت الوحدة النمطية محمية ، فهل هناك أي طريقة لتشغيل الكود إذا كانت الوحدة محمية.
تم تصغير هذا التعليق بواسطة المشرف على الموقع
مرحبا شينا ،

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

تواصل معنا

حقوق التأليف والنشر © 2009 - شبكة الاتصالات العالمية.extendoffice.com. | كل الحقوق محفوظة. مشغل بواسطة ExtendOffice. | | خريطة الموقع
Microsoft وشعار Office هما علامتان تجاريتان أو علامتان تجاريتان مسجلتان لشركة Microsoft Corporation في الولايات المتحدة و / أو دول أخرى.
محمي بواسطة Sectigo SSL