Excel 文件中 table 的设置范围

Setting range for table in Excel file

我正在 Microsoft Dynamics AX 2009 中生成 Excel 文件。我想在第 9 行的 Excel 中创建一个 table。即使我设置了范围,table 始终显示在单元格 A1 中。

SysExcelRange           xlsRange;
SysExcelListObject      listObj;
#define.ListObjectName("xlGuess")

...

xlsRange = xlsWorkSheet.range("A9");
listObj = xlsWorkSheet.listObjects().add(xlsRange, #ListObjectName);

我也尝试过像“A9:E13”和“A9:A13”这样的全范围设置,但也没用。可能,可以使用 COM 对象来实现,但我无法实现。 为什么它不起作用?

AX 的 Excel 包装器似乎有错误。
如果我更改一行以将实际范围传递给底层 COM 对象,那么它似乎可以工作;看看我所做更改的屏幕截图。

像这样的 AOT 作业

public static client void TestJob()
{
    #define.ListObjectName("xlGuess")

    SysExcelApplication     xlsApp;
    SysExcelWorksheet       xlsWorksheet;
    SysExcelRange           xlsRange;
    SysExcelListObject      listObj;
    ;

    xlsApp = SysExcelApplication::construct();
    xlsApp.workbooks().add();
    xlsWorksheet = xlsApp.activeSheet();
    xlsRange = xlsWorksheet.range("A9:C12");
    listObj = xlsWorkSheet.listObjects().add(xlsRange, #ListObjectName);
    xlsApp.visible(true);
}

它将打开一个 Excel 文件,如下所示: