تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
اسم المجلد
#1
السلام عليكم

ما هو الكود الذي يعطي اسم المجلد من مسار ما

يعني اذا :
كود :
c:\1\14\16\25\30\47\1.txt

موجود في تكست بوكس و هو ما اسميه بالمسار

و اذا ضغط زر كوماند

يطلع لي الناتج : 47 أي آخر مجلد في هذا المسار
الرد }}}}
تم الشكر بواسطة:
#2
السلام عليكم

- إستخدم هذه الدالة :-

كود :
Private Function GetLastFolder(zPath As String) As String
Dim LastFolder As String
IF Trim(zPath) = "" Or InStr(1,Trim(zPath),"\") = 0 Then
GetLastFolder = ""
Exit Function
End IF
LastFolder = StrReverse(zPath)
LastFolder = Mid(LastFolder,InStr(1,LastFolder,"\") + 1)
IF InStr(1,LastFolder,"\") > 0 Then
LastFolder = Left(LastFolder,InStr(1,LastFolder,"\") - 1)
End IF
LastFolder = StrReverse(LastFolder)
GetLastFolder = Trim(LastFolder)
End Function

- وقم بإستدعائها بهذا الشكل :-

كود :
Msgbox GetLastFolder("C:\A\B\C\D\File.txt")

- تحياتي .
الرد }}}}
تم الشكر بواسطة:
#3
VB_Coder كتب :السلام عليكم

- إستخدم هذه الدالة :-

كود :
Private Function GetLastFolder(zPath As String) As String
Dim LastFolder As String
IF Trim(zPath) = "" Or InStr(1,Trim(zPath),"\") = 0 Then
GetLastFolder = ""
Exit Function
End IF
LastFolder = StrReverse(zPath)
LastFolder = Mid(LastFolder,InStr(1,LastFolder,"\") + 1)
IF InStr(1,LastFolder,"\") > 0 Then
LastFolder = Left(LastFolder,InStr(1,LastFolder,"\") - 1)
End IF
LastFolder = StrReverse(LastFolder)
GetLastFolder = Trim(LastFolder)
End Function

- وقم بإستدعائها بهذا الشكل :-

كود :
Msgbox GetLastFolder("C:\A\B\C\D\File.txt")

- تحياتي .

هل zpath = text1.text مثلا

يعني التكست 1 يحوي المسار

و سؤال آخر ال a,b,c,d,e لستة مجلدات يعني اذا كانوا سبعة يكون لدينا a,b,c,d,e,f

طيب في هذه الحالة كيف احسب عدد تلك المجلدات ليتم الاستدعاء بشكل صحيح

يعني اذا مجلد واحد اكتب كود استدعاء فيه فقط a

و اذا مجلدين اكتب كود استدعاء فيه فقط a,b
الرد }}}}
تم الشكر بواسطة:
#4
السلام عليكم

- نعم تستطيع وضع التكست في الإستدعاء بما أن المسار سيكون في التكست . بهذا الشكل :-

كود :
Msgbox GetLastFolder(Text1.Text)

- بالنسبة لعدد المجلدات الموجود في المسار ، فمهما كان عددها ستأتي لك الدالة بآخر مجلد فقط ، والمجلدات التي وضعتها في الرد السابق فقط للتوضيح . جرب الكود .

- تحياتي .
الرد }}}}
تم الشكر بواسطة:
#5
VB_Coder كتب :السلام عليكم

- نعم تستطيع وضع التكست في الإستدعاء بما أن المسار سيكون في التكست . بهذا الشكل :-

كود :
Msgbox GetLastFolder(Text1.Text)

- بالنسبة لعدد المجلدات الموجود في المسار ، فمهما كان عددها ستأتي لك الدالة بآخر مجلد فقط ، والمجلدات التي وضعتها في الرد السابق فقط للتوضيح . جرب الكود .

- تحياتي .

مشكور جداً
الرد }}}}
تم الشكر بواسطة:


التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم