作者ptguitar (佩蒂吉他)
看板Office
標題[算表] 下拉選單可以列出目前資料夾的所有檔案?
時間Thu May 25 16:11:38 2017
軟體:excel
版本:2007以上
我想做一個下拉選單
可以列出目前這個excel檔案同個資料夾下所有檔案
要用到的巨集流程不知道要麼弄比較好?
我目前想到用collection
Sub test()
Dim mfile As String
Dim tp$
Dim mydata As New Collection
tp = ThisWorkbook.Path & "\"
mfile = Dir(tp & "*.xls*")
Do While mfile <> ""
mydata.Add = mfile <-------------------這段不知道怎麼下
mfile = Dir()
Loop
End Sub
如果有成功加進去
然後要怎麼把mydata弄到資料驗證下?
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 60.250.67.77
※ 文章網址: https://webptt.com/m.aspx?n=bbs/Office/M.1495699901.A.D23.html
1F:→ soyoso: 想到的是於迴圈內以字串連接,逗號分隔,迴圈結束後,再將 05/25 16:36
2F:→ soyoso: 該字串,置於validation formula1 05/25 16:37
3F:→ ptguitar: 該字串需要定義嗎?後面逗號那個大概知道 不過字串要怎麼 05/25 17:03
4F:→ ptguitar: 設定? 05/25 17:03
5F:→ soyoso: 變數=變數 & "," & mfile 方式 05/25 17:09
6F:→ soyoso: 另外測試以字串方式,formula1可接受字元個數為2007版本 05/25 17:53
7F:→ soyoso: 8203,2010和2016為8190 05/25 17:53
8F:→ soyoso: 如超過上述個數,則可考慮將檔案寫入儲存格內,formula1以 05/25 17:57
9F:→ soyoso: 指定儲存格位置字串的方式 05/25 17:58
10F:→ soyoso: 檔名 05/25 17:58
11F:→ ptguitar: 感謝S大!!又多學一招 05/25 20:39
想問一下如果想加入用dropdown的excel表單控制
ActiveSheet.DropDowns.Add(0.5, 85.5, 170.5, 17).Select
With Selection
.ListFillRange = "$E$1:$E$3" <----------這邊用上面設定的變數
似乎不行?
.LinkedCell = ""
.DropDownLines = 8
.Display3DShading = False
End With
End Sub
不知道若要用dropdown的控制方式 該怎麼設定比較好?
※ 編輯: ptguitar (42.73.49.127), 05/25/2017 22:26:38
12F:→ soyoso: 可以additem方式加入mfile 05/25 23:45