Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Aktives Blatt auswählen - VBA Befehl

Aktives Blatt auswählen - VBA Befehl
19.10.2005 18:28:21
simon
Hallo,
bitte helft mir weiter, ich möchte ein Makro schreiben, das auf Knopfdruck die Farbe der Registerkarte,dessen Blatt gerade aktiv ist nach rot einfärbt. da ich insgesamt 30 Blätter habe, möchte ich nicht auf jedem einzelnen blatt ein makro haben mit
Sheets("Blatt1").Select
ActiveWorkbook.Sheets(Blatt1).Tab.ColorIndex = 40
Es müsste eher so was wie
sheets("aktuellesblatt").select
ActiveWorkbook.Sheets(aktuelles blatt).Tab.ColorIndex = 40
Ich möchte also nicht die Registerkarte eines bestimmten blattes anwählen, sondern das Blatt, auf dem ich mich sowieso schon gerade befinde und dessen registerkarte einfärben.
Kann mir da vielleicht jemand weiterhelfen?
Vielen dank für eure hilfe
Anzeige

1
Beitrag zum Forumthread
Beitrag zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Aktives Blatt auswählen - VBA Befehl
19.10.2005 18:54:04
chris
Versuchs mal hiermit.

Sub neu()
ActiveSheet.Tab.ColorIndex = 40
End Sub

Anzeige
;

Forumthreads zu verwandten Themen

Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige
Anzeige

Infobox / Tutorial

Aktives Blatt auswählen und bearbeiten mit VBA


Schritt-für-Schritt-Anleitung

Um das aktive Tabellenblatt in Excel mit VBA auszuwählen und dessen Registerkarte zu färben, kannst du ein einfaches Makro verwenden. Hier sind die Schritte, um dies zu erreichen:

  1. Öffne den Visual Basic for Applications (VBA) Editor:

    • Drücke ALT + F11, um den VBA-Editor zu öffnen.
  2. Erstelle ein neues Modul:

    • Klicke im Menü auf Einfügen und wähle Modul.
  3. Füge den VBA-Code ein:

    • Kopiere und füge den folgenden Code in das Modul ein:
    Sub FarbigeRegisterkarte()
       ActiveSheet.Tab.ColorIndex = 40
    End Sub
  4. Schließe den VBA-Editor:

    • Speichere deine Änderungen und schließe den Editor.
  5. Führe das Makro aus:

    • Gehe zurück zu Excel, drücke ALT + F8, wähle FarbigeRegisterkarte und klicke auf Ausführen.

Nun wird die Registerkarte des aktuell aktiven Blattes in der Farbe Rot (ColorIndex 40) eingefärbt.


Häufige Fehler und Lösungen

  • Fehler: "Das Makro kann nicht ausgeführt werden."

    • Überprüfe, ob die Makros in Excel aktiviert sind. Gehe zu Datei > Optionen > Trust Center > Einstellungen für das Trust Center > Makroeinstellungen und aktiviere die Ausführung von Makros.
  • Fehler: "Das angegebene Blatt kann nicht gefunden werden."

    • Stelle sicher, dass du tatsächlich ein Arbeitsblatt aktiv hast, bevor du das Makro ausführst.

Alternative Methoden

Falls du eine andere Methode zur Auswahl des aktiven Arbeitsblatts verwenden möchtest, kannst du das aktuelle Worksheet auch mit folgendem Code ermitteln:

Dim aktuellesBlatt As Worksheet
Set aktuellesBlatt = ActiveSheet
aktuellesBlatt.Tab.ColorIndex = 40

Diese Methode ermöglicht es dir, das aktive Blatt in einer Variablen zu speichern und später darauf zuzugreifen.


Praktische Beispiele

Hier sind einige Beispiele, wie du das aktive Tabellenblatt in verschiedenen Szenarien verwenden kannst:

  1. Färbe alle aktiven Blätter:

    Sub AlleAktivenBlätterFärben()
       Dim ws As Worksheet
       For Each ws In ActiveWorkbook.Sheets
           ws.Tab.ColorIndex = 40
       Next ws
    End Sub
  2. Färbe nur das aktive Blatt, wenn es einen bestimmten Namen hat:

    Sub FärbeBeiNamen()
       If ActiveSheet.Name = "MeinBlatt" Then
           ActiveSheet.Tab.ColorIndex = 40
       End If
    End Sub

Tipps für Profis

  • Nutze die ThisWorkbook-Eigenschaft, um sicherzustellen, dass dein Code immer auf das Workbook zugreift, in dem sich das Makro befindet.

  • Verwende With...End With, um den Code lesbarer zu gestalten:

    Sub MitWith()
       With ActiveSheet
           .Tab.ColorIndex = 40
           .Name = "NeuerName"
       End With
    End Sub

FAQ: Häufige Fragen

1. Wie kann ich das aktuelle Worksheet ermitteln?
Du kannst das aktuelle Worksheet mit Set aktuellesBlatt = ActiveSheet ermitteln.

2. Was ist der Unterschied zwischen ActiveSheet und ActiveWorkbook?
ActiveSheet bezieht sich auf das aktuell aktive Blatt, während ActiveWorkbook das aktuell geöffnete Workbook bezeichnet.

3. Kann ich die Registerkartenfarbe in RGB setzen?
Ja, dafür kannst du die Color-Eigenschaft verwenden: ActiveSheet.Tab.Color = RGB(255, 0, 0) für Rot.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige