تأتي جلسة الأسئلة والأجوبة اليوم بفضل SuperUser، وهو قسم فرعي من Stack Exchange، وهو عبارة عن مجموعة من مواقع الأسئلة والأجوبة على الويب يقودها المجتمع.
يريد قارئ SuperUser LearningAsIGo معرفة ما إذا كانت هناك طريقة للحد من استخدام وحدة المعالجة المركزية لـ Microsoft Excel أثناء تشغيل برنامج VBA النصي على جهاز الكمبيوتر الخاص به:
هل هناك طريقة للحد من استخدام وحدة المعالجة المركزية لبرنامج Microsoft Excel عند تشغيله؟ لدي برنامج VBA النصي الذي يحسب كمية كبيرة من صيغ المصفوفات العملاقة. تستغرق مجموعة العمليات الحسابية بأكملها حوالي عشرين دقيقة لإكمالها وتستخدم 100 بالمائة من وحدة المعالجة المركزية الخاصة بي. لا أستطيع استخدام جهاز الكمبيوتر الخاص بي خلال هذا الوقت وأفضل تشغيل برنامج Excel “في الخلفية” أثناء استخدام حوالي 50 بالمائة من سعة وحدة المعالجة المركزية الخاصة بي حتى أتمكن من الاستمرار في القيام بأشياء أخرى.
أي اقتراحات؟ نظام التشغيل لجهاز الكمبيوتر الخاص بي هو Windows 7 Enterprise 64 بت مع إصدار 2007 32 بت من Excel المثبت عليه.
هل هناك طريقة للحد من استخدام وحدة المعالجة المركزية لبرنامج Microsoft Excel أثناء تشغيل وظائف VBA؟
الجواب
لدى المساهم في SuperUser mtone الإجابة لنا:
إذا تم استدعاء دالة VBA من عدة صيغ أو إذا كان البرنامج النصي الخاص بك ينشئ أو يفرض إعادة حساب عدة صيغ، فمن المؤكد أن هذا يجب أن يستفيد من ميزة الحساب متعدد الخيوط في Microsoft Excel. على التوالي، سيؤدي هذا إما إلى تشغيل مثيلات متعددة لوظيفة VBA الخاصة بك لكل صيغة، أو إعادة حساب خلايا متعددة في وقت واحد أثناء تشغيل البرنامج النصي VBA الخاص بك على مؤشر ترابط واحد.
يمكنك تحديد عدد المواضيع التي يستخدمها Excel لإعادة حساب الصيغ من خلال الانتقال إلى الخيارات وتحديد القسم المتقدم، ثم التمرير لأسفل حتى تصل إلى القسم الفرعي الصيغ.
هل لديك شيء تضيفه إلى الشرح؟ الصوت قبالة في التعليقات. هل تريد قراءة المزيد من الإجابات من مستخدمي Stack Exchange الآخرين ذوي الخبرة التقنية؟ تحقق من موضوع المناقشة الكامل هنا.