以文本方式查看主题 - Foxtable(狐表) (http://www.foxtable.com/bbs/index.asp) -- 专家坐堂 (http://www.foxtable.com/bbs/list.asp?boardid=2) ---- [求助]如何修改电脑里文件夹名 (http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=66030) |
-- 作者:半人马座比邻星 -- 发布时间:2015/3/27 20:05:00 -- [求助]如何修改电脑里文件夹名 求助大神 按照图中填写单元格,随后在电脑指定盘符中生成文件夹
Dim i As Integer path = "f:\\" & Tables("表A").rows(i)("第一列") &"\\"& Tables("表A").rows(i)("第二列") &"\\"& Tables("表A").rows(i)("第三列") &"\\"& Tables("表A").rows(i)("第四列") &"\\"& Tables("表A").rows(i)("第五列") &"\\"& Tables("表A").rows(i)("第六列") &"\\"& Tables("表A").rows(i)("第七列") &"\\"& Tables("表A").rows(i)("第八列") &"\\"& Tables("表A").rows(i)("第九列") &"\\"& Tables("表A").rows(i)("第十列") &"\\"& Tables("表A").rows(i)("第十一列") &"\\"& Tables("表A").rows(i)("第十二列") &"\\"& Tables("表A").rows(i)("第十三列") &"\\"& Tables("表A").rows(i)("第十四列") &"\\"& Tables("表A").rows(i)("第十五列") &"\\"& Tables("表A").rows(i)("第十六列") &"\\"& Tables("表A").rows(i)("第十七列") &"\\"& Tables("表A").rows(i)("第十八列") &"\\"& Tables("表A").rows(i)("第十九列") &"\\" filesys.CreateDirectory(path)
问题是这样:如果在单元格上更改了内容,比如把“6”变成“60”后,再次执行代码。“2”文件夹里出现了“6”和“60”共存的现象。怎么才能实现改成“60”后,把“6”删除,并且同时删除“6”文件夹内的所有文件夹和文件。DeleteDirectory只能删除指定文件夹,DeleteFile只能删除指定文件。 此主题相关图片如下:生成文件夹.png |
-- 作者:狐狸爸爸 -- 发布时间:2015/3/28 9:51:00 -- 将原目录中的文件复制到新的目录,再删除原目录,简洁达到重命名目录的作用。 http://www.foxtable.com/help/topics/0331.htm http://www.foxtable.com/help/topics/0343.htm
[此贴子已经被作者于2015/3/28 9:52:08编辑过]
|
-- 作者:半人马座比邻星 -- 发布时间:2015/3/28 15:02:00 -- 再一次求教大神,CopyDirectory我试了一下只能删改指定文件夹下的内容 ,DeleteDirectory 也只能删除指定文件夹。我想达成是在设计窗口时设计一个刷新按钮,通过刷新,删掉不存在的文件夹和文件夹内的文件。但是我找不到随机删除文件夹的方法。因为这个表格里行数很多,列很少,删改列的话工作量很大,那我想通过删改行来达到删改文件夹以及文件的目的。 |
-- 作者:Bin -- 发布时间:2015/3/28 15:10:00 -- 获取指定目录的所有文件夹名,然后就可以遍历和表中数据对比, 不存在就按照2楼代码删除 |
-- 作者:半人马座比邻星 -- 发布时间:2015/3/28 16:39:00 -- 大神,我想了一下。是这样的,1.先更改表格中数据,然后保存表(此时文件夹名未改变)。2获取指定文件夹内所有子文件夹名并在表A中通过新增行来表示(新增的行未保存)3通过对比表A中的数据,得到应该删除的文件夹的路径,通过DeleteDirectory删掉应删的文件夹。4再删除未保存的行,并通过 For i = 0 To Tables("表A").rows.Count-1 path = "f:\\ce shi wen jian jia1\\" & Tables("表A").rows(i)("第一列") &"\\"& Tables("表A").rows(i)("第二列") &"\\"& Tables("表A").rows(i)("第三列") &"\\"& Tables("表A").rows(i)("第四列") &"\\"& Tables("表A").rows(i)("第五列") &"\\"& Tables("表A").rows(i)("第六列") &"\\"& Tables("表A").rows(i)("第七列") &"\\"& Tables("表A").rows(i)("第八列") &"\\"& Tables("表A").rows(i)("第九列") &"\\"& Tables("表A").rows(i)("第十列") &"\\"& Tables("表A").rows(i)("第十一列") &"\\"& Tables("表A").rows(i)("第十二列") &"\\"& Tables("表A").rows(i)("第十三列") &"\\"& Tables("表A").rows(i)("第十四列") &"\\"& Tables("表A").rows(i)("第十五列") &"\\"& Tables("表A").rows(i)("第十六列") &"\\"& Tables("表A").rows(i)("第十七列") &"\\"& Tables("表A").rows(i)("第十八列") &"\\"& Tables("表A").rows(i)("第十九列") &"\\" FileSys.MoveDirectory("path1", "path")
重新生成文件夹
现在卡在3那,对比表中数据并得到路径这个搞不定了。大神能否帮个忙? |
-- 作者:Bin -- 发布时间:2015/3/28 16:48:00 -- 我回头看了一下你的问题,你这个其实很容易解决. 在DataColChanged事件, 修改了列名的时候,删除老的文件夹级可 因为有e.oldValue 可用.
|
-- 作者:半人马座比邻星 -- 发布时间:2015/3/28 16:54:00 -- 简单么?我确实接触这个时间不长,基本是自学。如何同时删掉文件夹呢? |
-- 作者:半人马座比邻星 -- 发布时间:2015/3/28 16:55:00 -- e.oldValue 是? |
-- 作者:Bin -- 发布时间:2015/3/28 17:00:00 -- http://www.foxtable.com/help/topics/0625.htm |
-- 作者:半人马座比邻星 -- 发布时间:2015/3/28 22:27:00 -- 我试着写了一下 Dim i As Integer Dim j As Integer
好像不行,大神救我
还有一个想法,如果e.OldValue 能够利用的话,是不是就不用第二步,不用获取指定文件夹内所有子文件夹名并在表A中通过新增行来表示(新增的行未保存)呢?
运行时还说“e”是“private",不能在上下文中引用 [此贴子已经被作者于2015/3/28 22:34:46编辑过]
|