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

Forumthread: Aktives Tabellenblatt als Variable

Aktives Tabellenblatt als Variable
08.02.2006 09:27:09
sanjoe
Hallo Excel Freunde
Wie kann ich das Aktive Tabellenblatt in eine Variable Speichern.
ungefähr so sollte es aussehen
Dim Blatt
'VBA soll sich Aktives Blatt merken
AktivesBlatt = Blatt
Tabelle1.Select
Rows("17:18").Select
Selection.Copy
Blatt.Select 'zurück zum vorherigen Blatt
Rows("19:19").Select
Selection.Insert Shift:=xlDown
für eure Hilfe danke ich im Voraus
Anzeige

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Aktives Tabellenblatt als Variable
08.02.2006 09:38:12
Dr.
Hi,
AktivesBlatt = ActiveSheet.Name
AW: Aktives Tabellenblatt als Variable
08.02.2006 09:41:22
sanjoe
Hi Dr.
Besten Dank für die schnelle Hilfe
AW: Aktives Tabellenblatt als Variable
08.02.2006 09:53:28
sanjoe
Dim AktivesBlatt As Variant
AktivesBlatt = ActiveSheet.Name
Tabelle1.Select
Rows("17:18").Select
Selection.Copy
AktivesBlatt.Select
Rows("19:19").Select
Selection.Insert Shift:=xlDown
funzt leider nicht
Fehlermeldung Objekt erforderlich?
Anzeige
AW: Aktives Tabellenblatt als Variable
08.02.2006 09:55:44
Dr.
Sheets("Tabelle1").Select
und
Sheets(AktivesBlatt).Select
AW: Aktives Tabellenblatt als Variable
08.02.2006 10:28:39
sanjoe
Danke nochmals Dr.
Jetz klappts
AW: Aktives Tabellenblatt als Variable
08.02.2006 10:02:45
PeterW
Hallo,
ein schönes Beispiel, wie man sich mit Select das Leben schwer machen kann. ;-)
Deine Aufgabe wird durch folgenden Zweizeiler erledigt:
Sheets("Tabelle1").Rows("17:18").Copy
Rows("19").Insert
Gruß
Peter
Anzeige
AW: Aktives Tabellenblatt als Variable
08.02.2006 10:31:23
sanjoe
danke Peter
bin halt ein blutiger Anfänger
aber je mehr desto besser gggg
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige

Infobox / Tutorial

Aktives Tabellenblatt in VBA als Variable speichern


Schritt-für-Schritt-Anleitung

Um das aktive Tabellenblatt in VBA als Variable zu speichern, kannst Du die folgenden Schritte ausführen:

  1. Öffne den VBA-Editor (Alt + F11).

  2. Füge ein neues Modul hinzu (Rechtsklick auf "VBAProject" > Einfügen > Modul).

  3. Verwende den folgenden Code, um das aktive Tabellenblatt in eine Variable zu speichern:

    Dim AktivesBlatt As String
    AktivesBlatt = ActiveSheet.Name
  4. Um auf das gespeicherte Tabellenblatt wieder zuzugreifen, kannst Du den folgenden Code verwenden:

    Sheets(AktivesBlatt).Select
  5. Hier ein Beispiel für das Kopieren von Zeilen und Einfügen in ein anderes Blatt:

    Sheets("Tabelle1").Rows("17:18").Copy
    Sheets(AktivesBlatt).Rows("19").Insert Shift:=xlDown

Häufige Fehler und Lösungen

  • Fehlermeldung "Objekt erforderlich": Diese Fehlermeldung kann auftreten, wenn Du versuchst, auf das aktive Tabellenblatt zuzugreifen, ohne es vorher korrekt in einer Variable zu speichern. Stelle sicher, dass Du den Namen des aktuellen Worksheets korrekt in einer Variablen speicherst, bevor Du darauf zugreifst.

  • Nicht das richtige Blatt ausgewählt: Wenn Du ein spezifisches Blatt auswählen möchtest, stelle sicher, dass der Name des Tabellenblattes korrekt geschrieben ist. Verwende die Variable wie folgt:

    Sheets(AktivesBlatt).Select

Alternative Methoden

Wenn Du die Verwendung von Variablen vermeiden möchtest, kannst Du auch direkt auf das aktive Tabellenblatt zugreifen. Zum Beispiel:

ActiveSheet.Rows("17:18").Copy
ActiveSheet.Rows("19").Insert Shift:=xlDown

Diese Methode ist jedoch weniger flexibel, wenn Du das aktive Tabellenblatt an mehreren Stellen im Code verwenden möchtest.


Praktische Beispiele

Hier sind einige praktische Beispiele, wie Du das aktive Tabellenblatt in VBA verwenden kannst:

  1. Aktives Tabellenblatt ermitteln und bearbeiten:

    Dim AktivesBlatt As String
    AktivesBlatt = ActiveSheet.Name
    Sheets(AktivesBlatt).Range("A1").Value = "Neuer Wert"
  2. Kopieren und Einfügen in das aktuelle Blatt:

    Dim AktivesBlatt As String
    AktivesBlatt = ActiveSheet.Name
    Sheets("Tabelle1").Rows("17:18").Copy
    Sheets(AktivesBlatt).Rows("19").Insert Shift:=xlDown

Tipps für Profis

  • Verwende den With-Befehl, um den Code lesbarer zu machen:

    Dim AktivesBlatt As Worksheet
    Set AktivesBlatt = ActiveSheet
    
    With AktivesBlatt
       .Rows("19").Insert Shift:=xlDown
       .Range("A1").Value = "Beispielwert"
    End With
  • Denke daran, dass Du die VBA Worksheet Variable nutzen kannst, um auf verschiedene Tabellenblätter zuzugreifen, ohne ständig den Namen als String verwenden zu müssen.


FAQ: Häufige Fragen

1. Wie kann ich das aktive Tabellenblatt ermitteln?
Du kannst das aktive Tabellenblatt mit ActiveSheet ermitteln. Um den Namen zu speichern, verwende:

Dim AktivesBlatt As String
AktivesBlatt = ActiveSheet.Name

2. Kann ich das aktive Tabellenblatt als Variable verwenden?
Ja, Du kannst das aktive Tabellenblatt als Variable speichern, um es später im Code zu verwenden. Speichere den Namen mit ActiveSheet.Name in einer String-Variable.

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