مصفوفات Excel VBA | قائمة بأفضل 5 أنواع من المصفوفات (مع أمثلة)

مصفوفات Excel VBA

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

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

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

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

خاطئة

عمل المصفوفة على "القاعدة الرياضية للمصفوفة" أي أنها تحدد البيانات من خلال موقعها فقط. لنفترض أنه إذا كان علينا أن نجعل VBA يفهم أننا بحاجة إلى "20" في الخلية "B3" ، فعلينا كتابة رمز الموقع على النحو (3 ، 2) حيث تشير القيمة الأولى إلى موقع الصف والقيمة الثانية تعني رقم العمود. في عالم Excel ، يُطلق على رمز المواقع هذا "الحد الأعلى" و "الحد الأدنى". بشكل افتراضي ، يبدأ الموقع في Excel من واحد وليس من الصفر ، لذلك يرى Excel "A1" كرقم صف 0 وليس رقم صف 1.

وبالمثل ، تبدأ الأعمدة من الصفر وليس من واحد.

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

الآن بعد أن حددنا نوع المصفوفة المطلوبة ، سيتعين علينا الآن إدخال البيانات في هذه المصفوفات.

يجب تقديم هذه البيانات واحدة تلو الأخرى للتميز بالطرق التالية.

بعد تخزين البيانات في هذه المصفوفات ، تصبح جاهزة للاستخدام كمتغير في ترميز VBA.

قائمة بأفضل 5 أنواع من المصفوفات

  1. المصفوفات الثابتة
  2. مصفوفة ديناميكية
  3. مصفوفة ذات بعد واحد
  4. مصفوفة ثنائية الأبعاد
  5. صفيف متعدد الأبعاد

دعونا نرى كل واحد منهم بالتفصيل.

# 1 - المصفوفات الثابتة

صفيف يحتوي على قيمة محددة مسبقًا يمكن تخزينها فيه.

# 2 - مصفوفة ديناميكية

مصفوفة ذات قيمة غير محددة مسبقًا يمكنها التعامل معها.

# 3 - صفيف أحادي البعد

صفيف يمكنه احتواء البيانات فقط إما من الصفوف أو الأعمدة.

# 4 - مصفوفة ثنائية الأبعاد

مصفوفة يمكنها تخزين قيمة من الصفوف والأعمدة.

# 5 - مصفوفة متعددة الأبعاد

كيفية استخدام المصفوفات في VBA (مع أمثلة)؟

يمكنك تنزيل هذه المصفوفات في قالب VBA Excel هنا - المصفوفات في قالب VBA Excel

يمكن استخدام المصفوفات في العديد من المواقف ولكن يجب استخدامها عندما يكون عدد المتغيرات التي سيتم التصريح عنها كبيرًا وليس من المجدي إعلانها.

فيما يلي بعض الأمثلة ولكن قبل الانتقال إلى الأمثلة سوف نتعلم فتح محرر VBA عن طريق مفتاح الاختصار

سيؤدي هذا إلى فتح محرر VBA ، ومن هناك يتعين علينا إدخال الرمز في "ورقة العمل هذه".

مثال 1

اختر نوع المصفوفة التي تريدها ، هل يجب أن تكون مصفوفة ديناميكية أم ثابتة؟

إذا احتجنا إلى مصفوفة ديناميكية ، فسنعرّف البعد على أنه "متغير".

إذا احتجنا إلى مصفوفة ثابتة ، فسنعرّف البعد على أنه "ثابت".

المثال رقم 2

حدد الأعمدة والصفوف التي تريد أن يخزنها المصفوفة.

إذا أدخلنا "1" بين القوسين ، فهذا يعني أن المصفوفة يمكنها الاحتفاظ بقيمة صفين حيث يبدأ حساب Excel من الصفر.

إذا احتجنا إلى أعمدة وصفوف أيضًا ، فنحن بحاجة إلى تحديد كلاهما.

هنا "1 إلى 2" تعني أن صفين و "1 إلى 3" تعني ثلاثة أعمدة.

هنا قمنا بتغيير قاعدة كيفية حساب الصفوف في Excel وطلبنا العد من "1" وليس من الصفر.

المثال رقم 3

إدخال البيانات في المصفوفة.

يجب إدخال البيانات إلى الخلايا بشكل حكيم. هنا يتم إدخال البيانات في شكل (I، j) حيث "I" تعني الصف و "J" تعني العمود.

لذا فإن "a (1،1") تعني تلك الخلية "A1"

المثال رقم 4

إغلاق الكود.

بعد إدخال البيانات للمصفوفة ، ستكون الخطوة الأخيرة هي إغلاق الكود.

أشياء للذكرى

  • بشكل افتراضي ، سيحسب Excel الصفوف بدءًا من الصفر. هذا يعني أن الرقم "2" بدلاً من "I" يعني 3 صفوف وليس صفين. هذا ينطبق أيضا على "J".
  • يجب أن تبدأ البيانات التي يجب إدخالها للصفيف من (0 ، 0) من الصف الأول والعمود الأول.
  • في حالة استخدام المصفوفات الديناميكية ، فسيحتاج ذلك إلى وظيفة "VBA REDIM" لتحديد عدد الصفوف والأعمدة المطلوب حفظها.
  • في حالة إنشاء مصفوفة ثنائية الأبعاد ، يتعين علينا استخدام "عدد صحيح" كبعد.
  • يجب حفظ ملف Excel في الإصدار "المتوافق مع الماكرو" وإلا فإن الترميز الذي قمنا به في VBA سوف يتلاشى ولن يتم تشغيله في المرة القادمة.

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