vba打开excel文件(带密码)

Dim x As IntegerFor x = 11 To 17Workbooks.Open ("d:\cjd\" & x & "文.xls")Workbooks("cjd.xlsm").Sheets(x & "").Range("b3:c34") = Workbooks(x & "文.xls").Sheets("sheet1").Range("b3:c34").Value
打开文件的密码都是ABCD. 在哪儿写?怎么办?

Application.Workbooks.Open(filename, , , , "ABCD")

可以这样打开带密码的文件。filename就是你的文件目录,比如你的是("d:\cjd\" & x & "文.xls")。

温馨提示:答案为网友推荐,仅供参考
第1个回答  2019-01-22

把所有文件用vba去除密码,然后用python中excel读写相关的包处理,比用vba快100倍。超过1000个文件或1G数据量时效果很明显。我8875个excel文件共6.45G,vba你这种算法花了22778秒,python只用了248秒,同一台dell台式电脑,I3-4310的CPU。

VBA技巧,你选中代码里不知道用法的部分,例如 Workbooks.Open ,按F1键,就出来帮助了,下面有说明和例子,一看就会。离线时按F2,看对象浏览器里的方法和属性也可以的。


多百度网页搜索也行。

excelhome论坛也有,方法很多,最后都找不到了我才来百度知道或stackoverflow问。一般stackoverflow能找到一些中文互联网上找不到的答案的,非常不错。就是国内访问很慢。

第2个回答  2019-01-23
打开带密码的文件,你需将密码作为参数来打开文件。
Open( _FileName_ , _UpdateLinks_ , _ReadOnly_ , _Format_ , _Password_ , _WriteResPassword_ , _IgnoreReadOnlyRecommended_ , _Origin_ , _Delimiter_ , _Editable_ , _Notify_ , _Converter_ , _AddToMru_ , _Local_ , _CorruptLoad_ )
其中:
_password_ 包含打开受保护工作簿所需密码的字符串。 如果省略此参数并且工作簿需要密码,则会提示用户输入密码。
_writerespassword_ 包含写入写保护的工作簿所需密码的字符串。 如果省略此参数并且工作簿需要密码,则将提示用户输入密码。
用逗号分隔参数时需要注意参数的位置
也可用password:="XXXX"指明参数名称追问

谢谢

第3个回答  2019-01-21
打开带密码的文件:
workbooks.Open("a.xls",,,,"ABCD")
注意逗号的个数追问

请教:为什么复制你的代码也不行呢?

追答

不行是什么意思,请粘贴你的代码,以及运行异常的拷屏

追问

追答

去除括号,呵呵

追问

打开文件读取内容成功了,有个不完美的地方,每个文件都弹出是否保存,怎样才能不弹出呢,谢谢!!!

追答

Workbooks.Close False
末尾添加false就不问是否保存了。

本回答被提问者采纳
第4个回答  2019-05-14

Workbooks.Open 方法 (Excel)

Workbooks.Open(fileFullName, 0, , , password)

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网