Comment modifier les métadonnées d'un classeur en C#

Comment modifier les métadonnées d'un classeur Excel en C#35;

This article was translated from English: Does it need improvement?
Translated
View the article in English

Modifier les métadonnées Excel en C# à l'aide de la propriété Metadata d'IronXL pour définir par programme auteur, titre, mots clés, et d'autres propriétés de document sans Microsoft Interop, permettant l'organisation automatisée des feuilles de calcul et la possibilité d'effectuer des recherches.

Les métadonnées d'une feuille de calcul Excel comprennent des informations sur le titre, auteur, sujet, mots clés, date de création, date de modification, ainsi que d'autres détails pertinents. Les métadonnées fournissent un contexte et aident à organiser et à catégoriser les feuilles de calcul. Il simplifie la recherche et la gestion des fichiers, notamment lors de l'utilisation de plusieurs fichiers tableur. Que vous créiez de nouvelles feuilles de calcul ou chargiez des classeurs existants, IronXL rend la gestion des métadonnées transparente.

Démarrage rapide : Modifier les métadonnées du classeur en une seule étape

Définissez, modifiez et enregistrez des propriétés telles que Title, Auteurou Mots clésà l'aide de l'interface Metadata d'IronXL. Pas besoin d'interopérabilité : démarrez instantanément avec seulement quelques lignes de code C# clair et intuitif.

Nuget IconCommencez dès maintenant à créer des PDF avec NuGet :

  1. Installez IronXL avec le gestionnaire de packages NuGet

    PM > Install-Package IronXL.Excel

  2. Copiez et exécutez cet extrait de code.

    IronXL.WorkBook.Load("input.xlsx").Metadata.Title = "Financial Summary";
    // Then save your update to a new file
    IronXL.WorkBook.Load("input.xlsx").SaveAs("output.xlsx");
  3. Déployez pour tester sur votre environnement de production.

    Commencez à utiliser IronXL dans votre projet dès aujourd'hui grâce à un essai gratuit.
    arrow pointer

Comment modifier les propriétés des métadonnées d'un classeur?

Pour modifier le nom de l'auteur d'un fichier tableur, définissez la propriété Auteuravec la chaîne de données souhaitée. Par exemple, workBook.Metadata.Author = "Your Name" . Les métadonnées disponibles dans la propriété Metadata de la classe WorkBook sont accessibles et peuvent être récupérées. Cette approche fonctionne de manière transparente avec différents types de fichiers spreadsheet, y compris les formats XLSX, XLS et CSV.

Quelles sont les propriétés que je peux modifier par programme?

:path=/static-assets/excel/content-code-examples/how-to/edit-workbook-metadata.cs
using IronXL;
using System;

WorkBook workBook = WorkBook.Load("sample.xlsx");

// Set author
workBook.Metadata.Author = "Your Name";
// Set comments
workBook.Metadata.Comments = "Monthly report";
// Set title
workBook.Metadata.Title = "July";
// Set keywords
workBook.Metadata.Keywords = "Report";

// Read the creation date of the excel file
DateTime? creationDate = workBook.Metadata.Created;

// Read the last printed date of the excel file
DateTime? printDate = workBook.Metadata.LastPrinted;

workBook.SaveAs("editedMetadata.xlsx");
$vbLabelText   $csharpLabel

Pour des scénarios plus complexes, vous pouvez combiner l'édition de métadonnées avec d'autres opérations Excel. Voici un exemple complet qui démontre le traitement par lots de plusieurs fichiers Excel :

using IronXL;
using System;
using System.IO;

public class BatchMetadataProcessor
{
    public static void ProcessFinancialReports(string folderPath)
    {
        // Get all Excel files in the directory
        string[] excelFiles = Directory.GetFiles(folderPath, "*.xlsx");

        foreach (string filePath in excelFiles)
        {
            // Load the workbook
            WorkBook workBook = WorkBook.Load(filePath);

            // Update metadata based on file content
            string fileName = Path.GetFileNameWithoutExtension(filePath);

            // Set consistent metadata across all reports
            workBook.Metadata.Author = "Finance Department";
            workBook.Metadata.Company = "Your Company Name";
            workBook.Metadata.Category = "Financial Reports";

            // Set dynamic metadata based on filename
            if (fileName.Contains("Q1"))
            {
                workBook.Metadata.Title = "Q1 Financial Report";
                workBook.Metadata.Keywords = "Q1, Finance, Quarterly";
            }
            else if (fileName.Contains("Q2"))
            {
                workBook.Metadata.Title = "Q2 Financial Report";
                workBook.Metadata.Keywords = "Q2, Finance, Quarterly";
            }

            // Add timestamp to comments
            workBook.Metadata.Comments = $"Processed on {DateTime.Now:yyyy-MM-dd HH:mm}";

            // Set the subject based on worksheet content
            WorkSheet sheet = workBook.DefaultWorkSheet;
            workBook.Metadata.Subject = $"Report containing {sheet.RowCount} data rows";

            // Save with updated metadata
            string outputPath = Path.Combine(folderPath, "processed", fileName + "_updated.xlsx");
            workBook.SaveAs(outputPath);
        }
    }
}
using IronXL;
using System;
using System.IO;

public class BatchMetadataProcessor
{
    public static void ProcessFinancialReports(string folderPath)
    {
        // Get all Excel files in the directory
        string[] excelFiles = Directory.GetFiles(folderPath, "*.xlsx");

        foreach (string filePath in excelFiles)
        {
            // Load the workbook
            WorkBook workBook = WorkBook.Load(filePath);

            // Update metadata based on file content
            string fileName = Path.GetFileNameWithoutExtension(filePath);

            // Set consistent metadata across all reports
            workBook.Metadata.Author = "Finance Department";
            workBook.Metadata.Company = "Your Company Name";
            workBook.Metadata.Category = "Financial Reports";

            // Set dynamic metadata based on filename
            if (fileName.Contains("Q1"))
            {
                workBook.Metadata.Title = "Q1 Financial Report";
                workBook.Metadata.Keywords = "Q1, Finance, Quarterly";
            }
            else if (fileName.Contains("Q2"))
            {
                workBook.Metadata.Title = "Q2 Financial Report";
                workBook.Metadata.Keywords = "Q2, Finance, Quarterly";
            }

            // Add timestamp to comments
            workBook.Metadata.Comments = $"Processed on {DateTime.Now:yyyy-MM-dd HH:mm}";

            // Set the subject based on worksheet content
            WorkSheet sheet = workBook.DefaultWorkSheet;
            workBook.Metadata.Subject = $"Report containing {sheet.RowCount} data rows";

            // Save with updated metadata
            string outputPath = Path.Combine(folderPath, "processed", fileName + "_updated.xlsx");
            workBook.SaveAs(outputPath);
        }
    }
}
$vbLabelText   $csharpLabel

Qu'advient-il des métadonnées existantes lorsque j'enregistre ?

Lorsque vous enregistrez ou exportez des fichiers Excel à l'aide d'IronXL, toutes les propriétés de métadonnées que vous n'avez pas explicitement modifiées conservent leurs valeurs d'origine. Seules les propriétés que vous avez modifiées seront mises à jour dans le fichier enregistré. Cette approche sélective de la mise à jour permet de s'assurer que les précieuses métadonnées existantes ne sont pas accidentellement perdues au cours du traitement. L'image ci-dessous montre comment les métadonnées apparaissent dans le panneau des propriétés du document d'Excel après avoir été modifiées avec IronXL :

Panneau de propriétés du document Excel montrant les champs de métadonnées édités, y compris l'auteur, le titre, le sujet et les mots-clés après modification avec IronXL

Si vous devez effacer les métadonnées existantes avant de définir de nouvelles valeurs, il vous suffit d'attribuer des chaînes vides ou des valeurs nulles aux propriétés que vous souhaitez réinitialiser. Ceci est particulièrement utile lorsque vous préparez des documents destinés à une distribution externe et que vous souhaitez supprimer les informations internes à l'entreprise.


Quels sont les champs de métadonnées disponibles dans IronXL?

Toutes les propriétés des métadonnées ne peuvent pas être modifiées. Certaines propriétés ne peuvent être que récupérées. Pour une gestion efficace des métadonnées, il est essentiel de comprendre quelles propriétés prennent en charge les différentes opérations. Lorsque vous travaillez avec des classeurs protégés par un mot de passe (password-protected workbooks), les métadonnées peuvent encore être consultées et modifiées après que le classeur a été décrypté avec succès.

Quelles sont les propriétés qui prennent en charge les opérations de lecture et d'écriture ?

Propriété Description du projet Opérations Cas d'utilisation courants
Auteur Nom du créateur du document Définir, Modifier, Récupérer Suivi de la propriété des documents, conformité
Commentaires Notes supplémentaires sur le document Définir, Modifier, Récupérer Notes de version, instructions de traitement
Dernière impression Date/heure de la dernière opération d'impression Définir, Modifier, Récupérer Suivi de l'historique des impressions, pistes d'audit
Mots clés Mots clés consultables Définir, Modifier, Récupérer Catégorisation des documents, optimisation de la recherche
Catégorie Classification des catégories de documents Définir, Modifier, Récupérer Organisation des dossiers, tri par département
Créé Date de création du document Définir, Modifier, Récupérer Suivi de l'âge des documents, décisions d'archivage
ModifiedDate Date de la dernière modification Définir, Modifier, Récupérer Suivi des modifications, contrôle des versions
Sujet Description du projetdu sujet du document Définir, Modifier, Récupérer Résumé du contenu, identification rapide
Titre Titre du document Définir, Modifier, Récupérer Identification des documents, rapports

Quelles sont les propriétés en lecture seule ?

Propriété Description du projet Valeurs typiques
Nom de l'application Nom de l'application qui a créé le fichier "Microsoft Excel", "IronXL.Excel"
Propriétés personnalisées Propriétés personnalisées définies par l'utilisateur Varie selon le document
Société Nom de l'entreprise associée au document Nom de l'organisation dans le système
Manager Nom du gestionnaire à partir des propriétés du document Extrait du fichier original
Modèle Modèle utilisé pour créer le document Nom de fichier modèle ou "Normal"

Pour les opérations avancées sur les métadonnées et la documentation complète de l'API, reportez-vous à la Référence de l'API IronXL. Si vous rencontrez des problèmes avec le traitement des métadonnées, consultez nos guides de dépannage ou explorez les options de licence pour les déploiements en production.

Questions Fréquemment Posées

Comment puis-je modifier les métadonnées d'Excel de manière programmatique en C# ?

IronXL fournit une propriété Metadata simple sur la classe WorkBook qui vous permet d'éditer de manière programmatique les métadonnées d'Excel. Vous pouvez facilement définir des propriétés telles que le titre, l'auteur, le sujet et les mots-clés sans avoir recours à l'interopérabilité de Microsoft. Il suffit de charger votre classeur et d'accéder à workBook.Metadata pour modifier n'importe quelle propriété de métadonnées.

Quelles propriétés de métadonnées puis-je modifier dans un fichier Excel ?

Avec IronXL, vous pouvez modifier diverses propriétés de métadonnées, notamment l'auteur, le titre, le sujet, les mots-clés, la catégorie, les commentaires, le statut, le gestionnaire et la société. La bibliothèque offre également un accès en lecture seule aux dates de création et de modification, ce qui permet une gestion complète des métadonnées pour vos feuilles de calcul.

Dois-je installer Microsoft Office pour modifier les métadonnées d'Excel ?

Non, IronXL ne nécessite pas l'installation de Microsoft Office ou d'Interop. Il s'agit d'une bibliothèque C# autonome qui peut lire, écrire et modifier des fichiers Excel et leurs métadonnées de manière indépendante, ce qui la rend idéale pour les environnements de serveur ou les systèmes sans installation d'Office.

Puis-je traiter par lots les métadonnées de plusieurs fichiers Excel ?

Oui, IronXL prend en charge le traitement par lots des fichiers Excel. Vous pouvez parcourir plusieurs feuilles de calcul dans un répertoire, charger chacune d'entre elles à l'aide de WorkBook.Load(), modifier leurs propriétés de métadonnées et les enregistrer à nouveau. Ceci est particulièrement utile pour organiser de grandes collections de fichiers de feuilles de calcul.

Quels formats de fichiers Excel prennent en charge l'édition des métadonnées ?

Les capacités d'édition de métadonnées d'IronXL fonctionnent de manière transparente avec divers formats de fichiers de feuilles de calcul, notamment les fichiers XLSX, XLS et CSV. La bibliothèque gère en interne les détails spécifiques au format, ce qui vous permet d'utiliser la même interface de propriété de métadonnées quel que soit le type de fichier.

Comment sauvegarder les modifications de métadonnées après édition ?

Après avoir modifié les propriétés des métadonnées à l'aide d'IronXL, il suffit d'appeler la méthode Save() pour mettre à jour le fichier existant ou SaveAs() pour créer un nouveau fichier avec les métadonnées mises à jour. La bibliothèque conserve automatiquement tous les changements de métadonnées ainsi que toutes les modifications des données de la feuille de calcul.

Curtis Chau
Rédacteur technique

Curtis Chau détient un baccalauréat en informatique (Université de Carleton) et se spécialise dans le développement front-end avec expertise en Node.js, TypeScript, JavaScript et React. Passionné par la création d'interfaces utilisateur intuitives et esthétiquement plaisantes, Curtis aime travailler avec des frameworks modernes ...

Lire la suite
Prêt à commencer?
Nuget Téléchargements 1,802,965 | Version : 2025.12 vient de sortir