C#でエクセルに名前を付けて保存する処理を書いています。
InvokeMemberを使っていますが、下のSaveAs処理で例外が発生します。
OS:Windows7
言語:C#
ソース内容(抜粋)↓
object[] args = null;
args = new object[11];
args[0] = outputFileName; // 出力ファイル名
args[1] = objWorkbook.GetType().InvokeMember("FileFormat", BindingFlags.GetProperty, null, objWorkbook, null);
args[2] = Type.Missing;
args[3] = Type.Missing;
args[4] = false;
args[5] = false;
args[6] = Common.ControlExcel.XlSaveAsAccessMode.xlNoChange;
args[7] = Type.Missing;
args[8] = Type.Missing;
args[9] = Type.Missing;
args[10] = Type.Missing;
objWorkbook.GetType().InvokeMember("SaveAs", BindingFlags.InvokeMethod, null, objWorkbook, args); // ← ここでエラー発生!
エラー表示→「呼び出しのターゲットが例外をスローしました」
パラメータ args の項目数を12や16に変えても解決しませんでした。
どのように書けば正しく動作するかご存知の方、ご教示ください。
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。