1

パスワードで保護されたExcelが1つあります。このExcelにマクロを1つ追加しようとしています..私のコードは

   oBook = oExcel.Workbooks.Open(FileName, 0, false, 5, "xyz", "", false, Excel.XlPlatform.xlWindows, "", true, false, 0, true);

    //oModule = oMOD.VBComponents("ThisWorkbook");

    oBook.Unprotect("xyz");

    // Create a new VBA code module.
    oModule =
    oBook.VBProject.VBComponents.Add(VBIDE.vbext_ComponentType.vbext_ct_StdModule);
    oModule.CodeModule.AddFromString(sCode);

これを実行すると、「プロジェクトが保護されているため、操作を実行できません」というエラーが表示されます。

このエラーを取り除く方法についてのヘルプ

4

1 に答える 1

1

同様の問題が発生しました。解決策は見つかりませんでしたが、回避策が見つかりました:

Visibilityアプリケーションのプロパティを切り替えてみてください

oBook = oExcel.Workbooks.Open(FileName, 0, false, 5, "xyz", "", false, Excel.XlPlatform.xlWindows, "", true, false, 0, true);


oExcel.Visible= true;
oExcel.Visible = false;

oBook.Unprotect("xyz");

どのように機能するのかはよくわかりませんが (バグのようです)、この単純な 2 行のコードが問題の解決に役立ちます。

于 2013-03-04T07:20:19.693 に答える