السلام عليكم ورحمة الله
ابحث عن كود يقوم بجلب اسماء المجلدات الموجودة داخل مجلد معين
لقد عملت طريقة ولكنها كانت تعود بمسار المجلد كامل ولكني اريد اسمه فقط
ولكم مني جزيل الشكر
Private Sub Command1_Click() Dim strFolder As String strFolder = Dir("C:\Program Files\*.", vbDirectory) Do While strFolder <> "" If Not (strFolder = "." Or strFolder = "..") Then List1.AddItem strFolder End If strFolder = Dir() Loop End Sub
شكرا لكم اخواني الكرام وجزاكم الله خيرا
المثال للأخ احمد منصور والاخ البرنس مثالن رائعين جدا
وطلبي منهما هو شرح الكود وكيفة عمله لاستطيع التعامل معه في مشاريع اخري
اما الاخ ممدوح الخطيب فاظن مثاله ليس vb6 علي ما اظن ومع ذلك تحية له لتعاونه
26-11-16, 06:03 PM (آخر تعديل لهذه المشاركة : 26-11-16, 06:14 PM {2} بواسطة sendbad100.)
شرح مثال الاستاذ احمد منصور
حسب ما فهمت
والله الموفق
كود :
'متغير عام نصي
Dim MyPath As String
Private Sub Add_FoldersInList(zFolderPath As String)
' متغير نصي
Dim zFolders As String
'مسح اللسته
List1.Clear
'وضع المسار في المتغير
zFolders = Dir$(zFolderPath, vbDirectory)
'لووب لجمع المجلدات
Do While Len(zFolders)
' لمنع اظهار النقطة او نقطتين في اللست
If (zFolders <> ".") And (zFolders <> "..") Then
'للسماح للمجلدات فقط بالظهور واستثناء غيرها
If GetAttr(zFolderPath & zFolders) And vbDirectory Then
' عرض المجد الحالي في اللست
List1.AddItem Trim$(zFolders)
End If
End If
zFolders = Dir$
Loop
End Sub
' عند تشغيل الفورم تشغيل الاجراء التالي
Private Sub Form_Load()
'الشرط التالي لتحديد مسار البرنامج والتاكد من وجود السلاش في اخر المسار
'ايضا حفظ المسار داخل المتغير MYpath.
If Right(App.Path, 1) <> "\" Then MyPath = App.Path & "\" Else MyPath = App.Path
'تم طلب الاجراء مع ارسال المسار المحفوظ داخل المتغر Mypath + اضافة اسم مجلد موجود داخل المسار نفسه اي بجوار البرنامج
'اسم المجلد الذي سيتم عرض البينات التي بداخله هو MyFolders
Add_FoldersInList MyPath & "MyFolders\"