abed14092017 قام بنشر فبراير 6 قام بنشر فبراير 6 (معدل) السلام عليكم اخوني بعد اذنكم عندي نلف اكسل بداخله userform بضهار بيانات من صفحة اكسل تنسيق البيانات في صفحة اكسل على سبيال المثال المبيعات 50.000 لكن فب listbox بتضهر 50 المطلوب : بدي كود يعمل تنسيق للبيانات داخل listbox المبيعات و العمولة و صافي المبيعات يكون تنسيقها 0.000 سوال اخر هل ممكن اعمل زر ينقلني للخلية في الصفحة الاصلية عندما احددها من listbox مع كل الاحترام و التقدير للجميع Book1.xls تم تعديل فبراير 6 بواسطه abed14092017
أفضل إجابة abouelhassan قام بنشر فبراير 6 أفضل إجابة قام بنشر فبراير 6 6 ساعات مضت, abed14092017 said: السلام عليكم اخوني بعد اذنكم عندي نلف اكسل بداخله userform بضهار بيانات من صفحة اكسل تنسيق البيانات في صفحة اكسل على سبيال المثال المبيعات 50.000 لكن فب listbox بتضهر 50 المطلوب : بدي كود يعمل تنسيق للبيانات داخل listbox المبيعات و العمولة و صافي المبيعات يكون تنسيقها 0.000 سوال اخر هل ممكن اعمل زر ينقلني للخلية في الصفحة الاصلية عندما احددها من listbox مع كل الاحترام و التقدير للجميع Book1.xls 70.5 kB · 3 downloads جرب Private Sub UserForm_Initialize() Dim ws As Worksheet Dim lastRow As Long Dim i As Long ' تحديد ورقة العمل التي تحتوي على البيانات Set ws = ThisWorkbook.Sheets("Sheet1") ' قم بتغيير اسم الورقة حسب اسم ورقتك ' احتساب عدد الصفوف الممتلئة في العمود A lastRow = ws.Cells(ws.Rows.Count, "A").End(xlUp).Row ' تحميل البيانات إلى ListBox وتنسيقها For i = 2 To lastRow ' افترضنا هنا أن البيانات تبدأ من الصف 2، يمكنك تغيير الرقم إذا لزم الأمر ListBox1.AddItem Format(ws.Cells(i, 1).Value, "0.000") ' المبيعات ListBox1.List(ListBox1.ListCount - 1, 1) = Format(ws.Cells(i, 2).Value, "0.000") ' العمولة ListBox1.List(ListBox1.ListCount - 1, 2) = Format(ws.Cells(i, 3).Value, "0.000") ' صافي المبيعات Next i End Sub Private Sub ListBox1_Click() Dim selectedRow As Long ' الحصول على الصف المحدد في ListBox selectedRow = ListBox1.ListIndex ' التحرك إلى الخلية المقابلة في ورقة العمل If selectedRow >= 0 Then ThisWorkbook.Sheets("Sheet1").Cells(selectedRow + 2, 1).Select ' نفترض أن البيانات تبدأ من الصف 2 End If End Sub 2
abouelhassan قام بنشر فبراير 12 قام بنشر فبراير 12 جرب Private Sub UserForm_Initialize() Dim salesRange As Range Dim cell As Range ' تعيين مجال البيانات Set salesRange = Worksheets("Sheet1").Range("A1:A50") ' قم بتغيير "Sheet1" و "A1:A50" حسب احتياجاتك ' تنسيق البيانات وإضافتها إلى ListBox For Each cell In salesRange ListBox1.AddItem Format(cell.Value, "0.000") Next cell End Sub السؤال الثاني Private Sub ListBox1_Click() Dim selectedCell As Range ' العثور على الخلية المحددة في الصفحة الأصلية Set selectedCell = Worksheets("Sheet1").Range("A1:A50").Find(ListBox1.Value) ' قم بتغيير "Sheet1" و "A1:A50" حسب احتياجاتك ' التأكد من أن الخلية تم العثور عليها If Not selectedCell Is Nothing Then ' التحرك إلى الخلية المحددة selectedCell.Select End If End Sub يمكنك إضافة هذين الكودين إلى مستند Excel باتباع الخطوات التالية: 1. افتح ملف Excel. 2. اذهب إلى "مطور" > "محرر Visual Basic". 3. انقر فوق "إدراج" > "وحدة". 4. قم بلصق الكود في وحدة جديدة. 5. احفظ الملف بامتداد .xlsm. 6. قم بتعيين الوحدة الأولى كـ "UserForm" والوحدة الثانية كـ "ListBox1". 7. أغلق المحرر واستخدم ملف Excel بشكل عادي. لكى تتعلم اخى اتبع ما سبق 1
الردود الموصى بها