|
分類:[C#]
以前、この掲示板で質問をし、C#からExcelファイル操作することが可能になりました。
Excelを起動し、マクロを実行するといったプログラムを組むことができたのですが、 以下の2点の方法が調べてもわかりませんでした。
1. 指定したexcelファイルがない(開けない)場合にメッセージボックスで「ありません」と表示し、this.Close();で終了する 2. マクロが実行できなかった場合にメッセージボックスで「実行できません」と表示し、this.Close();で終了する
どなたかわかる方はいないでしょうか? 作成したコードを以下に示します。
------------------------------------ //Excelマクロファイルパス string strMacroPath = @"C:\Users\macro1.xlsm";
//Excel操作用オブジェクト生成 Excel.Application oExcel = new Excel.Application(); //表示する oExcel.Visible = true; Workbooks oBooks = oExcel.Workbooks;
//Excelファイル開く Workbook oBook = oBooks.Open(strMacroPath);
//マクロ実行(Testというサブプロシージャを動かす) oExcel.Run("ThisWorkbook.CSVcombert");
//終了処理(リソース解放) oBook.Close(false);
System.Runtime.InteropServices.Marshal.ReleaseComObject(oBook); oBook = null;
System.Runtime.InteropServices.Marshal.ReleaseComObject(oBooks); oBooks = null;
oExcel.Quit(); System.Runtime.InteropServices.Marshal.ReleaseComObject(oExcel); oExcel = null;
|