Модифициране на Excel VBA библиотека с помощта на C#

Тази статия ръководи как да промените Excel VBA библиотека с помощта на C#. Той споделя настройките на IDE, списък със стъпки и кодов фрагмент за добавяне на модул в библиотека с кодове на Excel VBA с помощта на C#. Той демонстрира достъп до VBA проекта и добавяне на модули и код в работната книга.

Стъпки за модифициране на Excel VBA кодова библиотека с помощта на C#

  1. Настройте IDE да използва Aspose.Cells for .NET за добавяне на модул и код
  2. Създайте workbook, отворете лист и добавете VBA module
  3. Осъществете достъп до новосъздадения модул, като използвате индекса на новия модул
  4. Задайте име и код за модула
  5. Запазете изходния Excel файл с новия VBA макрос

Тези стъпки обясняват процеса за добавяне на модул в Excel VBA библиотека с изходен код с помощта на C#. Достъп до колекцията VbaProject.Modules на избраната работна книга и извикайте метода Add(), за да добавите нов модул. Получете препратка към новосъздадения модул и задайте неговото име и кодове на желаните стойности, преди да запазите получения XLSM файл.

Код за актуализиране на библиотека с макроси на Excel с помощта на 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");
}
}

Този примерен код демонстрира как да достъпите до библиотека с кодове на VBA с помощта на C# във файл на Excel и да добавите модул и код. Примерният код в модула показва поле за съобщение в MS Excel всеки път, когато стойността на клетка A1 се промени. Това поле за съобщение съдържа актуализираната стойност в клетката, но можете да промените кода според вашите изисквания.

Тази статия ни научи да добавяме макроси към Excel файл. За да покажете формули в Excel, вижте статията на как да показвате формули в Excel с помощта на C#.

 Български