|
楼主 |
发表于 2009-3-26 20:09
|
显示全部楼层
答复所有的朋友
我的程序只能说是一个钥匙,就比如说你的带有宏的文件给别人使用,别人不会设置宏安全,说不定就不能运行宏,你再伟大的作品也归零,还有就是每次打开excel都有讨厌的宏提示,真烦,于是乎,就通过这把钥匙打开你的excel,不露声色的运行了宏,楼上有位朋友需要公布源码,将在后面公布。
我的常用做法是在任何一个文件夹放置你的excel和工作表钥匙,再把工作表钥匙发送快捷方式到桌面上,那么,打开你的excel不是用ms OFFICE excel而是我的这个钥匙 不是很棒吗?
各位朋友理解什么意思了吗?
也就是说比如你用带vba的工作表给你的领导做了一个高效处理某事的东西 你再加上这个钥匙,每次打开就不会提示宏安全,是不是很爽啊?
当然严厉禁止用于违法作恶,作为一个技术研究人士,道德是绝对不能碰的底线。
--------------------------------------------------------------------------------
那位朋友要求公布源码,稍后公布,但是切记:
学技术,学的是理念,方法,不是代码。。
工作表钥匙有两思路:
1.修改注册表:
-----------------------------------------------------------------------------------
'用vbs打开excel,并跳过宏提示 直接启用宏好好用。保证你要打开的文件名为“我的工作簿”,并放在同一个目录下
Set t = WScript.CreateObject("Excel.Application")
appver = t.version
t.quit
Set t = Nothing
'更改注册表
vbvskey = "HKEY_CURRENT_USER\Software\Microsoft\Office\" & appver & "\Excel\Security\AccessVBOM"
Set WshShell = WScript.CreateObject("Wscript.Shell") '更改注册表
WshShell.RegWrite vbvskey, 1, "REG_DWORD"
Set WshShell = Nothing
Set a = WScript.CreateObject("Excel.Application")
Set b = CreateObject("scripting.filesystemobject")
BatPath=left(Wscript.ScriptFullName,len(Wscript.ScriptFullName)-len(Wscript.ScriptName))'获取当前文件的路径
Set fso = a.Workbooks.Open(BatPath & "\test.xls" ,,,, )'获得excel文件路径,并打开
a.Visible = True'设置成是否可见
--------------------------------------------------------------------
2.用vbs:
Dim oExcel,fn
Set oExcel = CreateObject("Excel.Application")
oExcel.Visible=True
'oExcel.Workbooks.Open fn, "123")
Set fso = oExcel.Workbooks.Open(”我的工作簿.xls“ ,,,, )
Set oExcel = Nothing
Wscript.Quit
把这些代码复制到写字本内,把后缀名改为".vbs”,把它放在你的文件夹下面,双击这个vbs,就可以打开"我的工作簿.xls"的文件,呵呵你把文件名改成你想要的任何一个文件名, |
|