excel - 将多个字典引用到工作簿模块
问题描述
我想Sub
从工作簿模块 ThisWorkbook 调用单独的过程,以在工作簿打开时运行计算。
我正在使用早期绑定来创建字典,然后Sub
我调用下一个Sub
并引用字典。
我可以将整个字典创建过程放在一个单独的模块中,从工作簿模块 ThisWorkbook 调用它,然后在Sub
从工作簿模块调用的下一个过程中引用字典吗?
这就是我所拥有的:
'----------------------------
'Workbook module ThisWorkbook
'----------------------------
Option Explicit
Private Sub Workbook_Open()
With Application
.Calculation = xlCalculationManual
.ScreenUpdating = False
.EnableEvents = False
End With
Dim MRMT As Workbook
Dim ER As Worksheet
Set MRMT = Excel.Workbooks("MRMT")
Set ER = MRMT.Worksheets("Sheet1")
With ER
.Name = "Exposure Report"
End With
Import_Exposure_Report MRMT, ER
' I would like to have "Create_Dictionaries" procedure in a separate
' module and then pass the dictionaries to the Sub below from this workbook module
Import_Historical_Data MRMT, ER 'Key1, Key2, Key3 ect.
With Application
.Calculation = xlCalculationAutomatic
.ScreenUpdating = True
.EnableEvents = True
End With
End Sub
解决方案
Option Explicit
Public Sub Workbook_Open()
With Application
.Calculation = xlCalculationManual
.ScreenUpdating = False
.EnableEvents = False
.DisplayAlerts = False
End With
Dim MRMT As Workbook
Dim ER As Worksheet
Dim CommoditiesDict As New Scripting.Dictionary
Dim IndexesDict As New Scripting.Dictionary
Dim StocksDict As New Scripting.Dictionary
Dim CryptoDict As New Scripting.Dictionary
Dim BondsDict As New Scripting.Dictionary
Dim FXDict As New Scripting.Dictionary
Set MRMT = Excel.Workbooks("MRMTool_V7")
Set ER = MRMT.Worksheets("Sheet1")
ER.Name = "Exposure Report"
With MRMT
Import_Exposure_Report MRMT, ER
Create_Dictionaries BondsDict, CryptoDict, CommoditiesDict, IndexesDict, FXDict, StocksDict, MRMT
Populate_Historical_Data BondsDict, CryptoDict, CommoditiesDict, IndexesDict, FXDict, StocksDict, MRMT, ER
End With
With Application
.Calculation = xlCalculationAutomatic
.ScreenUpdating = True
.EnableEvents = True
.DisplayAlerts = True
End With
End Sub
推荐阅读
- android - 在ROOM中连接表时,表中的字段同名问题
- laravel - Laravel 未定义变量错误
- unix - 使用 Unix 按多列分组(一列以逗号分隔,另一列以 sum )
- android - 当我在 Kotlin 中使用 Delegates 时,map 和 mapVal 之间哪一个是正确的?
- spring-boot - 无法加载资源:net::ERR_CERT_AUTHORITY_INVALID Angular 4
- sql - PL/SQL Oracle - 将行动态转换为字段
- wpf - 如何在通过 HierarchicalDataTemplate wpf 生成的菜单项和子菜单项中保留两个不同的命令
- python-3.x - 龙卷风读取直到关闭方法错误
- sql - 如何为 PostgreSQL 中的自链接记录设计最佳实践数据结构?
- javascript - 使用 java 脚本在网页中插入中断