اذهب الي المحتوي
أوفيسنا

الردود الموصى بها

قام بنشر

مرحباء للجميع

هل هناك طريقه برمجيه لتغير اسم مجلدات كثيره او حذف جزء ثابت من اسمهم مره واحده

 

طبعا لا استطيع ان ادرج مثال لان عدد المجلدات كثيره

قام بنشر

وعليكم السلام ورحمة الله وبركاته.. 😇

طبعاً تستطيع اخي الكريم ، اعطينا مثال لمجلدات فارغة على الاقل ، تستطيع ارفاق 1000 مجلد فارغ بحجم لا يتعدى 5 كيلو بايت أخي @تامر خليفه

قام بنشر
32 دقائق مضت, تامر خليفه said:

اريد مثلا حذف كلمه  New folder من اسم جميع المجلدات

 

لتبسيط الأمور ، تستطيع فعل هذه الخطوة من خلال الويندوز نفسه ..

1. افتح PowerShell كمسؤول (Administrator) .
2. حدد المسار الخاص بالمجلد من خلال السطر :-
 

cd C:\Users\Golden\Desktop\New

طبعاً المجلد New الذي يحتوي المجلدات المستهدف تغييرها .. وأنصحك بعدم استخدام مسار مجلد من كلمتين تفصل بينهما مسافة ، استخدم "_" أو الاسم المكون من كلمة واحدة ,, على العموم

3. بعد التأكد أنك في مسار المجلد الذي يحتوي المجلدات التي تريد تغييرها .. اكتب الكود التالي :-

Get-ChildItem -Directory | Where-Object { $_.Name -like "New folder *" } | ForEach-Object { Rename-Item -Path $_.FullName -NewName ($_.Name -replace '^New folder ', '') }

 

4. بانتظار تجربتك ..

قام بنشر

مشاركة مع اخي فادي

ضع المرفق بجانب المجلد ونفذ

ملحوظة مهمة : خذ نسخة من مجلدك قبل التنفيذ

Private Sub cmd1_Click()
RenameSubFolders (CurrentProject.Path & "\New folder")
End Sub
Sub RenameSubFolders(ByVal MainFolder As String)
   Dim sSubFolder As String
   sSubFolder = Dir(MainFolder & "\New folder?*", vbDirectory)
   Do While sSubFolder <> ""
      If GetAttr(MainFolder & "\" & sSubFolder) = vbDirectory Then
         Name MainFolder & "\" & sSubFolder As MainFolder & "\" & Mid$(sSubFolder, 12)
      End If
      sSubFolder = Dir()
   Loop
End Sub

 

changeSomeFolderName.rar

  • Like 1
قام بنشر
منذ ساعه, تامر خليفه said:

بنفذ الخطوات زي ما حضرتك قولت لكن بتظهر الرساله دي ومافيش اي تغير

 

السبب انك مش فاتح الباور شيل كمسؤوووووول :biggrin:

قام بنشر

للاسف مافيش نتيجه 😔

الان, Foksh said:

السبب انك مش فاتح الباور شيل كمسؤوووووول :biggrin:

احتمال، طيب ارجع للـ  It 🙁

 

الف شكر لحضرتك

قام بنشر
4 دقائق مضت, تامر خليفه said:

احتمال، طيب ارجع للـ  It 🙁

 

مع انها مش محتاجة IT .. شوف

img?id=1191911

  • Like 1
  • تمت الإجابة
قام بنشر (معدل)

 استاذ @تامر خليفه إذا حبيت تستبدل الأسماء تفضل . انتبه أنا وضعت اسمك ولكن يمكنك التغيير .................... وواقني بالرد . تفضل المرفق .:fff:

DDTempTest 002.rar

image.gif

تم تعديل بواسطه kkhalifa1960
اضافة الشرح
  • Thanks 1
قام بنشر
13 ساعات مضت, kkhalifa1960 said:

مشاركة مع الاساتذة تفضل استاذ @تامر خليفه هذا المرفق  واليك الشرح التالي :-

ووافني بالرد .:fff:

image.gif.2971a6a08e5eb6cc7298f2c64ddb0436.gif

DDTempTest 001.rar 29.51 kB · 3 downloads

يا فندم الف شكر

معلش هطمع اكتر في حضرتك وهسئل تاني

هل ينفع ان الكود يشيل لوحده اول 5 حروف بشكل ثابت ايا كان هما ايه

قام بنشر
22 ساعات مضت, ابوخليل said:

مشاركة مع اخي فادي

ضع المرفق بجانب المجلد ونفذ

ملحوظة مهمة : خذ نسخة من مجلدك قبل التنفيذ

Private Sub cmd1_Click()
RenameSubFolders (CurrentProject.Path & "\New folder")
End Sub
Sub RenameSubFolders(ByVal MainFolder As String)
   Dim sSubFolder As String
   sSubFolder = Dir(MainFolder & "\New folder?*", vbDirectory)
   Do While sSubFolder <> ""
      If GetAttr(MainFolder & "\" & sSubFolder) = vbDirectory Then
         Name MainFolder & "\" & sSubFolder As MainFolder & "\" & Mid$(sSubFolder, 12)
      End If
      sSubFolder = Dir()
   Loop
End Sub

 

هذا يحقق طلبك فقط احذف الجملة الظاهرة المراد ازالتها .. وغير في العدد  مع زيادة حرف

بمعنى تريد حذف 5 اجعل الرقم = 6

هكذا يصبح الكود

Private Sub cmd1_Click()
RenameSubFolders (CurrentProject.Path & "\New folder")
End Sub
Sub RenameSubFolders(ByVal MainFolder As String)
   Dim sSubFolder As String
   sSubFolder = Dir(MainFolder & "\?*", vbDirectory)
   Do While sSubFolder <> ""
      If GetAttr(MainFolder & "\" & sSubFolder) = vbDirectory Then
         Name MainFolder & "\" & sSubFolder As MainFolder & "\" & Mid$(sSubFolder, 6)
      End If
      sSubFolder = Dir()
   Loop
End Sub

 

قام بنشر
56 دقائق مضت, ابوخليل said:

هذا يحقق طلبك فقط احذف الجملة الظاهرة المراد ازالتها .. وغير في العدد  مع زيادة حرف

بمعنى تريد حذف 5 اجعل الرقم = 6

هكذا يصبح الكود

Private Sub cmd1_Click()
RenameSubFolders (CurrentProject.Path & "\New folder")
End Sub
Sub RenameSubFolders(ByVal MainFolder As String)
   Dim sSubFolder As String
   sSubFolder = Dir(MainFolder & "\?*", vbDirectory)
   Do While sSubFolder <> ""
      If GetAttr(MainFolder & "\" & sSubFolder) = vbDirectory Then
         Name MainFolder & "\" & sSubFolder As MainFolder & "\" & Mid$(sSubFolder, 6)
      End If
      sSubFolder = Dir()
   Loop
End Sub

 

اسف جدا ، مش فاهم قصد حضرتك

قام بنشر

انظر الفرق والتغيير  بين الكودين

الكود الأول يزيل كلمة  New folder  المثبتة ضمن الكود وعدد الأحرف = 12

الثاني :  لا يوجد كلمة محددة .. فقط يكتفى بعدد الحروف التي = 6

  • Like 2

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

زائر
اضف رد علي هذا الموضوع....

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • تصفح هذا الموضوع مؤخراً   0 اعضاء متواجدين الان

    • لايوجد اعضاء مسجلون يتصفحون هذه الصفحه
×
×
  • اضف...

Important Information