0
私はc#.netコードを使用してExcelを生成している間にマクロを追加しようとしています。 Excelを生成している間、私は、Visual BasicプロジェクトへExcelファイルにマクロを追加する
信頼されていない、このエラーを得ました。 これをC#.codeでどのようにアクティブにすることができますか?のプログラムによるアクセスは、私はExcelのオプションで、信頼できるマクロを作成する必要が理解
これは私が使用したコードです。
StringBuilder sb;
VBIDE.VBComponent xlModule;
sb = new StringBuilder();
xlApp.AutomationSecurity = Microsoft.Office.Core.MsoAutomationSecurity.msoAutomationSecurityByUI;
sb.AppendLine("Private Sub Worksheet_Change(ByVal Target As Range)");
sb.AppendLine("Target.Offset(0, 2).ClearContents");
xlModule = wrkBook.VBProject.VBComponents.Add(VBIDE.vbext_ComponentType.vbext_ct_StdModule);
xlModule.CodeModule.AddFromString(sb.ToString());
Excelのオプションメニューから=>マクロの設定セキュリティセンターで確認してVBAプロジェクトオブジェクトmodel'に 'トラストアクセスをマークしてください。 –
山本哲也 - 私はC#.codeを実装したいと思っていましたが、ユーザは毎回エクセルオプションの儀式を設定することはできません。 – baskar
理論的には、あなたのC#コードからアクセスできるように見えるVBIDEを使って変更することができます。 **ユーザー**がExcelを終了して再度開くまで、変更が反映されないという提案も見たことがあります。プログラムによる終了は変更を保存しません。 グーグルはVBScriptでレジストリ設定を変更しました。 –