Vous pouvez facilement combiner deux ou plusieurs fichiers Excel en un seul fichier par programmation sur le cloud. Vous devrez peut-être générer des rapports basés sur les données disponibles dans plusieurs fichiers, afin de pouvoir les fusionner en un seul fichier dans vos applications Node.js. Dans cet article, vous apprendrez à fusionner plusieurs fichiers Excel en un seul fichier à l’aide d’une API REST dans Node.js.
Les sujets suivants seront traités dans cet article :
- API REST de fusion de fichiers et SDK Node.js
- Fusionner plusieurs fichiers Excel à l’aide de l’API REST dans Node.js
- Fusionner des feuilles Excel spécifiques à l’aide de Node.js
API REST de fusion de fichiers et SDK Node.js
Pour fusionner plusieurs fichiers XLSX, j’utiliserai l’API Node.js SDK of GroupDocs.Merger Cloud. Il vous permet de combiner, diviser, supprimer et réorganiser une seule page ou un ensemble de pages à partir de formats de documents pris en charge tels que Word, Excel, PowerPoint, dessins Visio, PDF et HTML.
Vous pouvez installer GroupDocs.Merger Cloud sur votre application Node.js à l’aide de la commande suivante dans la console :
npm install groupdocs-merger-cloud
Veuillez obtenir votre ID client et votre secret à partir du tableau de bord avant de suivre les étapes mentionnées. Une fois que vous avez votre identifiant et votre secret, ajoutez le code comme indiqué ci-dessous :
global.clientId = "112f0f38-9dae-42d5-b4fc-cc84ae644972";
global.clientSecret = "16ad3fe0bdc39c910f57d2fd48a5d618";
global.myStorage = "";
const configuration = new groupdocs_merger_cloud.Configuration(clientId, clientSecret);
configuration.apiBaseUrl = "https://api.groupdocs.cloud";
Fusionner plusieurs fichiers Excel à l’aide de l’API REST dans Node.js
Vous pouvez combiner deux ou plusieurs fichiers Excel par programme sur le cloud en suivant les étapes simples mentionnées ci-dessous :
- Télécharger the Excel files to the Cloud
- Fusionner Multiple Excel files using Node.js
- Télécharger the merged file
Télécharger les fichiers Excel
Tout d’abord, chargez les fichiers Excel dans le Cloud à l’aide de l’exemple de code ci-dessous :
// construire FileApi
let fileApi = groupdocs_merger_cloud.FileApi.fromConfig(configuration);
let resourcesFolder = 'C:\\Files\\';
fs.readdir(resourcesFolder, (err, files) => {
files.forEach(file => {
// lire les fichiers un par un
fs.readFile(resourcesFolder + file, (err, fileStream) => {
// créer une demande de téléchargement de fichier
let request = new groupdocs_merger_cloud.UploadFileRequest(file, fileStream, myStorage);
// téléverser un fichier
fileApi.uploadFile(request)
.then(function (response) {
console.log(file + " uploaded: " + response.uploaded.length);
})
.catch(function (error) {
console.log("Error: " + error.message);
});
});
});
});
Par conséquent, les fichiers XLSX téléchargés seront disponibles dans la section fichiers de votre tableau de bord sur le cloud.
Fusionner plusieurs fichiers Excel à l’aide de Node.js
Vous pouvez facilement fusionner plusieurs fichiers Excel en un seul fichier par programmation en suivant les étapes mentionnées ci-dessous :
- Créer une instance de DocumentApi
- Créer le premier JoinItem
- Fournissez le chemin du fichier d’entrée pour le premier JoinItem dans FileInfo
- Créer le deuxième JoinItem
- Fournissez le chemin du fichier d’entrée pour le deuxième JoinItem dans FileInfo
- Créer les JoinOptions
- Ajouter une liste séparée par des virgules des éléments de jointure créés
- Définir le chemin du fichier de sortie
- Créer JoinRequest avec JoinOptions
- Obtenez des résultats en appelant la méthode join() de DocumentAPI
L’extrait de code suivant montre comment fusionner plusieurs fichiers Excel à l’aide d’une API REST dans Node.js.
// initialisation de l'API
let documentApi = groupdocs_merger_cloud.DocumentApi.fromKeys(clientId, clientSecret);
// créer le premier élément de jointure
let item1 = new groupdocs_merger_cloud.JoinItem();
item1.fileInfo = new groupdocs_merger_cloud.FileInfo();
item1.fileInfo.filePath = "sample1.xlsx";
// créer un deuxième élément de jointure
let item2 = new groupdocs_merger_cloud.JoinItem();
item2.fileInfo = new groupdocs_merger_cloud.FileInfo();
item2.fileInfo.filePath = "sample2.xlsx";
// créer des options de jointure
let options = new groupdocs_merger_cloud.JoinOptions();
options.joinItems = [item1, item2];
options.outputPath = "Output/joined.xlsx";
// créer une demande d'adhésion
let joinRequest = new groupdocs_merger_cloud.JoinRequest(options);
let result = await documentApi.join(joinRequest);
console.log("Document edited: " + result.path);
Télécharger le fichier fusionné
L’exemple de code ci-dessus enregistrera le fichier Excel fusionné sur le cloud. Vous pouvez le télécharger à l’aide de l’exemple de code suivant :
// initialiser l'API
var fileApi = groupdocs_merger_cloud.FileApi.fromConfig(configuration);
// créer une demande de téléchargement de fichier
let request = new groupdocs_merger_cloud.DownloadFileRequest("Output/joined.xlsx", myStorage);
// télécharger un fichier
let response = await fileApi.downloadFile(request);
// enregistrer le fichier de sortie dans votre répertoire de travail
fs.writeFile("C:\\Files\\joined.xlsx", response, "binary", function (err) { });
console.log(response);
Fusionner des feuilles Excel spécifiques à l’aide de Node.js
Vous pouvez facilement fusionner des feuilles Excel spécifiques de plusieurs fichiers Excel en un seul fichier par programme en suivant les étapes mentionnées ci-dessous :
- Créer une instance de DocumentApi
- Créer le premier JoinItem
- Fournissez le chemin du fichier d’entrée pour le premier JoinItem dans FileInfo
- Créer le deuxième JoinItem
- Fournissez le chemin du fichier d’entrée pour le deuxième JoinItem dans FileInfo
- Créer les JoinOptions
- Définir le numéro de feuille de début et le numéro de feuille de fin
- Définir le chemin du fichier de sortie
- Créer JoinRequest avec JoinOptions
- Obtenez des résultats en appelant la méthode join() de DocumentAPI
L’extrait de code suivant montre comment fusionner des feuilles Excel spécifiques à partir de plusieurs fichiers à l’aide d’une API REST dans Node.js.
// initialisation de l'API
let documentApi = groupdocs_merger_cloud.DocumentApi.fromKeys(clientId, clientSecret);
// créer le premier élément de jointure
let item1 = new groupdocs_merger_cloud.JoinItem();
item1.fileInfo = new groupdocs_merger_cloud.FileInfo();
item1.fileInfo.filePath = "sample1.xlsx";
// créer un deuxième élément de jointure
let item2 = new groupdocs_merger_cloud.JoinItem();
item2.fileInfo = new groupdocs_merger_cloud.FileInfo();
item2.fileInfo.filePath = "sample2.xlsx";
item2.startPageNumber = 3
item2.endPageNumber = 4
// créer des options de jointure
let options = new groupdocs_merger_cloud.JoinOptions();
options.joinItems = [item1, item2];
options.outputPath = "Output/joined.xlsx";
// créer une demande d'adhésion
let joinRequest = new groupdocs_merger_cloud.JoinRequest(options);
let result = await documentApi.join(joinRequest);
console.log("Document edited: " + result.path);
Essayez en ligne
Veuillez essayer l’outil de fusion XLSX en ligne gratuit suivant, qui est développé à l’aide de l’API ci-dessus. https://products.groupdocs.app/merger/xlsx
Conclusion
Dans cet article, vous avez appris à fusionner plusieurs fichiers Excel sur le cloud. Vous avez également appris à fusionner des feuilles Excel spécifiques dans un seul fichier à l’aide d’une API REST dans Node.js. De plus, vous avez appris à télécharger par programmation des fichiers XLSX sur le cloud, puis à télécharger le fichier fusionné à partir du cloud. L’API vous permet également de réorganiser ou de remplacer les pages du document, de modifier l’orientation de la page, de gérer les mots de passe des documents et d’effectuer facilement d’autres manipulations pour tout format de fichier pris en charge. Il fournit également les SDK .NET, Java, PHP, Ruby, Android et Python en tant que membres de la famille de fusion de documents pour l’API Cloud. Vous pouvez en savoir plus sur l’API GroupDocs.Merge Cloud à l’aide de la documentation. Nous fournissons également une section API Reference qui vous permet de visualiser et d’interagir avec nos API directement via le navigateur. En cas d’ambiguïté, n’hésitez pas à nous contacter sur le forum.