我在 Access 2007 中有一个应用程序,它正在创建一个带有N个工作表的工作簿,我创建了一个要插入到该工作簿中的宏,它工作得非常好。但下一步是为 Marco 添加一个快捷键,到目前为止我已经看到了在线方法来提供帮助。第一次尝试没有错误,但也没有分配快捷键
1)
Excel_App.OnKey "^{h}", "Sheet1.HideChange"
2)Excel_App.MacroOptions Macro:="Sheet1.HideChange", Description:="Hide Columns in Line Level", hasshortcutkey:=True, ShortcutKey:="h"
我的变量分配给我的方法
Dim Excel_App As Excel.Application
Dim wkb As Excel.Workbook
Dim wks, wks2, wks3, wks4, wks5, wks6, wks7, wks8 As Excel.Worksheet
Dim i As Integer
Dim xlmodule As Object 'VBComponent
Dim coaches As Recordset
Set Excel_App = New Excel.Application
Excel_App.Visible = False
Set wkb = Excel.Workbooks.Add
下面是我上次放置快捷方式的位置,我尝试在保存前后移动代码行,但我仍然得到 1004 错误。
With wkb
ActiveSheet.Move Before:=Worksheets(1)
.Title = "CHANGE REQUEST"
.Subject = "CHANGE REQUEST"
' Add a macro to the module...
Dim strCode As String
strCode = _
"Sub HideChange()" & vbCr & _
" Columns(""A:A"").Select Selection.EntireColumn.Hidden = True " & vbCr & _
"end sub"
Dim module As VBComponent
Set module = wkb.VBProject.VBComponents(2)
module.CodeModule.AddFromString strCode
Excel_App.MacroOptions Macro:="Sheet1.HideChange", Description:="Hide Columns in Line Level", hasshortcutkey:=True, ShortcutKey:="h"
.SaveAs FileName:=strDir & "\CHANGE REQUEST FORM.xlsm", FileFormat:=xlOpenXMLWorkbookMacroEnabled
.Close
End With
Excel_App.Quit
谁能帮我弄清楚这是如何工作的?如果您需要我的问题的更多详细信息,请询问,谢谢您的时间!