Access交流中心

北京 | 上海 | 天津 | 重庆 | 广州 | 深圳 | 珠海 | 汕头 | 佛山 | 中山 | 东莞 | 南京 | 苏州 | 无锡 | 常州 | 南通 | 扬州 | 徐州 | 杭州 | 温州 | 宁波 | 台州 | 福州 | 厦门 | 泉州 | 龙岩 | 合肥 | 芜湖 | 成都 | 遂宁 | 长沙 | 株洲 | 湘潭 | 武汉 | 南昌 | 济南 | 青岛 | 烟台 | 潍坊 | 淄博 | 济宁 | 太原 | 郑州 | 石家庄 | 保定 | 唐山 | 西安 | 大连 | 沈阳 | 长春 | 昆明 | 兰州 | 哈尔滨 | 佳木斯 | 南宁 | 桂林 | 海口 | 贵阳 | 西宁 | 乌鲁木齐 | 包头 |

[5分]同样的照片重命名问题

白桦林  发表于:2011-10-18 13:30:16  
复制

我希望用窗体的文本框和命令按钮实现对照片的重命名,如附件示例:

点击下载此附件

重命名规则为:当给窗体中的文本框输入值(数字)后,第一张照片的名称就是该文本框的数字

第二张照片的名称为文本框的值+1,

第三张照片的名称为文本框的值+2,……依此类推

窗体中的命令按钮用于指令开始重命名。

 

Top
叶海峰 发表于:2011-10-18 15:01:05
Private Sub Command2_Click()
Dim dirname As String
Dim i
Dim mypath As String
mypath = CurrentProject.Path & "\要重命名的照片\"
i = Me.Text0
dirname = Dir(mypath & "*.jpg")
   Do While dirname <> ""
         Name mypath & dirname As mypath & "\potala_palace_" & i & ".jpg"
         dirname = Dir
   i = i + 1
   Loop
  
End Sub

煮江品茶 发表于:2011-10-18 17:28:20
Private Sub Command2_Click()
'引用:Microsoft Scripting Runtime
Dim fso As New FileSystemObject
Dim myFolder As Folder
Dim myFile As File
Dim i As Long
Set myFolder = fso.GetFolder(CurrentProject.Path & "\要重命名的照片")
i = Me.Text0.Value
For Each myFile In myFolder.Files
    myFile.Name = i & Mid(myFile.Name, InStrRev(myFile.Name, "."))
    i = i + 1
Next myFile
Set myFile = Nothing
Set myFolder = Nothing
Set fso = Nothing
End Sub


白桦林 发表于:2011-10-18 18:38:47

一楼的方法未通过

点击命令按钮无任何反应~!!

二楼的方法在调试时出现“编辑错误:用户定义类型未定义”错误提示~!!!



白桦林 发表于:2011-10-18 18:44:29
二楼的错误提示的同时代码“fso As New FileSystemObject”显示蓝色

都市侠影 发表于:2011-10-18 21:36:23
叶海峰 发表于:2011-10-19 11:36:45


煮江品茶 发表于:2011-10-19 11:39:18
鬼打架,不是给你注释了要增加引用Microsoft Scripting Runtime吗?


白桦林 发表于:2011-10-19 21:53:28

 一楼对我的理解错误

我要得到的重命名结果是文本框的数字

不带前面的那么多字符~!!



白桦林 发表于:2011-10-19 22:18:43

一楼的调试通过

很好用



总记录:9篇  页次:1/1 9 1 :