السلام عليكم
فى الملف المرفق فورم يوجد به عدة ازرار
عايز بمجرد الضغط على اى زر يتم نقل اسم الزر نفسة الى الخلية B2 وحتى عند تغيير اسم الزر (حماده ) مثلا يتم عمل الكود بنفس الاسم الجديد الذى تم تغييرة
ولكم جزيل الشكر
فى الملف المرفق فورم يوجد به عدة ازرار
عايز بمجرد الضغط على اى زر يتم نقل اسم الزر نفسة الى الخلية B2 وحتى عند تغيير اسم الزر (حماده ) مثلا يتم عمل الكود بنفس الاسم الجديد الذى تم تغييرة
ولكم جزيل الشكر
أفضل إجابة مقدمة من
YasserKhalil
وهي:
وعليكم السلام أخي الكريم
قم بالدخول لمحرر الأكواد وأدرج كلاس موديول عن طريق عمل كليك يمين في نافذة المشروع ثم Insert ثم Class Module ثم قم بإعادة تسمية الكلاس موديول باسم clsCommandButtons
وأخيراً ضع الكود التالي في الكلاس موديول
وضع الكود التالي في حدث الفورم UserForm1
وفي موديول عادي ضع الكود التالي لإظهار الفورم
قم بتشغيل الكود المسمى ShowForm وجرب النقر على أزرار الأوامر ..
عرض الإجابة
قم بالدخول لمحرر الأكواد وأدرج كلاس موديول عن طريق عمل كليك يمين في نافذة المشروع ثم Insert ثم Class Module ثم قم بإعادة تسمية الكلاس موديول باسم clsCommandButtons
وأخيراً ضع الكود التالي في الكلاس موديول
Public WithEvents buttonGroup As MSForms.CommandButton
Private Sub buttonGroup_Click()
ThisWorkbook.Worksheets(1).Range("B2").Value = buttonGroup.Caption
End Sub
وضع الكود التالي في حدث الفورم UserForm1
Dim buttons() As New clsCommandButtons
Private Sub UserForm_Initialize()
Dim ctl As Control, buttonCount As Integer
buttonCount = 0
For Each ctl In UserForm1.Controls
If TypeName(ctl) = "CommandButton" Then
buttonCount = buttonCount + 1
ReDim Preserve buttons(1 To buttonCount)
Set buttons(buttonCount).buttonGroup = ctl
End If
Next ctl
End Sub
وفي موديول عادي ضع الكود التالي لإظهار الفورم
Sub ShowForm()
UserForm1.Show False
End Sub
قم بتشغيل الكود المسمى ShowForm وجرب النقر على أزرار الأوامر ..
أعجبني أعجبك هذاإلغ اعجابي 0