我已经创建了一个简单的工作表宏,当单元格被双击时,它将单元格的内容发送到外部程序。起初,我将所有代码都放在了sheet模块中,并且必须将其复制到每个我希望使用该功能的工作表。现在,我设法减少工作表模块中的代码,以调用标准模块中的子例程,它可以工作,但我仍然必须将代码复制到每个需要该功能的工作表。有没有办法只在一个地方输入代码(标准模块,工作簿模块或类模块),并使其在工作簿中的任何工作表上都可以使用,而无需代码在工作表后面工作?感谢您的帮助。是否可以创建可在多个工作表上工作的通用宏?
1
A
回答
2
您需要工作表上的事件处理程序来处理双击。把它放在你想运行双击代码的每张工作表后面的代码中。
Option Explicit
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
Dim sWorksheet As String
Dim sValue As String
Dim sCell As String
sWorksheet = ActiveSheet.Name
sValue = Target.Text
sCell = Target.Address
Call DoubleClicked(sWorksheet, sValue, sCell)
End Sub
把你的主例程放在一个模块中,而不是在表单上。
Option Explicit
Sub DoubleClicked(SheetName As String, CellText As String, CellAddress As String)
' your code goes here
MsgBox "You double-clicked cell " & CellAddress & " on sheet " _
& SheetName & ". The text in that cell is: " & CellText
End Sub
你不想重复在每张纸上逻辑。如果您进行更改,则必须为每张表单进行更改。通过简单地调用每个工作表的主例程,您只需编写并维护一次。
5
ThisWorkbook
代码模块有一个Workbook_SheetBeforeDoubleClick
事件处理程序,您可以使用它来代替在每个工作表上单独捕获事件。
+0
+1。如果您希望双击在工作簿中的每个工作表上触发,请使用此操作。如果您不通过检查排除列表中的工作表,您也可以使用此功能。 – 2012-08-10 17:12:10
+0
是'Workbook_SheetBeforeDoubleClick'是运行宏的正确位置。 – 2012-08-10 18:00:03
相关问题
- 1. jQuery是否可以在PSP上工作
- 2. 我可以创建跨越多个工作表的jXLS模板
- 3. 多人可以在一个android工作室项目上工作
- 4. 通过PowerShell在工作簿中的多个工作表上运行宏
- 5. 跨多张工作表在多个表上使用单个宏
- 6. PHP是否可以在TML中工作?
- 7. 是否可以创建一个没有工作表的XLA模块?
- 8. 创建新工作项目时是否可以链接多个变更集?
- 9. 是否可以通过VC++属性表更改工作目录?
- 10. 是否可以在尚不存在的工作表上命名一个范围?
- 11. 是否可以使用VBA将宏从一个Excel工作簿复制到另一个工作簿?
- 12. 是否 - [NSObject autoContentAccessingProxy]可以工作?
- 13. VBA宏在工作表1上工作,但不在工作表2上
- 14. 宏:如何在工作簿中选择多个工作表?
- 15. 是否可以使用Python将工作表插入到现有工作簿中?
- 16. Excel宏:是否可以找到工作表的行高和列宽?
- 17. c#-excel interop - 在工作簿上而不是在工作表上创建图表
- 18. 使宏适用于整个工作簿而不是工作表
- 19. 是否有转换工具可以转换单个作业或多个作业?
- 20. 如何创建多个Excel工作表
- 21. 客户端java是否可以在服务器上工作?
- 22. C/C++库是否可以在Android手机上工作
- 23. Ajax在Google App Engine上爬行 - HtmlUnit是否可以工作?
- 24. Google App Inventor是否可以在AT&T手机上工作?
- 25. NSUndoManager是否可以在iPhone上无抖动手势地工作?
- 26. Alasql - 如何创建多个工作表到工作簿?
- 27. `dcos-cli`是否可以和普通的Mesos一起工作?
- 28. 哪个SQL可以工作?
- 29. 在不同的工作簿上使用宏创建按钮
- 30. 是否有可能通过多个操作基于工作流创建Siebel嵌入式Web服务?
你可以发布你的代码吗? – 2012-08-10 16:58:21