VB复制 excel
用VB将"E:\111.xls"(excel文件)复制到文件夹"E:\111\"中并以日期+时间为excel文件的名字.(例如:生成的文件名为20100511113820...
用VB 将 "E:\111.xls" (excel文件) 复制到 文件夹"E:\111\" 中 并以日期+时间为excel文件的名字.(例如:生成的文件名为20100511113820.xls ) filecopy 用了 没反应 不知道是不是用错了
请 帮忙编下程序
第一 用 VB 第二 满足条件 复制 后的 文件名称是 当时的日期时间字符串 展开
请 帮忙编下程序
第一 用 VB 第二 满足条件 复制 后的 文件名称是 当时的日期时间字符串 展开
5个回答
展开全部
filecopy 有一个缺点~如果想要对一个已打开的文件使用 FileCopy 语句,则会产生错误
你可以试试用DOS的copy 是VB调用DOS命令哦 别理解错了
shell "cmd /c copy E:\111.xls E:\111\" & date & time & ".xls" ,0
编程是为了将复杂变简单 何必执着于形式~
还有一种
Set fs = CreateObject("Scripting.FileSystemObject")
fs.CopyFile "源", "目标"
但这种方法有可能受权限的制约 导致错误
VB 内置函数就这么2个copy 且都有缺陷
如果你什么都要用纯VB实现 那连API也不能用了 它只是个接口
你可以试试用DOS的copy 是VB调用DOS命令哦 别理解错了
shell "cmd /c copy E:\111.xls E:\111\" & date & time & ".xls" ,0
编程是为了将复杂变简单 何必执着于形式~
还有一种
Set fs = CreateObject("Scripting.FileSystemObject")
fs.CopyFile "源", "目标"
但这种方法有可能受权限的制约 导致错误
VB 内置函数就这么2个copy 且都有缺陷
如果你什么都要用纯VB实现 那连API也不能用了 它只是个接口
展开全部
不用FSO的复制文件夹得方法?
用API函数 SHFileOperation
以下是使用SHFileOperation删除复制移动文件的例子,可以复制文件夹
Private Type SHFILEOPSTRUCT
hwnd As Long
wFunc As Long
pFrom As String
pTo As String
fFlags As Integer
fAnyOperationsAborted As Long
hNameMappings As Long
lpszProgressTitle As String '只有在 FOF_SIMPLEPROGRESS 时用
End Type
Private Declare Function SHFileOperation Lib _
"shell32.dll" Alias "SHFileOperationA" (lpFileOp _
As SHFILEOPSTRUCT) As Long
'wFunc 常数
'FO_COPY 把 pFrom 文件拷贝到 pTo。
Const FO_COPY = &H2
'FO_DELETE 删除 pFrom 中的文件(pTo 忽略)。
Const FO_DELETE = &H3
'FO_MOVE 把 pFrom 文件移动到 pTo。
Const FO_MOVE = &H1
'fFlag 常数
'FOF_ALLOWUNDO 允许 Undo 。
Const FOF_ALLOWUNDO = &H40
'FOF_NOCONFIRMATION 不显示系统确认对话框。
Const FOF_NOCONFIRMATION = &H10
'FOF_NOCONFIRMMKDIR 不提示是否新建目录。
Const FOF_NOCONFIRMMKDIR = &H200
'FOF_SILENT 不显示进度对话框
Const FOF_SILENT = &H4
'例子:
Dim SHFileOp As SHFILEOPSTRUCT
' 删除
SHFileOp.wFunc = FO_DELETE
SHFileOp.pFrom = "c:\config.old" + Chr(0)
SHFileOp.fFlags = FOF_ALLOWUNDO + FOF_NOCONFIRMATION
Call SHFileOperation(SHFileOp)
' 删除多个文件
SHFileOp.wFunc = FO_DELETE
SHFileOp.pFrom = "c:\config.old" +Chr(0) + "c:\autoexec.old"+Chr(0)
SHFileOp.fFlags = FOF_ALLOWUNDO
Call SHFileOperation(SHFileOp)
' 拷贝
SHFileOp.wFunc = FO_COPY
SHFileOp.pFrom = "c:\t"
SHFileOp.pTo = "d:\"
SHFileOp.fFlags = FOF_ALLOWUNDO + FOF_NOCONFIRMMKDIR
Call SHFileOperation(SHFileOp)
' 移动
SHFileOp.wFunc = FO_MOVE
SHFileOp.pFrom = "c:\config.old" + Chr(0)
SHFileOp.pTo = "d:\t"
SHFileOp.fFlags = FOF_ALLOWUNDO + FOF_NOCONFIRMATION
Call SHFileOperation(SHFileOp)
或者
shell "cmd.exe /c xcopy "+chr(34)+"C:\新建文件夹 c:\aa /q /e" +chr(34)
用API函数 SHFileOperation
以下是使用SHFileOperation删除复制移动文件的例子,可以复制文件夹
Private Type SHFILEOPSTRUCT
hwnd As Long
wFunc As Long
pFrom As String
pTo As String
fFlags As Integer
fAnyOperationsAborted As Long
hNameMappings As Long
lpszProgressTitle As String '只有在 FOF_SIMPLEPROGRESS 时用
End Type
Private Declare Function SHFileOperation Lib _
"shell32.dll" Alias "SHFileOperationA" (lpFileOp _
As SHFILEOPSTRUCT) As Long
'wFunc 常数
'FO_COPY 把 pFrom 文件拷贝到 pTo。
Const FO_COPY = &H2
'FO_DELETE 删除 pFrom 中的文件(pTo 忽略)。
Const FO_DELETE = &H3
'FO_MOVE 把 pFrom 文件移动到 pTo。
Const FO_MOVE = &H1
'fFlag 常数
'FOF_ALLOWUNDO 允许 Undo 。
Const FOF_ALLOWUNDO = &H40
'FOF_NOCONFIRMATION 不显示系统确认对话框。
Const FOF_NOCONFIRMATION = &H10
'FOF_NOCONFIRMMKDIR 不提示是否新建目录。
Const FOF_NOCONFIRMMKDIR = &H200
'FOF_SILENT 不显示进度对话框
Const FOF_SILENT = &H4
'例子:
Dim SHFileOp As SHFILEOPSTRUCT
' 删除
SHFileOp.wFunc = FO_DELETE
SHFileOp.pFrom = "c:\config.old" + Chr(0)
SHFileOp.fFlags = FOF_ALLOWUNDO + FOF_NOCONFIRMATION
Call SHFileOperation(SHFileOp)
' 删除多个文件
SHFileOp.wFunc = FO_DELETE
SHFileOp.pFrom = "c:\config.old" +Chr(0) + "c:\autoexec.old"+Chr(0)
SHFileOp.fFlags = FOF_ALLOWUNDO
Call SHFileOperation(SHFileOp)
' 拷贝
SHFileOp.wFunc = FO_COPY
SHFileOp.pFrom = "c:\t"
SHFileOp.pTo = "d:\"
SHFileOp.fFlags = FOF_ALLOWUNDO + FOF_NOCONFIRMMKDIR
Call SHFileOperation(SHFileOp)
' 移动
SHFileOp.wFunc = FO_MOVE
SHFileOp.pFrom = "c:\config.old" + Chr(0)
SHFileOp.pTo = "d:\t"
SHFileOp.fFlags = FOF_ALLOWUNDO + FOF_NOCONFIRMATION
Call SHFileOperation(SHFileOp)
或者
shell "cmd.exe /c xcopy "+chr(34)+"C:\新建文件夹 c:\aa /q /e" +chr(34)
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
如果你插入的是窗体控件,很简单的。(activex控件比较麻烦,得用vba代码)
右键点车间(1)控件,设置格式,最后一个标签“控制”,单元格链接处点到比如sheet1的g1,确定。
在sheet2的a1输入
=if(sheet1!g1,"车间(1)","车间(2)")
就可以了。
右键点车间(1)控件,设置格式,最后一个标签“控制”,单元格链接处点到比如sheet1的g1,确定。
在sheet2的a1输入
=if(sheet1!g1,"车间(1)","车间(2)")
就可以了。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
On error reusme Next
if Dir("E:\1111\")="" then Mkdir "E:\1111\"
f= "e:\111.xls"
a=format(date,"yyyymmdd")
b=format(time,"hhmmss")
ff = "e:\111\" & a & b & ".xls"
FileCopy f,ff
if Dir("E:\1111\")="" then Mkdir "E:\1111\"
f= "e:\111.xls"
a=format(date,"yyyymmdd")
b=format(time,"hhmmss")
ff = "e:\111\" & a & b & ".xls"
FileCopy f,ff
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
startname = "e:\111.xls"
a=date
b=time
c = a&b
endname = "e:\111\" + c + ".txt"
FileCopy startname, endname
一定好用 哥们!
a=date
b=time
c = a&b
endname = "e:\111\" + c + ".txt"
FileCopy startname, endname
一定好用 哥们!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询