Excel マクロ有効ブックの VBA コードを管理します。
Contents
[
Hide
]
C# に VBA モジュールを追加します。
Aspose.Cells を使用すると、Aspose.Cells を使用して新しい VBA モジュールとマクロ コードを追加できます。Workbook.VbaProject.Modules.Add()ワークブック内に新しい VBA モジュールを追加するメソッド
次のサンプル コードは、新しいワークブックを作成し、新しい VBA モジュールとマクロ コードを追加して、出力を XLSM 形式で保存します。一度、出力 XLSM ファイルを Microsoft Excel で開き、開発者 > Visual Basicメニュー コマンドを実行すると、“TestModule” という名前のモジュールが表示され、その中に次のマクロ コードが表示されます。
Sub ShowMessage()
MsgBox "Welcome to Aspose!"
End Sub
VBA モジュールとマクロ コードを使用して出力 XLSM ファイルを生成するサンプル コードを次に示します。
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-.NET | |
// The path to the documents directory. | |
string dataDir = RunExamples.GetDataDir(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType); | |
// Create new workbook | |
Workbook workbook = new Workbook(); | |
// Access first worksheet | |
Worksheet worksheet = workbook.Worksheets[0]; | |
// Add VBA Module | |
int idx = workbook.VbaProject.Modules.Add(worksheet); | |
// Access the VBA Module, set its name and codes | |
Aspose.Cells.Vba.VbaModule module = workbook.VbaProject.Modules[idx]; | |
module.Name = "TestModule"; | |
module.Codes = "Sub ShowMessage()" + "\r\n" + | |
" MsgBox \"Welcome to Aspose!\"" + "\r\n" + | |
"End Sub"; | |
// Save the workbook | |
workbook.Save(dataDir + "output_out.xlsm", SaveFormat.Xlsm); |
C# の VBA またはマクロを変更します。
Aspose.Cells を使用して VBA またはマクロ コードを変更できます。
- Aspose.Cells.Vba
- VbaProject
- VbaModuleCollection
- Vbaモジュール
この記事では、Aspose.Cells を使用して、ソース Excel ファイル内の VBA またはマクロ コードを変更する方法について説明します。
次のサンプル コードは、次の VBA またはマクロ コードを含むソース Excel ファイルを読み込みます。
Sub Button1_Click()
MsgBox "This is test message."
End Sub
Aspose.Cells サンプルコードを実行すると、VBA またはマクロコードは次のように変更されます。
Sub Button1_Click()
MsgBox "This is Aspose.Cells message."
End Sub
ダウンロードできますソースの Excel ファイルそしてその出力エクセルファイル指定されたリンクから。
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-.NET | |
// The path to the documents directory. | |
string dataDir = RunExamples.GetDataDir(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType); | |
// Create workbook object from source Excel file | |
Workbook workbook = new Workbook(dataDir + "sample.xlsm"); | |
// Change the VBA Module Code | |
foreach (VbaModule module in workbook.VbaProject.Modules) | |
{ | |
string code = module.Codes; | |
// Replace the original message with the modified message | |
if (code.Contains("This is test message.")) | |
{ | |
code = code.Replace("This is test message.", "This is Aspose.Cells message."); | |
module.Codes = code; | |
} | |
} | |
// Save the output Excel file | |
workbook.Save(dataDir + "output_out.xlsm"); |
先行トピック
- ワークブックの VBA プロジェクトへのライブラリ参照を追加する
- フォーム コントロールへのマクロの割り当て
- VBA コードのデジタル署名が有効かどうかを確認する
- VBA コードが署名されているかどうかを確認する
- ワークブック内の VBA プロジェクトが署名されているかどうかを確認する
- VBA プロジェクトが保護され、表示用にロックされているかどうかを確認する
- VBA マクロ UserForm DesignerStorage をテンプレートからターゲット ワークブックにコピーする
- 証明書を使用して VBA コード プロジェクトにデジタル署名する
- VBA 証明書をファイルまたはストリームにエクスポートする
- ワークブックの読み込み中に VBA プロジェクトをフィルター処理する
- VBA プロジェクトが保護されているかどうかを調べる
- Excel ワークブックの VBA プロジェクトをパスワードで保護する