انتقل إلى المحتوى الرئيسي

كيف يتم تعبئة Userform ComboBox بجميع أسماء الأوراق في Excel؟

تتحدث هذه المقالة عن تعبئة جميع أسماء أوراق المصنف الحالي في مربع تحرير وسرد لنموذج مستخدم في Excel.

قم بتعبئة Userform ComboBox بجميع أسماء الأوراق برمز VBA


قم بتعبئة Userform ComboBox بجميع أسماء الأوراق برمز VBA

يمكن أن تساعدك التعليمات البرمجية لـ VBA التالية في إدراج كافة أسماء أوراق المصنف الحالي في مربع تحرير وسرد userform. الرجاء القيام بما يلي.

1. اضغط على قديم + F11 مفاتيح في نفس الوقت لفتح ميكروسوفت فيسوال باسيك للتطبيقات نافذة.

2. في ال ميكروسوفت فيسوال باسيك للتطبيقات نافذة ، يرجى إدخال Userform من خلال النقر إدراج > المستخدم كما هو موضح أدناه لقطة الشاشة.

3. ثم ارسم وأدخل عنصر تحكم مربع تحرير وسرد في Userform. انظر لقطة الشاشة:

4. انقر بزر الماوس الأيمن فوق مربع التحرير والسرد المُدرج ، ثم حدد عرض الرمز من قائمة السياق. انظر لقطة الشاشة:

5. في الافتتاح ميكروسوفت فيسوال باسيك للتطبيقات النافذة ، يرجى نسخ ولصق رمز VBA أدناه لاستبدال الرمز الأصلي في نافذة Code.

كود فبا: قم بتعبئة Userform ComboBox بجميع أسماء أوراق المصنف الحالي

Private Sub UserForm_Initialize()
    Dim I As Long
    Me.ComboBox1.Clear
    For I = 1 To Sheets.Count
        Me.ComboBox1.AddItem Sheets(I).Name
    Next
    Me.ComboBox1.Value = ActiveSheet.Name
End Sub

ملاحظات: في الكود، ComboBox1 هو اسم مربع التحرير والسرد المدرج. يرجى تغييره إلى واحد خاص بك.

6. اضغط على F5 مفتاح لتشغيل الكود. في نموذج المستخدم الافتتاحي، يمكنك رؤية جميع أسماء أوراق المصنف الحالي معروضة في مربع التحرير والسرد كما هو موضح في الصورة أدناه:


قم بإدراج جميع أسماء الأوراق بسهولة في Excel

• قم بإنشاء قائمة بأسماء الأوراق فائدة كوتولس ل إكسيل يمكن أن يساعد في سرد ​​جميع أسماء أوراق العمل للمصنف النشط بسهولة في ورقة عمل جديدة في Excel. ويمكنك الانتقال إلى ورقة العمل المقابلة مباشرة من خلال النقر على اسم الورقة كما هو موضح في لقطة الشاشة أدناه.
قم بتنزيله وجربه الآن! (تجربة مجانية لمدة 30 يومًا)


مقالات ذات صلة:

أفضل أدوات إنتاجية المكتب

🤖 مساعد Kutools AI: إحداث ثورة في تحليل البيانات على أساس: التنفيذ الذكي   |  إنشاء التعليمات البرمجية  |  إنشاء صيغ مخصصة  |  تحليل البيانات وإنشاء الرسوم البيانية  |  استدعاء وظائف Kutools...
الميزات الشعبية: البحث عن التكرارات أو تمييزها أو تحديدها   |  حذف الصفوف الفارغة   |  دمج الأعمدة أو الخلايا دون فقدان البيانات   |   جولة بدون صيغة 
سوبر بحث: معايير متعددة VLookup    VLookup ذات القيمة المتعددة  |   VLookup عبر أوراق متعددة   |   بحث غامض ....
قائمة منسدلة متقدمة: إنشاء القائمة المنسدلة بسرعة   |  القائمة المنسدلة التابعة   |  قائمة منسدلة متعددة التحديد ....
مدير العمود: إضافة عدد محدد من الأعمدة  |  نقل الأعمدة  |  تبديل حالة رؤية الأعمدة المخفية  |  مقارنة النطاقات والأعمدة 
الميزات المميزة: التركيز على الشبكة   |  عرض تصميم   |   شريط الفورمولا الكبير    مدير المصنفات والأوراق   |  مكتبة الموارد (النص السيارات)   |  منتقي التاريخ   |  اجمع أوراق العمل   |  تشفير/فك تشفير الخلايا    إرسال رسائل البريد الإلكتروني عن طريق القائمة   |  سوبر تصفية   |   مرشح خاص (تصفية غامق / مائل / يتوسطه خط ...) ...
أفضل 15 مجموعة أدوات12 نص الأدوات (إضافة نص, إزالة الأحرف، ...)   |   +50 رسم الأنواع (مخطط جانت، ...)   |   40+ عملي الصيغ (احسب العمر على أساس تاريخ الميلاد، ...)   |   19 إدخال الأدوات (أدخل رمز الاستجابة السريعة, إدراج صورة من المسار، ...)   |   12 تحويل الأدوات (أرقام إلى كلمات, نتيجة تحويل عملة، ...)   |   7 دمج وتقسيم الأدوات (الجمع بين الصفوف المتقدمة, تقسيم الخلايا، ...)   |   ... و اكثر

عزز مهاراتك في Excel باستخدام Kutools for Excel، واختبر كفاءة لم يسبق لها مثيل. يقدم Kutools for Excel أكثر من 300 ميزة متقدمة لتعزيز الإنتاجية وتوفير الوقت.  انقر هنا للحصول على الميزة التي تحتاجها أكثر...

الوصف


يجلب Office Tab الواجهة المبوبة إلى Office ، ويجعل عملك أسهل بكثير

  • تمكين التحرير والقراءة المبوبة في Word و Excel و PowerPointوالناشر والوصول و Visio والمشروع.
  • فتح وإنشاء مستندات متعددة في علامات تبويب جديدة من نفس النافذة ، بدلاً من النوافذ الجديدة.
  • يزيد من إنتاجيتك بنسبة 50٪ ، ويقلل مئات النقرات بالماوس كل يوم!
Comments (2)
No ratings yet. Be the first to rate!
This comment was minimized by the moderator on the site
Dear Sir/Madam,
Thanks for you kind help. I'm a new Lerner of VBA and these article helps me a lot. I have used this code to show all worksheets in a userform combobox. It is perfect. I have a doubt. Can I show those sheet name alphabetically on Userform_Initialize? Though my worksheets are not arranged alphabetically.
Please guide me how to proceed further with my requirement.
Thanks,
R.P
This comment was minimized by the moderator on the site
Good Day,
Sorry for replying so late. The following VBA code can help you solve the problem.

Private Sub UserForm_Initialize()
Dim xWSs As Worksheets
Dim xWS As Worksheet
Dim xName As String
Dim xI As Integer
Dim xRg As Range
On Error Resume Next

xName = "StoreWorkSheetsName"

Application.DisplayAlerts = False

If Not Evaluate("=ISREF('" & xName & "'!A1)") Then
Sheets.Add(after:=Worksheets(Worksheets.count)).Name = xName & ""
Else
Sheets(xName & "").Move after:=Worksheets(Worksheets.count)
End If
Set xWS = Sheets(xName & "")

For xI = 1 To Sheets.count - 1
xWS.Range("A" & xI).Value2 = Sheets(xI).Name
Next xI
xI = xI - 1
Set xRg = xWS.Range("A1:A" & xI)
ActiveWorkbook.Worksheets(xName).Sort.SortFields.Clear
ActiveWorkbook.Worksheets(xName).Sort.SortFields.Add Key:= _
Range("A1:A" & xI), SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:= _
xlSortNormal
With ActiveWorkbook.Worksheets(xName).Sort
.SetRange Range("A1:A" & xI)
.Header = xlGuess
.MatchCase = False
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Apply
End With

Me.ComboBox1.Clear
For i = 1 To xRg.count
Me.ComboBox1.AddItem xRg.Item(i).Value

Next
Me.ComboBox1.Value = ActiveSheet.Name

xWS.Delete
Application.DisplayAlerts = True
End Sub
There are no comments posted here yet
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations