vb保存excel

vb中已经建立的excel是不可见的也就是visibal=0希望每次点击结束Button是出现一个对话框,使后台的excel自定义保存,不会覆盖以前的。还有能不能帮我详细... vb中已经建立的excel是不可见的 也就是visibal=0
希望每次点击结束Button是出现一个对话框,使后台的excel自定义保存,不会覆盖以前的。

还有能不能帮我详细解释一下这句话每块是什么意思
ActiveWorkbook.SaveAs ActiveWorkbook.Path & "\" & CStr(Val(Replace(ActiveWorkbook.FullName, ActiveWorkbook.Path & "\", "")) + 1) & ".xls"

如采纳为答案有追加积分
谢谢!
用SaveAs
ThisWorkBook.SaveAs Filename:=ThisWorkBook.Path & "\XXX.xls"
来保存只能存在一个文件夹内

ActiveWorkbook.SaveAs ActiveWorkbook.Path & "\" & CStr(Val(Replace(ActiveWorkbook.FullName, ActiveWorkbook.Path & "\", "")) + 1) & ".xls"
这句也只能保存 如 原有文件为1.xlsx 再能保存 2.xlsx

希望每次结束 都可以保存在一个新的excel文件里面。
希望能给出一个程序,如有不明白的请说,我再补充。
展开
 我来答
Excel梦想之家
推荐于2016-02-22 · 世间本无路,有思路就有了路
Excel梦想之家
采纳数:508 获赞数:3215

向TA提问 私信TA
展开全部
楼主,VBA我也不是很熟,正在学

1。关于文件保存
不是可以用SaveAs
ThisWorkBook.SaveAs Filename:=ThisWorkBook.Path & "\XXX.xls"
还可以用保存副本
ThisWorkBook.SaveCopyAs ThisWorkBook.Path & "\XXX.xls"

如果你用save方法的话,
ActiveWorkBook.Save,是保存在原文件下.

注:如果您不是真的想执行保存动作, 只想打个已保存标记(实际上不保存),可以把工作薄的属性saved设成ture. 这是标记已保存(实际上并没保存)

下面那个句的意思是:
ActiveWorkbook.SaveAs ActiveWorkbook.Path & "\" & CStr(Val(Replace(ActiveWorkbook.FullName, ActiveWorkbook.Path & "\", "")) + 1) & ".xls"

ActiveWorkbook.SaveAs 当前活动工作另存为
ActiveWorkbook.Path 当前工作薄的完整路径
& 文本连接符
Replace(ActiveWorkbook.FullName, ActiveWorkbook.Path & "\", "")) 将当前工作薄文件路径和文件名字中的 "\" 去掉
Val(Replace(ActiveWorkbook.FullName, ActiveWorkbook.Path & "\", "")) + 1 当前工作薄文件路径和文件名字中的 "\" 去掉以后,再取其中的数字并加1`
CStr(Val(Replace(ActiveWorkbook.FullName, ActiveWorkbook.Path & "\", "")) + 1) 将上边说的加了1的数字再转换成文本

ActiveWorkbook.SaveAs ActiveWorkbook.Path & "\" & CStr(Val(Replace(ActiveWorkbook.FullName, ActiveWorkbook.Path & "\", "")) + 1) & ".xls" 整个函数的意思就是原来的工作薄的名字是个数字,这一句的意思就是将当工作薄按原来的路径另存成一个文件名字中数字+1的新文件.
guanguanwky
2009-08-01 · TA获得超过237个赞
知道小有建树答主
回答量:379
采纳率:0%
帮助的人:316万
展开全部
没用过,但是大概能理解这句的意思
ActiveWorkbook.FullName一般是指"d:\a\b\12.xls"这样的
ActiveWorkbook.Path 则是"d:\a\b"
但是如果fullname是"d:\1.xls"这种在根目录下的话,path属性就是"d:\"也就是直接带了\,如果不加判断,容易出错。
rename 函数就是把"d:\a\b\12.xls"这个字符串中的子字符串"d:\a\b"替换成""
结果是12.xls
cstr(val("12.xls") +1)即13
就是抽出源文件的文件名(不带扩展名)然后加1之后再保存。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
boybj2016
2018-01-25
知道答主
回答量:2
采纳率:100%
帮助的人:1.6万
展开全部
把 SaveAs 换成 SaveCopyAs 试试
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式