要实现VBA来启用Excel中的数组公式有两种方案:
1、通过keybd_event来模拟Ctrl+Shift+Enter的按键;
2、通过代码直接设置Excel中的Formula为FormulaArray。
假设D5单元格中保存了公式,但是要通过Ctrl+Shift+Enter来设置它为数组公式。下面就是第二种方案的实现代码:
Dim objApp As Object:Set objApp = CreateObject("Excel.Application")
Dim objBook As Object: Set objBook = objApp.Workbooks.Open(strTemplate, ReadOnly:=True)
Dim objSheet As Object: Set objSheet = objBook.Sheets(1)
objSheet.Activate
objSheet.Range("D5").Activate
objSheet.Range("D5").FormulaArray = objSheet.Range("D5").Formula
Set objSheet = Nothing
Set objBook = Nothing
Set objApp = Nothing