Excel VSTO сортировать диалоговое окно C # - PullRequest
2 голосов
/ 26 июня 2009

Я пытаюсь переписать некоторый код VBA в Excel VSTO.

Код VBA выглядит следующим образом:

Application.Dialogs(xlDialogSort).Show

Когда я пытаюсь сделать то же самое в VSTO, я обнаружил, что этот же метод требует 30 аргументов! Подпись «Показать (объект Arg0, объект Arg1 и т. Д.)»

Globals.RiskViewerWorkbook.ThisApplication.Dialogs[XlBuiltInDialog.xlDialogSort].Show(null,null,null,... );

Какие значения мне нужно передать, чтобы сделать тот же вызов, что и код VBA? ноль не работает.

Я начал писать этот вопрос, а затем обнаружил ответ, поэтому я опубликую его и ответ.

1 Ответ

1 голос
/ 26 июня 2009

Решением было передать значение «отсутствует» в качестве каждого из аргументов.

http://msdn.microsoft.com/en-us/library/microsoft.office.tools.excel.workbook.displaydrawingobjects(VS.80).aspx

this.Application.Dialogs[Excel.XlBuiltInDialog.xlDialogSort].Show(
    missing, missing, missing, missing, missing, missing, missing, missing,
    missing, missing, missing, missing, missing, missing, missing, missing,
    missing, missing, missing, missing, missing, missing, missing, missing,
    missing, missing, missing, missing, missing, missing);
...