اذهب الي المحتوي
أوفيسنا
بحث مخصص من جوجل فى أوفيسنا
Custom Search

كيف أعوّض دالة ISBLANK وOR بكود VBA


الردود الموصى بها

السلام عليكم

 

أحيي الجميع في هذا الصرح التعليمي الكبير

 

أنا مبتدئ ولدي ملف يحتوي على الكثير من المعادلات وهي تعمل بشكل ممتاز

أريد أن أحول هذه المعادلات إلى أكواد VBA ولكن بشكل تدريجي

 

أريد أن نبدأ بهذه المعادلة ,وهي معادلة صفيف

{=IF(OR(ISBLANK(C7:AF7));"";ROUND(SUM(BB7;BI7;BP7;BW7);0))} 

تقع المعادلة في الخليه AH7  في ورقة عمل إسمها (1) أي رقم 1 وهذه المعادلة موجوده في كل خليه حتى AH71 يعني في النطاق AH7:AH71

=IF(OR(ISBLANK(C7:AF7)),"""",ROUND(SUM(BB7,BI7,BP7,BW7),0))

المشكلة : الشق الأول لا يعمل

=IF(OR(ISBLANK(C7:AF7)),"""",

فقط الشق الثاني يعمل

ROUND(SUM(BB7,BI7,BP7,BW7),0)

1- أريد  صياغة كود يفحص النطاق C7:AF7 إذا به إي خليه فارغة فانه يرجع الخليه AH فراغ وإذا النطاق مكتمل بالبيانات فإنه يعمل بالشق الثاني من المعادلة

ويكون نفس هذا الكود يعمل على 13 ورقة عمل بنفس نظام الورقة الأولى في نفس الملف لأن الأوراق متاشبه في التنظيم يختلف التاريخ فقط

 

2- أين نضع هذا الكود بالضبط :هل في workbook أو مودويل أو في أي الشيت ؟

أذا أردته ينفذ الأمر على 13 ورقة  وكذلك يحث نفس تلقائي بمجرد فتح الملف وكذلك بمجرد إجراء أي تغيير أثناء العمل على البيانات

 

آسف على الإطالة .... ولكم جزيل الشكر

تم تعديل بواسطه أبو إسحاق
رابط هذا التعليق
شارك

السلام عليكم

المعادلة لا تعمل لأنها ناقصة

((IF(OR(ISBLANK(C7:AF7)),"""",ROUND(SUM(BB7,BI7,BP7,BW7),0=       

,يجب ان تضع فاصلة بين """" لتصبح هكذا  "",""

 

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

 

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

لأني سمعت أن isblank لا تعمل مع VBA فاردت الحل

{=IF(OR(ISBLANK(C7:AF7));"";ROUND(SUM(BB7;BI7;BP7;BW7);0))}
رابط هذا التعليق
شارك

أخوي سليم بارك الله فيك إنت أسئت فهم ما أريده أنا 

 

أنا لم أشتكي أن المعادله لا تعمل 

المعادله تعمل مع 100% ولا توجود بها أدنى مشكله عندما تكون كمعادلة في أكسل

{=IF(OR(ISBLANK(C7:AF7));"";ROUND(SUM(BB7;BI7;BP7;BW7);0))}

فقط أردت صياغة معادلة الصفيف هذه ككود فيجوال بيسك 

فأنا مبتدئ كما ذكرت

 

 

وهذه محاولتي الأخيره عند وضعها ككود فيجوال بيسك

Selection.FormulaArray = _
 "=IF(OR(ISBLANK(C7:AF7)),"""",ROUND(SUM(BB7,BI7,BP7,BW7),0))"

المعادله هذه تعمل

ولكن المشكله تعمل في خليه واحده فقط وتعمل فقط عن إختيار الخليه بالفأره  وهذا الذي لا أرغب به

----------------------------

 

كل ما أردته ذكرته في المشاركة رقم واحد 1

 

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

 

رابط هذا التعليق
شارك

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

زائر
اضف رد علي هذا الموضوع....

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • تصفح هذا الموضوع مؤخراً   0 اعضاء متواجدين الان

    • لايوجد اعضاء مسجلون يتصفحون هذه الصفحه
×
×
  • اضف...

Important Information