Excel VSTO сортировать диалоговое окно C #

2

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

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

Application.Dialogs(xlDialogSort).Show

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

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

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

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

Теги:
excel-vba
excel
vsto

1 ответ

1
Лучший ответ

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

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);
  • 0
    Если вы собираетесь использовать методы, подобные этому, некоторые опции включают рефакторизацию вызова в другой метод, который принимает только те параметры, которые вам нужны, или использование библиотеки расширений (бесполезно для всех таких методов).

Ещё вопросы

Сообщество Overcoder
Наверх
Меню