Comment empêcher les utilisateurs d imprimer un fichier Excel avec Node.js via C++
Contents
[
Hide
]
Scénarios d’utilisation possibles
Dans notre travail quotidien, il peut y avoir des informations importantes dans le fichier Excel; afin de protéger ces données internes de la diffusion, la société ne nous permettra pas de les imprimer. Ce document vous explique comment empêcher les autres d’imprimer des fichiers Excel.
Comment empêcher les utilisateurs d’imprimer un fichier dans MS-Excel
Vous pouvez appliquer le code VBA suivant pour protéger votre fichier spécifique contre l’impression.
- Ouvrez votre classeur que vous ne permettez pas aux autres d’imprimer.
- Sélectionnez l’onglet “Développeur” dans le ruban Excel et cliquez sur le bouton “Afficher le code” dans la section “Contrôles”. Alternativement, vous pouvez maintenir les touches ALT + F11 pour ouvrir la fenêtre Visual Basic for Applications.
- Ensuite, dans l’Explorateur de projets à gauche, double-cliquez sur ThisWorkbook pour ouvrir le module, et ajoutez des codes VBA.
- Ensuite, enregistrez et fermez ce code, revenez au classeur, et lorsque vous imprimez le fichier exemple, il ne sera pas autorisé à être imprimé, et une boîte d’avertissement apparaîtra :
Comment empêcher les utilisateurs d’imprimer un fichier Excel avec Aspose.Cells for Node.js via C++
Le code d’exemple suivant illustre comment empêcher les utilisateurs d’imprimer un fichier Excel :
- Charger le fichier d’exemple.
- Obtenez l’objet VbaModuleCollection à partir de la propriété VbaProject du classeur.
- Obtenez l’objet VbaModule via le nom “ThisWorkbook”.
- Définissez la propriété codes de VbaModule.
- Enregistrez le fichier d’exemple au format 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");