返回列表 上一主題 發帖

[發問] 如何擷取出不重複名稱的陣列?

[發問] 如何擷取出不重複名稱的陣列?

今天有一個問題想請教各位大大,是這樣的:
我在D槽有一資料夾複製了名稱類似的excel,想取出不要包含最後 "-數字"的名稱有那些,放置在一個陣列中:
卡住點:
問題1.無法用 arr(i) = sDir 取出各個xlsx
問題2.接下來想用len在find"-",算出位置然後不知道該刪除重複???

javascript:;

不知道有沒有人可以教教我,十分謝謝!

目前:
Sub List()
Dim arr(1000)
sPath = "D:\New folder\"
sDir = Dir(sPath & "*.xlsx", vbNormal)
i = 0
Do Until LenB(sDir) = 0
arr(i) = sDir
i = i + 1
Loop
End Sub

New folder.rar (24.31 KB)

File

回復 1# ui123
  1. Option Explicit
  2. Sub List()
  3.     Dim arr(), sPath As String, sDir As String, i As Integer
  4.     'arr() 動態陣列(不限制陣列的維數)
  5.     sPath = "D:\New folder\"
  6.     sDir = Dir(sPath & "*.xlsx", vbNormal)
  7.     i = 0
  8.     Do While sDir <> ""   '傳回一個 String (字串)
  9.         ReDim Preserve arr(0 To i)  'ReDim  重置陣列維數, Preserve 保有原來陣列的內容
  10.         d(Split(sDir, "#")(0)) = ""
  11.         arr(i) = sDir
  12.         sDir = Dir            '依上一次的Dir條件繼續 的Dir
  13.         i = i + 1
  14.     Loop
  15. End Sub
複製代碼
問題2.接下來想用len在find"-",算出位置然後不知道該刪除重複???
20140401-01#35-1.xlsx
20140401-01#35-223.xlsx  
請說明要刪除哪一個?
感恩的心......(在麻辣家族討論區.用心學習會有進步的)
但資源無限,後援有限,  一天1元的贊助,人人有能力.

TOP

親愛的版主,我想要顯示 arr(20140401-01#35,20140401-156#35) 就可以了,但是 arr(i) = sDir好像會列出所有的檔案名。

不勝感激.....

TOP

回復 2# GBKEE

抱歉~忘記按到回復 >""""<


親愛的版主,我想要顯示 arr(20140401-01#35,20140401-156#35) 就可以了,但是 arr(i) = sDir好像會列出所有的檔案名。

不勝感激.....

TOP

回復 4# ui123
  1. Option Explicit
  2. Sub List()
  3.     Dim sPath As String, sDir As String, i As Integer
  4.     Dim D As Object, S As Integer
  5.     Set D = CreateObject("SCRIPTING.DICTIONARY") '字典物件
  6.     sPath = "D:\New folder\"
  7.     sDir = Dir(sPath & "*.xlsx", vbNormal)
  8.     i = 0
  9.     Do While sDir <> ""   '傳回一個 String (字串)
  10.         S = InStrRev(sDir, "-") - 1
  11.         If Not D.EXISTS(Mid(sDir, 1, S)) Then D(Mid(sDir, 1, S)) = ""
  12.         'D.EXISTS(key) 字典物件的key存在傳回 True 反之 傳回 False
  13.         sDir = Dir            '依上一次的Dir條件繼續 的Dir
  14.         i = i + 1
  15.     Loop
  16.     MsgBox Join(D.keys, vbLf)
  17. End Sub
複製代碼
感恩的心......(在麻辣家族討論區.用心學習會有進步的)
但資源無限,後援有限,  一天1元的贊助,人人有能力.

TOP

        靜思自在 : 做該做的事是智慧,做不該做的事是愚癡。
返回列表 上一主題