Monday 11 December 2017

الانتقال من المتوسط - صفيف vba


أدناه سوف ننظر إلى برنامج في إكسيل فبا أن يقوم بإنشاء جدول متوسط ​​المتداول وضع زر أمر في ورقة العمل وإضافة سطر التعليمات البرمجية التالي. رانج B3 100. يدخل هذا السطر رمز رقم عشوائي بين 0 و 100 إلى الخلية B3 نريد إكسيل فبا لأخذ قيمة الأسهم الجديدة ووضعه في الموضع الأول من الجدول المتوسط ​​المتداول يجب أن تتحرك جميع القيم الأخرى لأسفل مكان واحد ويجب حذف القيمة الأخيرة. إنشاء رمز حدث تغيير ورقة العمل المضافة إلى سيتم تنفيذ حدث تغيير ورقة العمل بواسطة إكسيل فبا عند تغيير خلية في ورقة عمل .2 انقر نقرا مزدوجا فوق الورقة 1 ورقة 1 في مستكشف المشروع .3 اختر ورقة العمل من القائمة المنسدلة اليسرى اختر تغيير من القائمة المنسدلة اليمنى. إضافة خطوط التعليمات البرمجية التالية إلى حدث تغيير ورقة العمل .4 قم بتعريف متغير يسمى نيوفالو من نوع عدد صحيح و نقطتين فيرستفورفالز و lastfourvalues. Dim نيوفالو كما صحيح فيرستفورفالز كمجموعة، لاستفورفالويس أس range.5 ذي وركشيت تشانغ e حدث يستمع إلى جميع التغييرات على ورقة 1 نريد فقط إكسيل فبا أن تفعل شيئا إذا تغير شيء في الخلية B3 لتحقيق ذلك، إضافة سطر التعليمات البرمجية التالية. إذا B 3 ثم 6. نحن تهيئة نوفالو مع قيمة الخلية B3، فيرستفوراليس مع المدى D3 D6 و لاستفورفالويس مع المدى D4 D7.newvalue المدى B3 تعيين فيرستفورفالويس المدى D3 D6 تعيين لاستفورفالويس المدى D4 D7.7 الآن يأتي خدعة بسيطة نحن نريد لتحديث الجدول المتوسط ​​المتداول يمكنك تحقيق ذلك عن طريق استبدال القيم الأربع الأخيرة مع القيم الأربعة الأولى للجدول ووضع قيمة الأسهم الجديدة في المركز الأول. رانج D3 newvalue.8 دون أن ننسى لإغلاق البيان إذا .9 وأخيرا، أدخل الصيغة أفيراج D3 D7 في الخلية D8.10 اختبار البرنامج من خلال النقر على زر الأمر. كوستوم متوسط ​​function. Below سوف ننظر في برنامج في إكسيل فبا الذي يقوم بإنشاء دالة تعريف المستخدم الذي يحسب متوسط ​​نطاق تم اختياره عشوائيا باستثناء واحد أو أكثر القيم التي هي القيم المتطرفة ويجب أن يكون t متوسط. يجب تحديد وظائف المستخدم المعرفة في وحدة نمطية. افتح محرر فيسوال باسيك ثم انقر فوق إنزيرت، Module.2 إضافة سطر التعليمات البرمجية التالي. فونكتيون كوستومافيراج رنغ أس رانج، لور أس إنتيجر وبر أس إنتيجر. اسم وظيفتنا هو كوستومافراج الجزء بين الأقواس يعني نعطي إكسيل فبا نطاق واثنين من المتغيرات الصحيحة كإدخال نحن نيم رانج رنج و متغير واحد صحيح نطلق عليه متغير واحد صحيح و نسمي واحد متغير نسميه العلوي ولكن يمكنك استخدام أي أسماء .3 نعلن بعد ذلك كائن رانج و متغيرين من نوع إنتيجر نطلق على كائن رانج خلية متغير واحد صحيح ونحن نطلق على مجموع ومتغير واحد صحيح عدد نسميه العد. خلايا ديم كمجال، مجموع كما عدد صحيح كما Integer.4 نريد التحقق من كل خلية في نطاق تم اختيارها عشوائيا هذا النطاق يمكن أن يكون من أي حجم في إكسيل فبا، يمكنك استخدام للحصول على كل حلقة التالية لهذا إضافة خطوط التعليمات البرمجية التالية. للكل خلية في rng. Note يتم اختيار رنغ والخلية عشوائيا هنا، يمكنك استخدام أي أسماء تذكر أن تشير إلى هذه الأسماء في بقية التعليمات البرمجية .5 بعد ذلك، لكل قيمة في هذا النطاق إذا كانت تقع بين القيمتين الأدنى والأعلى إذا كان ذلك صحيحا، فإننا زيادة مجموع من قيمة الخلية ونحن زيادة عدد 1 إضافة خطوط التعليمات البرمجية التالية إلى حلقة. إذا كان أقل وأعلى ثم المجموع الكلي عد العد 1 نهاية 6. لإرجاع نتيجة هذه الدالة متوسط ​​المطلوب، إضافة سطر التعليمات البرمجية التالية خارج عدد الحلقات. كوستومافيرج مجموع العد 7 لا ننسى لإنهاء وظيفة إضافة السطر 8. الآن يمكنك استخدام هذه الدالة تماما مثل أي وظيفة إكسيل أخرى لحساب متوسط ​​الأرقام التي تقع الرهان قيمتين. يمكنك التحقق من جميع القيم التي تقل عن 10 وأعلى من 30 واستخدام الدالة المتوسطة القياسية في إكسيل لمعرفة ما إذا كان إكسيل يحسب نفس المتوسط ​​مثل الدالة المتوسطة المخصصة. لدينا وظيفة متوسط ​​مخصص يعمل ملاحظة هذه الوظيفة متاحة فقط في هذا المصنف. أريد حساب متوسط ​​متحرك لآخر، ويقول 20، وأرقام من العمود A المشكلة هي أن بعض خلايا العمود قد تكون فارغة، وينبغي تجاهلها example. A تتحرك متوسط ​​الثلاثة الأخيرة سيكون 155 167 201 3 لقد حاولت تنفيذ هذا باستخدام المتوسط، تعويض، مؤشر، ولكن أنا ببساطة لا أعرف كيف أنا ما قليلا مألوفة مع وحدات الماكرو، لذلك هذا الحل سوف تعمل بشكل جيد موفينغايفيراج A13.Thanks للحصول على أي نصائح أو حلول. أسهم 12 مارس 11 في 15 36.Enter هذا مع التحول السيطرة إدخال لجعلها صيغة صفيف هذا وسوف تجد أحدث ثلاث قيم إذا كنت تريد أكثر أو أقل، تغيير حالتين من 3 في الصيغة ل كل ما تريد. هذا الجزء يعود 4 هاي رقم الصف من جميع الخلايا التي لها قيمة أو 5 في المثال الخاص بك لأن الصفوف 6 و 8 و 9 هي الصفوف من 1 إلى 3 أعلى الصفوف مع قيمة. يعود هذا الجزء 9 ترو أو فالس استنادا إلى ما إذا كان رقم الصف هو أكبر من 4th أكبر. وهذا يضرب القيم في A1 A9 من قبل تلك 9 قيم أو فالس يتم تحويل ترويس إلى 1 و فالس إلى الصفر هذا يترك دالة سوم مثل هذا. لأن جميع القيم أعلاه 155 دون ر تلبية معيار رقم الصف، الحصول على مضروبة من الصفر. أنا قد كتبت السيناريو القصير في فبا هوبيفول يفعل ما تريد هنا أنت. 1 لقد وضعت الحد إلى 360 خلايا وهذا يعني أن البرنامج النصي لن ننظر لأكثر من 360 خلايا إذا كنت ترغب في تغيير فإنه بعد ذلك تغيير القيمة الأولية للعداد. 2 النصي لا يعود متوسط ​​تقريب تغيير الصف الأخير إلى موفينغافيراج جولة كدبل تمب ط، 2.3 استخدام هو تماما مثل أردت، لذلك فقط اكتب موفينغايفيراج a1 3 في الخلية. أي تعليقات هي موضع ترحيب .

No comments:

Post a Comment