PDA

توجه ! این یک نسخه آرشیو شده میباشد و در این حالت شما عکسی را مشاهده نمیکنید برای مشاهده کامل متن و عکسها بر روی لینک مقابل کلیک کنید : كار با پوشه ها در vba



Amir Ghasemiyan
2014/12/18, 00:48
سلام دوستان
در اين تاپيك قصد دارم عمليات هايي كه بر روي پوشه ها ميشه از طريق كدنويسي vba انجام داد رو بهتون معرفي كنم
اگر عمليات خاصي رو مد نظر دارين خصوصي بهم بگين تا آموزشش رو براتون بذارم

Amir Ghasemiyan
2014/12/18, 00:56
براي اين كار ميتونيم از دستور mkdir كمك بگيريم:



Sub createfolder()
Dim directory As String
directory = "C:\Users\Amir\Desktop\New folder\"
MkDir directory & "Test"
End Sub


كاربرد ساخت پوشه وقتي مشخص ميشه كه شما بخواين به يك پوشه دسترسي پيدا كنيد ولي اون پوشه كلا وجود نداره. شما ميتونين با اين كار پوشه رو ايجاد كنيد تا كدتون با خطا مواجه نشه
مثلا اينطوري:


Sub checkfolder()
Dim directory As String
If Len(Dir("C:\Users\Amir\Desktop\New folder", vbDirectory)) = 0 Then
MkDir "C:\Users\Amir\Desktop\New folder"
End If
End Sub

Amir Ghasemiyan
2014/12/18, 01:11
خب گاهي پيش مياد كه لازمه يك فايل بسازيم و مثلا يه مقداري توش بريزيم يا يكسري كارهاي ديگه روش انجام بديم
براي اينكار نياز به FileSystemObject داريم. براي استفاده از اين قابليت ميتونيم از كد زير كمك بگيريم


Sub createtxtfile()
directory = "C:\Users\Amir\Desktop\New folder\"
Set objFSO = CreateObject("Scripting.FileSystemObject")
Set objFile = objFSO.CreateTextFile(directory & "filename.txt")
End Sub

Amir Ghasemiyan
2014/12/18, 01:19
تو اين آموزش ميخوام كدي رو بهتون معرفي كنم كه ميتونه اسم تمامي فايل ها يا بعضي از فايل هاي موجود در يك پوشه رو بهتون نشون بده. ( من خروجي رو تو سلول هاي اكسل ميذارم )

و اما كد ما:


Sub listoffile()
Dim directory As String, fileName As String, sheet As Worksheet, i As Integer
directory = "C:\Users\Amir\Desktop\New folder\"
fileName = Dir(directory & "*.*")
Do While fileName <> ""
i = i + 1
Cells(i, 1) = fileName
fileName = Dir()
Loop
End Sub


شما با اين كد ميتونين مثلا فقط فايل هاي اكسل رو تو ليست بيارين يا مثلا فايل هايي كه يك عبارت مشخص در نامش هست رو ليست كنين.
با كمي دستكاري تو كد ميشه كارهاي بسيار زيادي انجام داد

2009tv
2016/09/22, 20:51
با سلام و احترام خدمت شما استاد و دوست گرامی
آموزش آخر "ایجاد لیستی از محتویات یک پوشه" برای من خیلی کاربری است!
من قصد دارم توسط این آموزش شما همینطور که شما یاد دادید یک لیست از فایلهای اکسل خود که قبلاً توسط یک کد vb در یک پوشه ذخیره می شوند بدست آورم!(که بدرستی نیز توانستم)
پس بتوانم در یک کادر (از طریق طراحی فرم در vb) بتوانم یک کد را تایپ کنم و آن فایل را برایم باز نماید!
ممنون میشوم یک نمونه فایل قرار دهید!
(میبخشید اگر هم فرصت کافی برای انجام این کارد ندارید کمی راهنماییم کنید)
با تشکر از اینکه وقت با ارزش خود را در اختیار من قرار دادید!