Office中国论坛/Access中国论坛
标题:
请教!如何能将某硬盘中所有文件夹及文件的名称都导入ACCESS表中?(又有新问题)
[打印本页]
作者:
sxgaobo
时间:
2009-2-22 15:44
标题:
请教!如何能将某硬盘中所有文件夹及文件的名称都导入ACCESS表中?(又有新问题)
本帖最后由 sxgaobo 于 2009-2-23 17:00 编辑
在论坛里查询了下,有几个例子,可都是把某一文件夹中文件名列出的,有没有将多个文件夹及其中文件明同时列出的方法啊?
作者:
ACMAIN_CHM
时间:
2009-2-22 15:53
将多个文件夹及其中文件明同时列出的方法啊?
直接DOS命令 TREE /F
tree /f > a.txt
如果想自己用程序实现。
请到帮助中查看 DIR() 函数的说明。然后进行递归遍历。
******************
* 一切皆有可能 *
******************
.
ACMAIN - Access论坛回贴准则(个人)
.
.
同
一
贴
子
不
回
复
第
二
次
.
QQ群 48866293 / 12035577 / 7440532 / 13666209
http://forum.csdn.net/BList/OtherDatabase
.
http://www.accessbbs.cn/bbs/index.php
.
http://www.accessoft.com/bbs/index.asp
.
http://www.access-programmers.co.uk/forums
.
http://www.office-cn.net
.
.
http://www.office-cn.net/home/space.php?uid=141646
.
作者:
sxgaobo
时间:
2009-2-22 16:17
本帖最后由 sxgaobo 于 2009-2-22 16:19 编辑
谢谢 ACMAIN_CHM !
你的方法可以导出,可不是我要的结果啊!我想要这样的结果:
位置
D:\A\A1.TXT
D:\A\A2.TXT
D:\A\A3.TXT
D:\A\B\B1.RAR
D:\A\B\B2.MDE
D:\C\C1.RAR
D:\C\E\E1.RAR
......
作者:
todaynew
时间:
2009-2-22 16:23
如果文件名有规律,并且能直接调用“开始”中的搜索的话,好像应该满足要求。不过我不会,呵呵。
作者:
sxgaobo
时间:
2009-2-23 09:23
等待中......
作者:
Henry D. Sy
时间:
2009-2-23 09:26
自定义一个递归函数
作者:
Henry D. Sy
时间:
2009-2-23 09:37
Private Sub Command2_Click()
Dim diaFS As FileDialog
Set diaFS = Application.FileDialog(msoFileDialogFolderPicker)
With diaFS
.AllowMultiSelect = False
.Show
End With
If diaFS.SelectedItems.Count > 0 Then
Me.Text0 = diaFS.SelectedItems(1)
Else
Me.Text0 = Null
End If
End Sub
Private Sub Form_Load()
Me.List10.RowSourceType = "Value List"
Me.List10.RowSource = ""
End Sub
Private Sub Command7_Click()
Dim fs As New FileSystemObject
Dim fd As Folder
Dim sfd As Folder
If IsNull(Me.Text0) Then
MsgBox "请输入文件夹"
Me.Text0.SetFocus
Exit Sub
End If
Me.List10.RowSource = ""
Set fd = fs.GetFolder(Me.Text0)
ListFolder fd
End Sub
Sub ListFolder(fd As Folder)
Dim sfd As Folder
Dim f As File
For Each f In fd.Files
List10.AddItem f.Path
Next
For Each sfd In fd.SubFolders
List10.AddItem sfd.Path
ListFolder sfd
Next
End Sub
复制代码
作者:
sxgaobo
时间:
2009-2-23 11:20
谢谢版主!
高手,可有个问题,就是当文件夹中的文件多时报错!另外能麻烦您改下程序,将结果写在一个表中吗?
[attach]35662[/attach]
另:
我用别的方法得到了A表,怎样才能整理成B表那样的结果?
作者:
sxgaobo
时间:
2009-2-23 13:12
解决了,在Henry D. Sy 版主提供例子的基础上。
谢谢各位朋友的热情帮助!!!
作者:
sxgaobo
时间:
2009-2-23 16:33
再请教个问题!
如何能得到所选择文件夹中的文件个数(包括子文件夹中)啊?
作者:
sxgaobo
时间:
2009-2-23 19:08
再次请教!
如何能得到所选择文件夹中的文件个数(包括子文件夹中)啊?
作者:
sxgaobo
时间:
2009-2-23 20:22
明天出差,有感兴趣的朋友帮我顶顶好吗?
作者:
chaojianan
时间:
2009-2-23 21:20
解决了,在Henry D. Sy 版主提供例子的基础上。
谢谢各位朋友的热情帮助!!!
sxgaobo 发表于 2009-2-23 13:12
请问你是如何解决了[当文件夹中的文件多时报错]这个问题?
可否分享。
作者:
sxgaobo
时间:
2009-2-24 08:31
将所取得的数据写入表中就不会报错了!
作者:
Henry D. Sy
时间:
2009-2-24 08:57
你把您的例子传上来看看
作者:
Henry D. Sy
时间:
2009-2-24 09:01
files有个count属性。
作者:
sxgaobo
时间:
2009-2-27 17:54
本帖最后由 sxgaobo 于 2009-2-27 18:46 编辑
Dim sfd As Folder
Dim f As File
Dim r As DAO.Recordset
For Each f In fd.Files
Set r = CurrentDb.OpenRecordset("select a from 表;")
r.AddNew
r.Fields!a = f.Path
r.Update
Me.Repaint
Next
For Each sfd In fd.SubFolders
ListFolder sfd
Next
files的count怎么用啊?
我想做个进度条,免得文件很多的时候象死机了似的,所以想在导文件前知道需要导入文件的个数。
作者:
Henry D. Sy
时间:
2009-2-27 20:23
try
Dim sfd As Folder
Dim f As File
Dim r As DAO.Recordset
dim i as long
For Each f In fd.Files
Set r = CurrentDb.OpenRecordset("select a from 表;")
r.AddNew
r.Fields!a = f.Path
i=i+1
r.Update
Me.Repaint
Next
For Each sfd In fd.SubFolders
ListFolder sfd
Next
msgbox i
作者:
sxgaobo
时间:
2009-3-1 09:01
本帖最后由 sxgaobo 于 2009-3-1 10:12 编辑
谢谢版主!
我是想做个进度条,所以需要在导文件前知道每个子文件夹中文件的个数,不是导入完成后统计共导了几个文件啊!用什么方法啊?
作者:
sxgaobo
时间:
2009-3-1 14:05
files的count属性怎么用啊?
作者:
sxgaobo
时间:
2009-3-1 18:53
自己顶顶!
欢迎光临 Office中国论坛/Access中国论坛 (http://www.office-cn.net/)
Powered by Discuz! X3.3