2009-06-26 7 views
2

Excel VSTOでいくつかのVBAコードを書き直そうとしています。次のようにExcel VSTOソートダイアログボックスC#

VBAコードは次のとおりです。

Application.Dialogs(xlDialogSort).Show 

私は同じ方法で30の引数を必要としていることを見つけるVSTOで同じことをしようとすると!署名は、「表示(オブジェクトarg0には、ARG1、などのオブジェクト)」され

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

どの値VBAコードと同じコールを使用してされていることを確認するために渡すため、私は必要なのでしょうか? nullは機能しません。

私はこの質問を書いてから答えを見つけましたので、私はそれと回答を投稿します。

答えて

1

解決策は、それぞれの引数として値 "missing"を渡すことでした。

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

あなたはこのたくさんのようなメソッドを使用しようとしている場合、いくつかのオプションは、必要なパラメータのみを取り、別のメソッドに呼び出しをリファクタリング、またはすべてのそのような方法のために(有用ではない拡張ライブラリを使用することを含みます)。 –

関連する問題