Как запретить пользователям печатать файл Excel с помощью Node.js через C++

Возможные сценарии использования

В нашей ежедневной работе в файле Excel может содержаться важная информация; чтобы защитить внутренние данные от распространения, компания не разрешит их печать. Этот документ расскажет, как предотвратить печать файлов Excel другими.

Как предотвратить пользователей от печати файла в MS-Excel

Вы можете применить следующий VBA-код для защиты вашего конкретного файла от печати.

  1. Откройте свою книгу, которую вы не разрешаете печатать.
  2. Выберите вкладку “Developer” на ленте Excel и нажмите кнопку “View Code” в разделе “Controls”. Или удерживайте клавиши ALT + F11 для открытия окна Microsoft Visual Basic for Applications.


  3. Затем в левом окне Обозревателя проекта дважды щелкните ЭтотРабочийКнига, чтобы открыть модуль, и добавьте некоторые VBA-коды.


  4. Затем сохраните и закройте этот код, вернитесь в рабочую книгу, и теперь при попытке распечатать файл образца выводится предупреждение:


Как запретить пользователям печатать файл Excel с помощью Aspose.Cells for Node.js via C++

Следующий пример кода показывает, как предотвратить печать файла Excel:

  1. Загрузите образец файла.
  2. Получите объект VbaModuleCollection из свойства VbaProject рабочей книги.
  3. Получите объект VbaModule через имя “ThisWorkbook”.
  4. Установите свойство codes объекта VbaModule.
  5. Сохраните образец файла в формате xlsm.
const path = require("path");
const AsposeCells = require("aspose.cells.node");

// The path to the documents directory.
const dataDir = path.join(__dirname, "data");
const filePath = path.join(dataDir, "Sample.xlsx");

// Loads the workbook which contains hidden external links
const wb = new AsposeCells.Workbook(filePath);
const modules = wb.getVbaProject().getModules();
modules.get("ThisWorkbook").setCodes("Private Sub Workbook_BeforePrint(Cancel As Boolean)\r\n  Cancel = True\r\n  MsgBox \"Refusing to print in paperless office\"\r\nEnd Sub\r\n");

wb.save("out.xlsm");