List of Contents

Liên hệ QC

scooby

Thành viên mới
Tham gia
28/1/12
Bài viết
18
Được thích
3
Đây là cávh làm List of Content cho mỗi CD ,hoặc folders trong Hard drive . Vi dụ có Folder về các bài VBA, hay folder các bản nhac, folder về các Patch Securty Update etc....Trò chơi sắp xếp ngăn nắp :) . Mỗi lần tìm dễ hơn
Có 2 cách để List ra, chỉ là Text hay muốn dùng Hyperlink để run file trực tiếp

Mã:
Sub ListAllFile()
     
    Dim objFSO As Object
    Dim objFolder As Object
    Dim objFile As Object
    Dim ws As Worksheet
     
    Set objFSO = CreateObject("Scripting.FileSystemObject")
    Set ws = Worksheets.Add
     
     'Get the folder object associated with the directory
    Set objFolder = objFSO.GetFolder("G:\Window Updated\WindowsXP\")
    ws.Cells(1, 2).Value = "NAME " & objFolder.Name
    ws.Cells(1, 3).Value = "SIZE " & objFolder.Name
     
     'Loop through the Files collection
    For Each objFile In objFolder.Files
        ws.Cells(ws.UsedRange.Rows.Count + 1, 2).Value = objFile.Name
        ws.Cells(ws.UsedRange.Rows.Count, 3).Value = objFile.Size
    Next
     
     'Clean up!
    Set objFolder = Nothing
    Set objFile = Nothing
    Set objFSO = Nothing
     
End Sub

[/COĐE]

Dùng Hyperlink

[COĐE]
Sub HyperlinksToDirectory()
' 
' starting at the active cell
'
  Dim stDir As String
  Dim stFile As String
  Dim R As Range
  Set R = ActiveCell
  stDir = "G:\Window Updated\WindowsXP\"
  stFile = Dir(stDir & "\*.*")
  Do Until stFile = ""
    R.Hyperlinks.Add R, stDir & "\" & stFile, , , stFile
    Set R = R.Offset(1)
    stFile = Dir()
  Loop
  R.CurrentRegion.Sort key1:=R, order1:=xlAscending, header:=xlNo

End Sub

[/COĐE]
 
Đây là cávh làm List of Content cho mỗi CD ,hoặc folders trong Hard drive . Vi dụ có Folder về các bài VBA, hay folder các bản nhac, folder về các Patch Securty Update etc....Trò chơi sắp xếp ngăn nắp :) . Mỗi lần tìm dễ hơn
Có 2 cách để List ra, chỉ là Text hay muốn dùng Hyperlink để run file trực tiếp

Ở trên dùng FileSystemObject còn được, ở dưới dùng Dir là thua rồi bạn à!
Hơn nữa, chủ đề lấy List file trong Folder đã còn đầy trên GPE rồi
 
Cám ơn bạn ghé và cho ý kiến . Vậy bạn có thể giải thích cho tôi vì sao dùng Dir là sai không ??

Oh sorry, sorry, tôi không biết trong này đã có chủ đề này, tôi vì nhân tiện làm list cho các folders trong máy của tôi nên paste vào đây cho vui . Tôi mới format lại máy và dang dùng List for update security patch cho XP
 
Cám ơn bạn ghé và cho ý kiến . Vậy bạn có thể giải thích cho tôi vì sao dùng Dir là sai không ??
Hãy thử với các Folder, File mà tên của nó người ta đặt bằng tiếng Việt có dấu sẽ biết liền
Chính vì thế mà khi làm việc với file, folder, để chắc ăn ta luôn dùng FileSystemObject chứ không bao giờ dùng Dir hay bất kỳ hàm nào có sẵn
 
Oh, tôi chưa từng dùng gì tiếng Việt ở bên này. Ngay như type chữ Việt tôi chỉ vào 1 site có khung đổi ra Unicode . Chứ đùng nó có các loại Fonts chữ Việt

Cách viết extremely basic

Mã:
Sub ListFiles()
         a = Dir("C:\*.exe")
         Do While Len(F) > 0
               ActiveCell.formula = a
               ActiveCell.Offset(1, 0).Select 'By Columns
               a = Dir()
          Loop
End Sub
 
Oh, tôi chưa từng dùng gì tiếng Việt ở bên này. Ngay như type chữ Việt tôi chỉ vào 1 site có khung đổi ra Unicode . Chứ đùng nó có các loại Fonts chữ Việt

Cách viết extremely basic

Mã:
Sub ListFiles()
         a = Dir("C:\*.exe")
         Do While Len(F) > 0
               ActiveCell.formula = a
               ActiveCell.Offset(1, 0).Select 'By Columns
               a = Dir()
          Loop
End Sub
Bạn viết, bạn xài thì chẳng có gì phải bàn cả
Ý tôi muốn nói là code của bạn, nếu để người khác xài, lở như file, folder của người ta được đặt tên bằng tiếng Việt có dấu thì bạn tính sao?
Bời vậy nên làm việc với file, folder, chẳng ai lại dùng mấy hàm Dir gì gì đó cho rách việc
 
Nếu như vì tiếng Việt tạo ra sự cản trở như vậy . Tôi đoán Window ở VN sẽ bị chậm, lý do là phải có program trung gian để convert thành tiếng Việt . OK thế thì tôi rút lui ra khỏi forums vì program hiểu Ô chứ không hiểu Cells là gì

Bạn viết, bạn xài thì chẳng có gì phải bàn cả
Ý tôi muốn nói là code của bạn, nếu để người khác xài, lở như file, folder của người ta được đặt tên bằng tiếng Việt có dấu thì bạn tính sao?
Bời vậy nên làm việc với file, folder, chẳng ai lại dùng mấy hàm Dir gì gì đó cho rách việc
 
Nếu như vì tiếng Việt tạo ra sự cản trở như vậy . Tôi đoán Window ở VN sẽ bị chậm, lý do là phải có program trung gian để convert thành tiếng Việt . OK thế thì tôi rút lui ra khỏi forums vì program hiểu Ô chứ không hiểu Cells là gì
Tôi nói mà hình như bạn không hiểu tí nào ý tôi cả
Ý tôi là: Xem lại hàm DIR, nó có rất nhiều nhược điểm, nếu không thì cần quái gì người ta phải xài đến FileSystemObject
Một ví dụ khác tương tự: Lấy chuổi từ 1 File Txt... Trong VB6 người ta hay dùng Open FileName For Output As #FileNum ... gì gì đó ---> Đố mà lấy được chuổi tiếng Việt Unicode trong txt ----> Thế chẳng phải với trường hợp này bạn vẫn buộc phải dùng FileSystemObject thay thế sao?
Chẳng lẽ không làm được, bạn bắt buộc người ta phải viết bằng tiếng Việt không dấu à?
Ẹc... Ẹc...
 
Lần chỉnh sửa cuối:
Web KT
Back
Top Bottom