Gewusst wie: Lokalisieren von Excel-Projektmappen

Aktualisiert: November 2007

Betrifft

Die Informationen in diesem Thema gelten nur für die angegebenen Projekte und Versionen von Visual Studio Tools for Office von Microsoft Office.

Projekttyp

  • Projekte auf Dokumentebene

Microsoft Office-Version

  • Excel 2003

  • Excel 2007

Weitere Informationen finden Sie unter Verfügbare Features nach Anwendung und Projekttyp.

Die Lokalisierung besteht hauptsächlich in der Übersetzung der Benutzeroberfläche Ihrer Anwendung. Anstelle der festen Programmierung der Zeichenfolgen in der Anwendung sollten Sie die Zeichenfolgen in einer separaten Datei speichern. Sie können Zeichenfolgen für Benutzeroberflächenelemente von Microsoft Office Excel in der standardmäßigen Assemblyressourcendatei speichern. Die Datei trägt in Visual Basic-Projekten den Namen MyResources.resx und in C#-Projekten den Namen Resources.resx. Kopien der Ressourcendatei können dann in verschiedene Sprachen übersetzt werden.

Hinweis:

Auf Ihrem Computer werden möglicherweise andere Namen oder Speicherorte für die Benutzeroberflächenelemente von Visual Studio, die in den folgenden Anweisungen aufgeführt sind, angezeigt. Die von Ihnen verwendete Visual Studio-Edition und die Einstellungen legen diese Elemente fest. Weitere Informationen finden Sie unter Visual Studio-Einstellungen.

Speichern von Text in einer Ressourcendatei

So fügen Sie einer Ressourcendatei Text hinzu

  1. Öffnen Sie das Excel-Projekt, das Sie lokalisieren möchten.

  2. Wählen Sie im Menü Projekt die Option Eigenschaften von <Projektname> aus.

    Der Projekt-Designer wird geöffnet.

  3. Klicken Sie im Projekt-Designer auf Ressourcen, um den Bereich Ressourcen zu öffnen.

  4. Wählen Sie im Kombinationsfeld Kategorien die Option Zeichenfolgen aus.

  5. Fügen Sie für jede Zeichenfolge, die Sie lokalisieren möchten, der Spalte Name einen eindeutigen Bezeichner und der Spalte Wert den zu lokalisierenden Text hinzu. Beispiel:

    Name

    Wert

    ListCreateUnscheduledOrder

    create unscheduled order

    Hinweis:

    Sie können die Spalte Kommentar verwenden, um Hinweise oder Anweisungen für den Übersetzer hinzuzufügen.

Abrufen von Text aus einer Ressourcendatei

Nachdem Sie der Ressourcendatei alle Zeichenfolgen hinzugefügt haben, können die Zeichenfolgen zur Laufzeit geladen werden.

So fügen Sie einer Zelle unter Verwendung einer Ressourcendatei einen Wert hinzu.

  1. Fügen Sie im Startup-Ereignishandler von Sheet1 ein NamedRange-Steuerelement zu Zelle A1 hinzu.

    Dim namedRange1 As Microsoft.Office.Tools.Excel.NamedRange = _
        Me.Controls.AddNamedRange(Me.Range("A1"), "NamedRange1")
    
    Microsoft.Office.Tools.Excel.NamedRange namedRange1 =
        this.Controls.AddNamedRange(this.Range["A1", missing], "namedRange1");
    
  2. Weisen Sie einen Wert aus der Ressourcendatei zu.

    namedRange1.Value2 = My.Resources.ListCreateUnscheduledOrder
    
    namedRange1.Value2 = Properties.Resources.ListCreateUnscheduledOrder;
    

Lokalisieren der Ressourcendatei

So lokalisieren Sie eine Ressourcendatei

  1. Kopieren Sie die Ressourcendatei, und fügen Sie den Kulturcode der Zielsprache in den Dateinamen ein. Um beispielsweise die Datei für die Lokalisierung ins Japanische zu erstellen, fertigen Sie eine Kopie der Datei Resources.resx an, und benennen Sie sie in Resources.ja.resx um.

  2. Lassen Sie die Ressourcendatei in die Sprachen übersetzen, die Sie unterstützen möchten. Lassen Sie zum Beispiel die Zeichenfolgen in Resources.ja.resx ins Japanische übersetzen.

  3. Fügen Sie dem Projekt die übersetzten Ressourcendateien hinzu, sodass das Projektsystem die Ressourcendateien zu Satellitenassemblys kompilieren kann.

Laden von Ressourcen auf Grundlage der Sprache der Office-Benutzeroberfläche

Microsoft .NET Framework lädt Ressourcen auf Grundlage der Sprache der Benutzeroberfläche von Microsoft Windows. Office-basierte Projektmappen werden im Allgemeinen jedoch so geschrieben, dass die Ressourcen auf Grundlage der Sprache der Office-Benutzeroberfläche geladen werden. Das erste unten stehende Beispiel zeigt, wie Sie unabhängig von der installierten Office-Version die zur Sprache der Office-Benutzeroberfläche passenden Ressourcen laden. Das zweite unten stehende Beispiel zeigt, wie Sie sowohl die Sprache der Office-Benutzeroberfläche als auch das Standardverhalten von Microsoft .NET Framework überschreiben.

So laden Sie Ressourcen auf Grundlage von Office (mehrere Sprachversionen von Office)

  • Fügen Sie dem Startup-Ereignishandler der Arbeitsmappe und der einzelnen Arbeitsblätter folgenden Code hinzu.

    System.Threading.Thread.CurrentThread.CurrentUICulture = _
        New System.Globalization.CultureInfo( _
            Application.LanguageSettings.LanguageID( _
                Office.MsoAppLanguageID.msoLanguageIDUI))
    
    System.Threading.Thread.CurrentThread.CurrentUICulture =
        new System.Globalization.CultureInfo(
            Application.LanguageSettings.get_LanguageID(
                Office.MsoAppLanguageID.msoLanguageIDUI));
    

Wenn nur eine Sprachversion von Office installiert ist, können Sie das Laden bestimmter Ressourcen erzwingen, indem Sie die CurrentCulture-Eigenschaft des CultureInfo-Objekts (oder des aktuellen Threads) auf die entsprechende Kultur-ID festlegen. Eine solche Festlegung ist u. U. beim Debuggen von Vorteil und kann außerdem als Teil von benutzerdefiniertem Code verwendet werden, der die Auswahl der zu ladenden Ressourcen durch die Benutzer ermöglicht.

So laden Sie Ressourcen auf Grundlage von Office (unter Verwendung der Kultur-ID)

  • Fügen Sie dem Startup-Ereignishandler der Arbeitsmappe und der einzelnen Arbeitsblätter folgenden Code hinzu. In diesem Beispiel wird die Kultur-ID für Deutsch (Deutschland) übergeben. Eine Liste der Kultur-IDs finden Sie unter CultureInfo.

    System.Threading.Thread.CurrentThread.CurrentUICulture = _
        New System.Globalization.CultureInfo("de")
    
    System.Threading.Thread.CurrentThread.CurrentUICulture = 
        new System.Globalization.CultureInfo("de");
    

Lokalisieren von benutzerdefinierten Steuerelementen

Sie können dem Aktionsbereich von Visual Studio Tools for Office-Projektmappen benutzerdefinierte Steuerelemente hinzufügen. Die Lokalisierung eines Benutzersteuerelements oder eines Aktionsbereich-Steuerelements erfolgt auf dieselbe Art und Weise wie die Lokalisierung eines Windows Form. Weitere Informationen finden Sie unter Exemplarische Vorgehensweise: Lokalisieren von Windows Forms.

So aktivieren Sie die Lokalisierung eines benutzerdefinierten Steuerelements

  1. Klicken Sie im Menü Ansicht auf Eigenschaftenfenster.

  2. Wählen Sie im Designer das Benutzersteuerelement oder das Aktionsbereich-Steuerelement aus, und legen Sie die Localizable-Eigenschaft auf true fest.

Siehe auch

Aufgaben

Exemplarische Vorgehensweise: Lokalisieren von Windows Forms

Konzepte

Globalisierung und Lokalisierung von Office-Projektmappen

Weitere Ressourcen

Globalisieren und Lokalisieren von Anwendungen

Lokalisieren von Anwendungen