Este artigo orienta sobre como modificar a biblioteca VBA Excel usando C#. Ele compartilha as configurações do IDE, uma lista de etapas e um trecho de código para adicionar módulo em uma biblioteca de código Excel VBA usando C#. Ele demonstra o acesso ao projeto VBA e a adição de módulos e código na pasta de trabalho.
Etapas para modificar a biblioteca de códigos VBA do Excel usando C#
- Configure o IDE para usar Aspose.Cells for .NET para adicionar módulo e código
- Crie um workbook, acesse uma planilha e adicione um VBA module
- Acesse o módulo recém-criado usando o novo índice do módulo
- Defina o nome e o código do módulo
- Salve o arquivo Excel de saída com a nova macro VBA
Estas etapas explicam o processo para adicionar módulo na biblioteca de código-fonte Excel VBA usando C#. Acesse a coleção VbaProject.Modules da pasta de trabalho selecionada e chame o método Add() para adicionar um novo módulo. Obtenha uma referência para o módulo recém-criado e defina seu nome e códigos com os valores desejados antes de salvar o arquivo XLSM resultante.
Código para atualizar a biblioteca de macros do Excel usando C#
using System; | |
using Aspose.Cells; | |
using Aspose.Cells.Vba; | |
class Program | |
{ | |
static void Main(string[] args) // Add VBA code in Excel using C# | |
{ | |
new License().SetLicense("License.lic"); | |
// Create new workbook, access a sheet and add a VBA module | |
Workbook workbook = new Workbook(); | |
Worksheet worksheet = workbook.Worksheets[0]; | |
int moduleIndex = workbook.VbaProject.Modules.Add(worksheet); | |
// Access the VBA Module | |
VbaModule module = workbook.VbaProject.Modules[moduleIndex]; | |
// Set module name | |
module.Name = "TestModule"; | |
// Set module code | |
module.Codes = | |
@"Private Sub Worksheet_Change(ByVal Target As Range) | |
' Check if the changed cell is A1 | |
If Target.Address = ""$A$1"" Then | |
' Check if the changed cell is not empty | |
If Target.Value <> """" Then | |
' Display a message box | |
MsgBox ""Text entered in cell A1: "" & Target.Value, vbInformation, ""Cell A1 Change"" | |
End If | |
End If | |
End Sub | |
"; | |
// Save the workbook | |
workbook.Save("output.xlsm", SaveFormat.Xlsm); | |
Console.WriteLine("VBA code added successfully"); | |
} | |
} |
Este código de exemplo demonstra como acessar a biblioteca de códigos VBA usando C# em um arquivo Excel e adicionar módulo e código. O código de exemplo no módulo exibe uma caixa de mensagem no MS Excel sempre que o valor da célula A1 é alterado. Esta caixa de mensagem contém o valor atualizado na célula, porém você pode alterar o código de acordo com sua necessidade.
Este artigo nos ensinou como adicionar macros a um arquivo Excel. Para mostrar fórmulas no Excel, consulte o artigo em como mostrar fórmulas no Excel usando C#.