ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

搜索
EH技术汇-专业的职场技能充电站 妙哉!函数段子手趣味讲函数 Excel服务器-会Excel,做管理系统 Excel Home精品图文教程库
HR薪酬管理数字化实战 Excel 2021函数公式学习大典 Excel数据透视表实战秘技 打造核心竞争力的职场宝典
300集Office 2010微视频教程 数据工作者的案头书 免费直播课集锦 ExcelHome出品 - VBA代码宝免费下载
用ChatGPT与VBA一键搞定Excel WPS表格从入门到精通 Excel VBA经典代码实践指南
查看: 703|回复: 6

时分秒00:00:00格式提取文件名和sheet名为00-00-00,实际变为小数了。

[复制链接]

TA的精华主题

TA的得分主题

发表于 2019-4-14 10:13 来自手机 | 显示全部楼层 |阅读模式
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
本帖最后由 喜爱小娘子 于 2019-4-14 10:19 编辑

我在帖子里找到了需要的,问题为:假设每个附件内D7单元格内为时间格式为16:19:10(这个时间每个excel都不一样),实际运行后提取为文件名变为小数0.679...,希望提取的文件名变为16-19-10格式,请大神帮忙修改代码,谢谢!

New folder (2).zip

47.57 KB, 下载次数: 0

TA的精华主题

TA的得分主题

 楼主| 发表于 2019-4-14 10:15 来自手机 | 显示全部楼层
乱码了,假设D7单元格均为时间格式16:19:10(这个时间每个excel都不一样),运行程序后文件名和sheet名都变成小数0.6799....,希望文件名和sheet名都变为16-19-10的格式,请大神帮忙修改代码。

TA的精华主题

TA的得分主题

 楼主| 发表于 2019-4-14 10:30 来自手机 | 显示全部楼层

Sub Opiona()

'禁止系统刷屏?触发其他事件等
'On Error Resume Next    '// 发生错误,自动执行下一句,就是忽略错误
Application.ScreenUpdating = False '//关闭屏幕刷新
Application.DisplayAlerts = False '//关闭系统提示
Application.EnableEvents = False  '//禁止触发其他事件
t = Timer   '//开始时间

    PathG = ThisWorkbook.Path & "\结果"
    Set FSO = CreateObject("Scripting.FileSystemObject")
    If FSO.FolderExists(PathG) = True Then
        FSO.GetFolder(PathG).Delete   '//删除文件夹
    End If
   
    FileArr = FileAllArr(ThisWorkbook.Path, "*.xls?", ThisWorkbook.Name, True, False)
    MkDir PathG    '//创建文件夹
    For I = 0 To UBound(FileArr)
        Set WB = Workbooks.Open(FileArr(I))
        Set SHX = WB.Sheets(1)
        WB.SaveAs Filename:=PathG & "" & Replace(Replace(SHX.Range("G5").Value & "_" & SHX.Range("D6").Value & "_" & SHX.Range("D7").Value, "", "-"), "/", "-") & ".XLSX"
        WB.Close True  '//保存
    Next

Application.EnableEvents = True  '//  '//恢复触发其他事件
Application.ScreenUpdating = True '//恢复屏幕刷新
Application.DisplayAlerts = True '//恢复系统提示
MsgBox "一共用时:" & Format(Timer - t, "#0.0000") & " 秒", , "北极狐提示!!"  '//提示所用时间
End Sub

TA的精华主题

TA的得分主题

 楼主| 发表于 2019-4-14 16:24 来自手机 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
没有大神在吗?!摸索几天论坛也没有找到相关帖子。

TA的精华主题

TA的得分主题

 楼主| 发表于 2019-4-15 08:39 来自手机 | 显示全部楼层

TA的精华主题

TA的得分主题

 楼主| 发表于 2019-4-15 20:38 来自手机 | 显示全部楼层
顶起来,这个问题论坛找一周都没有找到类似的,帮忙指点路径也行。

TA的精华主题

TA的得分主题

 楼主| 发表于 2019-4-17 09:43 来自手机 | 显示全部楼层
绕个弯,问题自己解决了。
处理方法:加辅助列,用公式作出来00-00-00,然后提取辅助列的数据作为文件名,提取完后在清除辅助列数据。
虽然过程曲折,但还是达到了自己想要的结果,满满的成就感!!!
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

关闭

最新热点上一条 /1 下一条

手机版|关于我们|联系我们|ExcelHome

GMT+8, 2024-4-24 10:58 , Processed in 0.040082 second(s), 11 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

沪公网安备 31011702000001号 沪ICP备11019229号-2

本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任!     本站特聘法律顾问:李志群律师

快速回复 返回顶部 返回列表