كار با پوشه ها در vba

Collapse
X
 
  • زمان
  • نمایش
حذف همه
new posts
  • Amir Ghasemiyan

    • 2013/09/20
    • 4598
    • 100.00

    كار با پوشه ها در vba

    سلام دوستان
    در اين تاپيك قصد دارم عمليات هايي كه بر روي پوشه ها ميشه از طريق كدنويسي vba انجام داد رو بهتون معرفي كنم
    اگر عمليات خاصي رو مد نظر دارين خصوصي بهم بگين تا آموزشش رو براتون بذارم
  • Amir Ghasemiyan

    • 2013/09/20
    • 4598
    • 100.00

    #2
    ايجاد يك پوشه در آدرس مشخص

    براي اين كار ميتونيم از دستور 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

      • 2013/09/20
      • 4598
      • 100.00

      #3
      ايجاد يك فايل text در آدرس مشخص

      خب گاهي پيش مياد كه لازمه يك فايل بسازيم و مثلا يه مقداري توش بريزيم يا يكسري كارهاي ديگه روش انجام بديم
      براي اينكار نياز به 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

        • 2013/09/20
        • 4598
        • 100.00

        #4
        ايجاد يك ليست از تمامي فايل هاي درون يك پوشه در اكسل

        تو اين آموزش ميخوام كدي رو بهتون معرفي كنم كه ميتونه اسم تمامي فايل ها يا بعضي از فايل هاي موجود در يك پوشه رو بهتون نشون بده. ( من خروجي رو تو سلول هاي اكسل ميذارم )

        و اما كد ما:
        کد:
        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/01/23
          • 40

          #5
          با سلام و احترام خدمت شما استاد و دوست گرامی
          آموزش آخر "ایجاد لیستی از محتویات یک پوشه" برای من خیلی کاربری است!
          من قصد دارم توسط این آموزش شما همینطور که شما یاد دادید یک لیست از فایلهای اکسل خود که قبلاً توسط یک کد vb در یک پوشه ذخیره می شوند بدست آورم!(که بدرستی نیز توانستم)
          پس بتوانم در یک کادر (از طریق طراحی فرم در vb) بتوانم یک کد را تایپ کنم و آن فایل را برایم باز نماید!
          ممنون میشوم یک نمونه فایل قرار دهید!
          (میبخشید اگر هم فرصت کافی برای انجام این کارد ندارید کمی راهنماییم کنید)
          با تشکر از اینکه وقت با ارزش خود را در اختیار من قرار دادید!

          کامنت

          چند لحظه..