اذهب الي المحتوي
أوفيسنا

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

قام بنشر (معدل)

السلام عليكم 

لدي  مشكلة في استخدام CONTROLS  في مشروعي

عند استخدام CONTROLS  يظهر الخطأ التالي:

 

FGFGFGF.png

أتمنى المساعدة وشكراً

تم تعديل بواسطه علي بركات
قام بنشر

ربما لا يمكنك الحصول على اجابة صحيحة بنشرك لصورة 

حاول ارفاق ملفك او على الاقل نشر الكود بالكامل مع توضيح المطلوب  لنتمكن من مساعدتك 

قام بنشر


Dim bgg
For bgg = 1 To 17
If Application.WorksheetFunction.VLookup(CheckBox(bgg).Caption, Config.Range("b:e"), 4, 2) = "لا" Then

CheckBox(bgg).Caption.VALUE= FALSE
Else
End If

Next bgg

 

أريد تغيير قيم الـ CHECKBOXS البالغ عددها 17 حسب قيمة معينة إن كانت نعم أو لا

حاولت استخدام Controls يظهر لي الخطأ التالي:

2023-12-30_081815.png

قام بنشر (معدل)

بما انك لم تقم بنشر الكود بالكامل لنتمكن من تحديد عنصر التغيير لديك 

و على حسب تخميني انك تستخدم يوزرفورم اليك نمودج للحل يمكنك تطويعه على حسب احتياجاتك وكما 

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

لنفترض انك تقوم  باختبار البيانات عن طريق Combobox1 

'''''''''''''''طريقة رقم 1''''''''''''''''''''
Private Sub ComboBox1_Change()
For bgg = 1 To 17
If Application.WorksheetFunction.VLookup(Me.ComboBox1.Text, Range("B:E"), 4, 0) = "نعم" Then
      Me("CheckBox" & bgg).Caption = True
      Else
      Me("CheckBox" & bgg).Caption = False
      End If
   Next
End Sub
''''''''''''''طريقة رقم 2''''''''''''''''''''
'Private Sub ComboBox1_Change()
'Dim bgg As Control, réf As String, col As Range
'Set WS = Sheet1: Set col = WS.Range("B2:E" & WS.[B65000].End(xlUp).Row)
'For Each bgg In Me.Controls
'réf = Me.ComboBox1.Text
'If Application.WorksheetFunction.VLookup(réf, col, 4, False) = "نعم" Then
'    If TypeName(bgg) = "CheckBox" Then bgg.Caption = True
'    Else
'      If TypeName(bgg) = "CheckBox" Then bgg.Caption = False
'End If
'Next
'End Sub

''''''''''''''طريقة رقم 3''''''''''''''''''''
'For Each bgg In UserForm1.Controls
'If TypeName(bgg) = "CheckBox" Then
'If Application.WorksheetFunction.VLookup(Me.ComboBox1.Text, Range("B:E"), 4, 0) = "نعم" Then bgg.Caption = True Else bgg.Caption = False
'End If
'Next bgg

'''تحديد العناصر''''''طريقة رقم 4''''''''''''''''''''
'Dim bgg As Control
'For Each bgg In Me.Controls
'If Application.WorksheetFunction.VLookup(Me.ComboBox1.Text, Range("B:E"), 2, 0) = "نعم" Then
'    If TypeName(bgg) = "CheckBox" Then bgg.Value = True
'    Else
'      If TypeName(bgg) = "CheckBox" Then bgg.Value = False
'End If
'Next

'''التحقق مع تلوين القيمة  ''''''طريقة رقم 5''''''''''''''''''''
Private Sub ComboBox1_Change()
Dim LR&
Set ws = Sheet1

With ws
    LR = .Cells(.Rows.Count, "B").End(xlUp).Row
    For bgg = 1 To 17
If Application.WorksheetFunction.VLookup(Me.ComboBox1.Text, Range("B:E"), 4, 0) = "نعم" Then
      Me("CheckBox" & bgg).Caption = True
      Else
      Me("CheckBox" & bgg).Caption = False
      End If
   Next
For i = 2 To LR
    .Range("E" & i).Interior.Color = xlNone
 If .Range("B" & i).Value = Me.ComboBox1.Value And .Range("E" & i).Value = "نعم" Then
    .Range("E" & i).Interior.Color = vbYellow
        End If
      Next i
   End With
End Sub

اليك ملف حاولت تنفيد الفكرة عليه لتتمكن من تعديلها بما يناسبك

CONTROLS F_VLookup.xlsm

تم تعديل بواسطه محمد هشام.
  • Like 2

انشئ حساب جديد او قم بتسجيل دخولك لتتمكن من اضافه تعليق جديد

يجب ان تكون عضوا لدينا لتتمكن من التعليق

انشئ حساب جديد

سجل حسابك الجديد لدينا في الموقع بمنتهي السهوله .

سجل حساب جديد

تسجيل دخول

هل تمتلك حساب بالفعل ؟ سجل دخولك من هنا.

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

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

Important Information