خطأ VBA 1004 (أفضل 6 أنواع) | كيفية إصلاح خطأ وقت التشغيل 1004 في VBA؟

خطأ VBA 1004 هو خطأ وقت تشغيل في VBA والذي يُعرف أيضًا باسم الخطأ المحدد من قِبل التطبيق أو المحدد بواسطة الكائن ولماذا ذلك لأن لدينا عددًا محدودًا من الأعمدة في Excel وعندما يعطي رمزنا الأمر بالخروج عن النطاق نحصل على 1004 خطأ ، هناك مواقف أخرى عندما نحصل على هذا الخطأ عندما نشير إلى نطاق غير موجود في الورقة.

خطأ VBA 1004 في Excel

خطأ VBA 1004 هو خطأ وقت تشغيل في VBA ويحدث أثناء تشغيل الكود. الأخطاء جزء لا يتجزأ من الترميز ، خاصةً عندما تكتب لأول مرة قد تصادف العديد من الأخطاء في VBA. هذا أمر شائع للجميع وليس هناك مشكلة كبيرة بشأنه.

ومع ذلك ، فإن معرفة الخطأ في سبب مجيئه يجعلك تتجنب تلك الأخطاء في المستقبل القريب.

في هذه المقالة ، سنناقش أحد الأخطاء المهمة في Excel “VBA 1004 Error”.

أهم 6 أخطاء في Excel VBA 1004 في وقت التشغيل

يمكنك تنزيل قالب خطأ VBA 1004 هنا - قالب خطأ VBA 1004

# 1 - خطأ وقت تشغيل VBA 1004: هذا الاسم مأخوذ بالفعل. جرب طريقة مختلفة:

يحدث هذا الخطأ أثناء إعادة تسمية الورقة.

إذا كان اسم ورقة العمل موجودًا بالفعل وإذا حاولت تعيين نفس الاسم لورقة أخرى ، فإن VBA يلقي خطأ وقت التشغيل 1004 الذي يذكر "الاسم مأخوذ بالفعل. جرب طريقة مختلفة "

على سبيل المثال ، انظر إلى الكود أدناه.

رمز:

 Sub Error1004_Example () Worksheets ("Sheet2"). Name = "Sheet1" End Sub 

أحاول إعادة تسمية الورقة 2 لتصبح الورقة 1. ولكن لدي بالفعل ورقة باسم "Sheet1".

إذا قمت بتشغيل هذا الرمز باستخدام المفتاح F5 أو يدويًا ، فسأحصل على خطأ وقت التشغيل 1004: هذا الاسم مأخوذ بالفعل. جرب واحدة مختلفة

لذا ، حاول إعادة تسمية الورقة وفقًا لذلك.

# 2 - خطأ وقت تشغيل VBA 1004: فشل أسلوب "نطاق" الكائن '_ Global':

يحدث هذا عادةً عندما نحاول الوصول إلى النطاق المحدد في Excel مع وجود خطأ إملائي أو غير موجود على الإطلاق في ورقة العمل التي تشير إليها.

لهذا ، قمت بتسمية نطاق الخلايا باسم "عناوين" كما هو موضح في الصورة أدناه.

الآن باستخدام كائن Range ، يمكنني الوصول إلى هذا النطاق.

رمز:

 Sub Error1004_Example () Range ("Headings") حدد End Sub 

إذا قمت بتشغيل هذا الرمز عن طريق الضغط على مفتاح F5 ، فسيحدد هذا الرمز النطاق المسمى.

ولكن إذا ذكرت النطاق المسمى بشكل خاطئ ، فسأحصل على خطأ وقت التشغيل 1004: فشل أسلوب "نطاق" الكائن "_ العالمي"

رمز:

 Sub Error1004_Example () Range ("Headngs") حدد End Sub 

قم بتشغيل هذا الرمز يدويًا أو باستخدام المفتاح F5 وشاهد النتيجة.

# 3 - خطأ وقت تشغيل VBA 1004: فشل تحديد طريقة فئة النطاق:

يحدث هذا عادةً عندما نحاول تحديد خلايا بخلاف الورقة النشطة دون تحديد الورقة أو تنشيطها.

للحصول على مثال ، انظر إلى الكود أدناه.

رمز:

 Sub Error1004_Example () Worksheets ("Sheet1"). Range ("A1: A5"). حدد End Sub 

يشير الرمز أعلاه إلى تحديد الخلايا من A1 إلى A5 في ورقة العمل "Sheet1". لتجربة الورقة النشطة الحالية الخاصة بي هي "ورقة 2" ، وليست "ورقة 1".

سأقوم بتشغيل هذا الرمز باستخدام مفتاح F5 أو يدويًا لمعرفة ما سيحدث.

لقد حصلنا على خطأ وقت التشغيل 1004: فشل تحديد طريقة فئة النطاق. هذا لأنه بدون تنشيط الورقة نحاول تحديد خلايا تلك الورقة. لذلك نحتاج أولاً إلى تنشيط المحض قبل أن نختار الخلايا. أدناه هو الرمز الصحيح.

# 4 - فشل أسلوب VBA Runtime Error 1004 في فتح مصنفات الكائنات:

يحدث هذا عادةً عند محاولة فتح المصنف الذي يحمل نفس اسم المصنف الآخر الذي تم فتحه بالفعل.

للحصول على مثال ، انظر إلى الكود أدناه.

رمز:

 Sub Error1004_Example () Dim wb as Workbook Set wb = Workbooks.Open ("\\ FileName.xls"، ReadOnly: = True، CorruptLoad: = xlExtractData) End Sub 

هذا سوف يلقي الخطأ أدناه.

# 5 - طريقة VBA Runtime Error 1004 آسف لم نتمكن من العثور على:

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

الآن ألق نظرة على الكود أدناه.

رمز:

 Sub Error1004_Example () Workbooks.Open Filename: = "E: \ Excel Files \ Infographics \ ABC.xlsx" End Sub 

يشير هذا الرمز إلى فتح الملف "ABC.xlsx" في مسار المجلد المذكور.

بالتأكيد أعلم أنه لا يوجد ملف في مسار المجلد المذكور. في حالة عدم وجود ملف في المجلد المذكور ، سنحصل على طريقة Runtime Error 1004 آسف لم نتمكن من العثور عليها.

# 6 - خطأ وقت تشغيل VBA 1004 فشل تنشيط فئة نطاق الأسلوب:

يحدث هذا الخطأ بشكل أساسي بسبب تنشيط نطاق الخلايا دون تنشيط ورقة العمل.

للحصول على مثال ، انظر إلى الكود أدناه.

رمز:

 Sub Error1004_Example () Worksheets ("Sheet1"). Range ("A1: A5"). تنشيط End Sub 

هذا الخطأ مشابه جدًا للخطأ الذي رأيناه في Run Time Error 1004: Select Method of Range class فشل.

إذا قمت بتشغيل يدويًا أو باستخدام المفتاح F5 ، فسنحصل على الخطأ أدناه.

لأنه بدون تنشيط الورقة ، لا يمكننا تنشيط الخلايا الموجودة فيها. لذا قم أولاً بتنشيط الورقة ثم قم بتنشيط خلايا تلك الورقة.


$config[zx-auto] not found$config[zx-overlay] not found