Wie man Metadaten von Arbeitsmappen in C# ändert

So bearbeiten Sie die Metadaten einer Excel-Arbeitsmappe in C

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

Bearbeiten Sie Excel-Metadaten in C# mithilfe der Metadata-Eigenschaft von IronXL, um author, title, keywords und andere Dokumenteigenschaften programmgesteuert ohne Microsoft Interop festzulegen, was eine automatisierte Organisation und Durchsuchbarkeit von Tabellenkalkulationen ermöglicht.

Die Metadaten für eine Excel-Tabelle enthalten Informationen zu title, author, subject, keywords, creation date, modification date und anderen relevanten Details. Metadaten liefern Kontext und helfen bei der Organisation und Kategorisierung von Tabellenkalkulationen. Sie vereinfacht die Dateisuche und -verwaltung, insbesondere bei der Arbeit mit mehreren Tabellenkalkulationsdateien. Ganz gleich, ob Sie neue Tabellenkalkulationen erstellen oder vorhandene Arbeitsmappen laden – IronXL sorgt für eine nahtlose Verwaltung von Metadaten.

Schnellstart: Bearbeiten Sie die Metadaten der Arbeitsmappe in einem einfachen Schritt

Legen Sie Eigenschaften wie Title, Author oder Keywords über die Metadaten-Schnittstelle von IronXL fest, ändern Sie sie und speichern Sie sie. Keine Interop erforderlich – legen Sie sofort los mit nur wenigen Zeilen übersichtlichem, intuitivem C#-Code.

  1. Installieren Sie IronXL mit NuGet Package Manager

    PM > Install-Package IronXL.Excel
  2. Kopieren Sie diesen Codeausschnitt und führen Sie ihn aus.

    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. Bereitstellen zum Testen in Ihrer Live-Umgebung

    Beginnen Sie noch heute, IronXL in Ihrem Projekt zu verwenden, mit einer kostenlosen Testversion

    arrow pointer

Wie bearbeite ich die Metadaten-Eigenschaften einer Arbeitsmappe?

Um den Autorennamen einer Tabellenkalkulationsdatei zu bearbeiten, setzen Sie die Eigenschaft Author auf die gewünschte Zeichenfolge. Zum Beispiel workBook.Metadata.Author = "Your Name". Auf die Metadateninformationen, die in der Eigenschaft Metadata der Klasse WorkBook verfügbar sind, kann zugegriffen und diese können abgerufen werden. Dieser Ansatz funktioniert nahtlos mit verschiedenen Tabellenkalkulationsdateiformaten, darunter die Formate XLSX, XLS und CSV.

Welche Eigenschaften kann ich programmgesteuert ändern?

: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");
Imports IronXL
Imports System

Private workBook As 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
Dim creationDate? As DateTime = workBook.Metadata.Created

' Read the last printed date of the excel file
Dim printDate? As DateTime = workBook.Metadata.LastPrinted

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

Für komplexere Szenarien können Sie die Bearbeitung von Metadaten mit anderen Excel-Funktionen kombinieren. Hier ist ein umfassendes Beispiel, das die Stapelverarbeitung mehrerer Excel-Dateien veranschaulicht:

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.Com/pany = "Your Company Name";
            workBook.Metadata.Category = "Financial Reports";

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

            // Add timestamp to comments
            workBook.Metadata.Com/ments = $"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.Com/bine(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.Com/pany = "Your Company Name";
            workBook.Metadata.Category = "Financial Reports";

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

            // Add timestamp to comments
            workBook.Metadata.Com/ments = $"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.Com/bine(folderPath, "processed", fileName + "_updated.xlsx");
            workBook.SaveAs(outputPath);
        }
    }
}
Imports IronXL
Imports System
Imports System.IO

Public Class BatchMetadataProcessor
    Public Shared Sub ProcessFinancialReports(folderPath As String)
        ' Get all Excel files in the directory
        Dim excelFiles As String() = Directory.GetFiles(folderPath, "*.xlsx")

        For Each filePath As String In excelFiles
            ' Load the workbook
            Dim workBook As WorkBook = WorkBook.Load(filePath)

            ' Update metadata based on file content
            Dim fileName As String = 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") Then
                workBook.Metadata.Title = "Q1 Financial Report"
                workBook.Metadata.Keywords = "Q1, Finance, Quarterly"
            ElseIf fileName.Contains("Q2") Then
                workBook.Metadata.Title = "Q2 Financial Report"
                workBook.Metadata.Keywords = "Q2, Finance, Quarterly"
            End If

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

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

            ' Save with updated metadata
            Dim outputPath As String = Path.Combine(folderPath, "processed", fileName & "_updated.xlsx")
            workBook.SaveAs(outputPath)
        Next
    End Sub
End Class
$vbLabelText   $csharpLabel

Was passiert mit den vorhandenen Metadaten, wenn ich speichere?

Wenn Sie Excel-Dateien using IronXL speichern oder exportieren, behalten alle Metadaten-Eigenschaften, die Sie nicht explizit geändert haben, ihre ursprünglichen Werte bei. Nur die von Ihnen geänderten Eigenschaften werden in der gespeicherten Datei aktualisiert. Dieser selektive Aktualisierungsansatz stellt sicher, dass wertvolle vorhandene Metadaten während der Verarbeitung nicht versehentlich verloren gehen. Das folgende Bild zeigt, wie Metadaten im Dokumenteneigenschaftenfenster von Excel angezeigt werden, nachdem sie mit IronXL bearbeitet wurden:

Excel-Dokumenteneigenschaftenfenster mit bearbeiteten Metadatenfeldern wie Autor, Titel, Betreff und Stichwörter nach der Bearbeitung mit IronXL

Wenn Sie vorhandene Metadaten löschen müssen, bevor Sie neue Werte festlegen, weisen Sie den Eigenschaften, die Sie zurücksetzen möchten, einfach leere Zeichenfolgen oder Nullwerte zu. Dies ist besonders nützlich bei der Vorbereitung von Dokumenten für die externe Verbreitung, bei der Sie interne Unternehmensinformationen entfernen möchten.


Welche Metadatenfelder sind in IronXL verfügbar?

Nicht alle Metadaten-Eigenschaften können bearbeitet werden. Einige Eigenschaften können nur abgerufen werden. Für ein effektives Metadatenmanagement ist es entscheidend zu verstehen, welche Eigenschaften verschiedene Operationen unterstützen. Bei der Arbeit mit passwortgeschützten Arbeitsmappen können Metadaten auch nach erfolgreicher Entschlüsselung der Arbeitsmappe weiterhin abgerufen und geändert werden.

Welche Eigenschaften unterstützen Lese- und Schreibvorgänge?

Eigenschaft Beschreibung Betrieb Häufige Anwendungsfälle
Author Name des Dokumentautors Festlegen, Ändern, Abrufen Verfolgung von Dokumentenverantwortung und Compliance
Comments Zusätzliche Hinweise zum Dokument Festlegen, Ändern, Abrufen Versionshinweise, Verarbeitungsanweisungen
LastPrinted Datum/Uhrzeit des letzten PRINT-Vorgangs Festlegen, Ändern, Abrufen Verfolgung des Druckverlaufs, Prüfpfade
Keywords Durchsuchbare Schlüsselwörter Festlegen, Ändern, Abrufen Dokumentenkategorisierung, Suchoptimierung
Category Klassifizierung der Dokumentkategorien Festlegen, Ändern, Abrufen Dateiorganisation, Sortierung nach Abteilungen
Created Erstellungsdatum des Dokuments Festlegen, Ändern, Abrufen Verfolgung des Dokumentalters, Archivierungsentscheidungen
ModifiedDate Datum der letzten Änderung Festlegen, Ändern, Abrufen Änderungsverfolgung, Versionskontrolle
Subject Beschreibung des Dokumentthemas Festlegen, Ändern, Abrufen Zusammenfassung des Inhalts, schnelle Identifizierung
Title Dokumenttitel Festlegen, Ändern, Abrufen Dokumentidentifikation, Berichterstellung

Welche Eigenschaften sind schreibgeschützt?

Eigenschaft Beschreibung Typische Werte
ApplicationName Name der Anwendung, mit der die Datei erstellt wurde "Microsoft Excel", "IronXL"
CustomProperties Benutzerdefinierte Eigenschaften Je nach Dokument unterschiedlich
Company Mit dem Dokument verbundener Firmenname Organisationsname aus dem System
Manager Name des Managers aus den Dokumenteigenschaften Aus der Originaldatei abgerufen
Template Zur Erstellung des Dokuments verwendete Vorlage Vorlagendateiname oder "Normal"

Informationen zu erweiterten Metadatenoperationen und die vollständige API-Dokumentation finden Sie in der IronXL-API Referenz. Sollten Sie Probleme mit der Verarbeitung von Metadaten haben, lesen Sie unsere Anleitungen zur Fehlerbehebung oder informieren Sie sich über Lizenzoptionen für den produktiven Einsatz.

Häufig gestellte Fragen

Wie kann ich Excel-Metadaten programmatisch in C# bearbeiten?

IronXL bietet eine einfache Metadaten-Eigenschaft für die WorkBook-Klasse, mit der Sie Excel-Metadaten programmatisch bearbeiten können. Sie können Eigenschaften wie Titel, Autor, Betreff und Schlüsselwörter einfach einstellen, ohne dass Sie Microsoft Interop benötigen. Laden Sie einfach Ihre Arbeitsmappe und greifen Sie auf workBook.Metadata zu, um eine beliebige Metadateneigenschaft zu ändern.

Welche Metadateneigenschaften kann ich in einer Excel-Datei ändern?

Mit IronXL können Sie verschiedene Metadateneigenschaften wie Autor, Titel, Thema, Schlüsselwörter, Kategorie, Kommentare, Status, Manager und Unternehmen ändern. Die Bibliothek bietet außerdem Lesezugriff auf das Erstellungs- und Änderungsdatum und ermöglicht so eine umfassende Metadatenverwaltung für Ihre Tabellenkalkulationen.

Muss ich Microsoft Office installiert haben, um Excel-Metadaten zu bearbeiten?

Nein, IronXL erfordert nicht die Installation von Microsoft Office oder Interop. Es handelt sich um eine eigenständige C#-Bibliothek, die Excel-Dateien und deren Metadaten unabhängig lesen, schreiben und ändern kann, was sie ideal für Serverumgebungen oder Systeme ohne Office-Installation macht.

Kann ich Metadaten für mehrere Excel-Dateien im Stapel verarbeiten?

Ja, IronXL unterstützt die Stapelverarbeitung von Excel-Dateien. Sie können mehrere Tabellenblätter in einem Verzeichnis durchlaufen, jedes einzelne mit WorkBook.Load() laden, ihre Metadateneigenschaften ändern und sie wieder speichern. Dies ist besonders nützlich, um große Sammlungen von Tabellenkalkulationsdateien zu organisieren.

Welche Excel-Dateiformate unterstützen die Bearbeitung von Metadaten?

Die Metadaten-Bearbeitungsfunktionen von IronXL funktionieren nahtlos mit verschiedenen Tabellenkalkulationsdateiformaten, darunter XLSX-, XLS- und CSV-Dateien. Die Bibliothek behandelt die formatspezifischen Details intern, so dass Sie unabhängig vom Dateityp dieselbe Schnittstelle für Metadateneigenschaften verwenden können.

Wie speichere ich die Änderungen an den Metadaten nach der Bearbeitung?

Nach der Änderung von Metadateneigenschaften mit IronXL rufen Sie einfach die Methode Save() auf, um die vorhandene Datei zu aktualisieren, oder SaveAs(), um eine neue Datei mit den aktualisierten Metadaten zu erstellen. Die Bibliothek speichert automatisch alle Metadatenänderungen zusammen mit den Änderungen der Tabellenkalkulationsdaten.

Curtis Chau
Technischer Autor

Curtis Chau hat einen Bachelor-Abschluss in Informatik von der Carleton University und ist spezialisiert auf Frontend-Entwicklung mit Expertise in Node.js, TypeScript, JavaScript und React. Leidenschaftlich widmet er sich der Erstellung intuitiver und ästhetisch ansprechender Benutzerschnittstellen und arbeitet gerne mit modernen Frameworks sowie der Erstellung gut strukturierter, optisch ansprechender ...

Weiterlesen
Bereit anzufangen?
Nuget Downloads 2,052,917 | Version: 2026.6 just released
Still Scrolling Icon

Scrollst du immer noch?

Sie brauchen schnell einen Beweis? PM > Install-Package IronXL.Excel
Führen Sie ein Beispiel aus und sehen Sie zu, wie Ihre Daten zu einer Tabellenkalkulation werden.