将Excel VBA中的数组转换为Powerpoint VBA

将Excel VBA中的数组转换为Powerpoint VBA,vba,excel,powerpoint,Vba,Excel,Powerpoint,我想将Excel VBA中的代码转换为在Powerpoint VBA中运行。以下是我目前在ppt VBA中的内容: Dim wbkISS As Excel.Workbook Dim varSheetISS As Excel.Worksheet Set wbkISS = Workbooks.Open(FileName:="C:\Users\...\Documents\ISS.xlsm") Set varSheetISS = wbkISS.Worksheets("For ISS") strIDR

我想将Excel VBA中的代码转换为在Powerpoint VBA中运行。以下是我目前在ppt VBA中的内容:

Dim wbkISS As Excel.Workbook
Dim varSheetISS As Excel.Worksheet

Set wbkISS = Workbooks.Open(FileName:="C:\Users\...\Documents\ISS.xlsm")
Set varSheetISS = wbkISS.Worksheets("For ISS")

strIDRangeISS = "A2:D50"

varSheetISS = varSheetISS.Range(strIDRangeISS)

For iRowISS = LBound(varSheetISS, 1) To UBound(varSheetISS, 1)
    ...
    For iRowFCST = LBound(varSheetFCST, 1) To UBound(varSheetFCST, 1)
        ...
但在LBoundvarsheetISS,它给了我一个编译错误:预期数组。我的代码在Excel中运行良好,所以我认为我的ppt语法错误

必须发布答案:


此代码没有“Option Explicit”头

变量varSheetISS正被肆无忌惮地传递

它以工作表的形式开始生命,然后被转换到一个范围,其目的是获取该范围的值

使用optionexplicit可以避免很多这种情况


Dim issArray作为变量:issArray=varSheetISS.RangestrIDRangeISS.Value2

此代码没有“Option Explicit”标题。这在Excel中真的可以正常工作吗?很确定它不会。。。如果你想在PPT中运行它,你首先需要创建一个Excel应用程序对象。对不起,Excel vba版本不同,我在那里发布的代码就是我迄今为止为PPT修改的代码