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

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

قام بنشر

السلام عليكم ورحمة الله وبركاته ...تحية الى جميع الاخوة الاعضاء

احاول انشاء برنامج صغير للحسابات واحاول ايجاد طريقة لاستدعاء اكبر قيمة الى TextBox بشرط محتوي ComboBox
' كود لا يعمل بشكل صحيح

a = ComboBox1.Value
b = formulaarry = "=Max(IF(a = (c2:c), (a2:a) + 1, 1))"
TextBox1.Value = b
Label1.Caption = b

وصلت الى حل عن طريق معادلة فى خلية فى شيت اكسيل

'كود بمعادلة وسيطة فى شيت اكسيل
 

Sheet1.[f2].FormulaArray = "=MAX(IF(g2= (sheet2!c2:c100),(sheet2!a2:a100)+1,1))"
Sheet1.[g2] = ComboBox1.Value
TextBox2.Value = Sheet1.[f2].Value
Label2.Caption = Sheet1.[f2].Value

لكن ما ابحث عنه هو طريقة للحصول على الناتج بدون الاحتياج الى معادلات وسيطة فى شيت الاكسيل

مرفق ملف يوضح ما سبق ..شكرا جزيلاً    ....انتبه من فضلك, تــــم تعديل وضع الأكواد  بالمشاركة والطريقة كما بالصورة المرفقة

Test01.jpg

Test01.xlsm

1.png

  • تمت الإجابة
قام بنشر

جرب استعمال هذا السطر

Private Sub comboBox1_Change()
TextBox1.Value = Evaluate("=MAXIFS(Sheet2!A:A,Sheet2!C:C,""" & ComboBox1.Value & """)+1")
End Sub

باستعمال maxifs تقريبا تعمل في اوفيس 2013 وما بعده 

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

TextBox1.Value = Evaluate("=MAX(IF(""" & ComboBox1.Value & """=(Sheet2!C$2:C$100),(Sheet2!A$2:A$100)+1,1))")

بالتوفيق

  • Like 1
  • Thanks 1
قام بنشر

شكرا ا/محمد

كود حضرتك تمام
المشكلة كانت فى اصدار الاوفيس اللى كنت شغال عليه لا يدعم دالة MAXIFS
جزاكم الله كل الخير وجعل كل ما تقدمونه من مساعدات فى ميزان حسناتكم

  • Like 1
زائر
هذا الموضوع مغلق.
  • تصفح هذا الموضوع مؤخراً   0 اعضاء متواجدين الان

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

Important Information