Retorne um array bidimensional para se destacar de um c ++ xll, o retorno

Antes de tudo, sei que a pergunta já foi feita aqui:

retornar matriz multidimensional para se destacar do c ++ xll

Eu tentei reviver o assunto, sem sucesso. (O PO não é tão ativo ultimamente, nunca foi.) É por isso que estou fazendo a pergunta novamente, desculpe-me antecipadamente.

Eu codifiquei uma função retornando uma (linha) matriz unidimensional:

__declspec(dllexport) LPXLOPER12 WINAPI Get1DArray(void)
{
    static XLOPER12 xlArray;
    XLOPER12 xlValues[2];
    xlValues[0].xltype = xltypeNum;
    xlValues[1].xltype = xltypeNum;
    xlValues[0].val.num = 123;
    xlValues[1].val.num = 456;
    xlArray.xltype = xltypeMulti | xlbitDLLFree;
    xlArray.val.array.rows = 1;
    xlArray.val.array.columns = 2;
    xlArray.val.array.lparray = &xlValues[0];
    return static_cast<LPXLOPER12>(&xlArray);
}

isso funciona. Eu tentei a mesma coisa errada que o OP da pergunta que eu estava mencionando acima tentou (foi assim que me deparei com a pergunta dele).

O único documento que tenho é o msdn para excel sdk, isso não me ajudou. A função que eu codifiquei, usei um exemplo encontrado na web. Não encontrou nenhum para matriz bidimensional. Eu sei que os livros de Steve Dalton sobre xll não ajudaram.

Eu suspeito multidimensionalXLOPER12 matrizes valores de estoque em matrizes unidimensionais, numeradas por linhas e colunas ou colunas e linhas, mas não conseguiram explorar essa intuição ...

É por isso que estou aqui.

questionAnswers(1)

yourAnswerToTheQuestion