В этом руководстве объясняется, как добавить модуль в библиотеку Excel VBA с помощью Node.js. В нем есть сведения о настройке среды разработки, список задач по добавлению кода VBA и процесс доступа к библиотеке кода VBA с помощью Node.js для добавления методов. Вы изучите различные варианты настройки модулей и добавления нескольких методов.
Действия по обновлению библиотеки кода VBA с помощью Node.js
- Настройте Aspose.Cells для Node.js через Java для добавления кода VBA.
- Создайте workbook и получите ссылку на лист для добавления VBA module.
- Доступ к коллекции модулей из VbaProject в книге Excel.
- Получите ссылку на недавно добавленный модуль
- Установить имя модуля
- Установить коды модулей
- Сохраните книгу Excel
Эти шаги суммируют процесс расширения библиотеки кода Excel VBA с помощью Node.js. Получите доступ к объекту VbaProject в рабочей книге, содержащей коллекцию модулей, для добавления нового модуля. Задайте различные свойства нового модуля, такие как имя и коды для добавления многострочного кода VBA несколькими методами.
Код для добавления библиотеки исходного кода Excel VBA с Node.js
var aspose = aspose || {}; | |
aspose.cells = require("aspose.cells"); | |
// Set the license | |
new aspose.cells.License().setLicense("License.lic"); | |
// Create a workbook | |
var wb = new aspose.cells.Workbook(); | |
// Select a sheet | |
var ws = wb.getWorksheets().get(0); | |
// Add VBA Module | |
var idx = wb.getVbaProject().getModules().add(ws); | |
var module = wb.getVbaProject().getModules().get(idx); | |
// Assign a name | |
module.setName("ConvertTextToUpper"); | |
// Set code | |
const moduleCodes = ` | |
Private Sub Worksheet_Change(ByVal Target As Range) | |
On Error Resume Next | |
' Disable events | |
Application.EnableEvents = False | |
Dim cell As Range | |
For Each cell In Target | |
If Not Intersect(cell, Me.UsedRange) Is Nothing Then | |
' Convert to uppercase | |
cell.Value = UCase(cell.Value) | |
End If | |
Next cell | |
' Enable events after the changes are made | |
Application.EnableEvents = True | |
End Sub | |
`; | |
module.setCodes(moduleCodes); | |
// Save the output | |
wb.save("VbaCodeExcel.xlsm", aspose.cells.SaveFormat.XLSM); | |
console.log("Vba Code added successfully"); |
Этот код демонстрирует, как изменить библиотеку Excel VBA с помощью Node.js. В этом примере кода добавляется метод VBA, который обрабатывает событие изменения на листе, так что всякий раз, когда строка вводится в ячейку, она автоматически преобразуется в верхний регистр, однако вы можете добавить несколько обработчиков событий в этот сегмент кода. Класс VbaProject имеет различные свойства и методы для настройки, такие как защита или снятие защиты проекта VBA, установка кодировки и его подписание.
В этой теме мы научились добавлять методы в библиотеку VBA. Чтобы применить фильтры в файле Excel, обратитесь к статье Как применить фильтр в Excel с помощью Node.js.