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

Forumthread: activeSheet.Name auslesen

activeSheet.Name auslesen
01.08.2006 18:28:00
Anton
Hallo Leute,
ich möchte den Tabellennamen auslesen und daraus einen Dateinamen machen.
Beispiel:
die Tabelle heißt: 19.05.2006
die datei soll heißen: "20060519_performance kabel -ausgewertet.xls"
folgendes habe ich versucht:
Datum2 = Mid(ActiveSheet.Name.value), 7, 4) & Mid(ActiveSheet.Name.value), 4, 2) & Left(ActiveSheet.Name.value), 2)
Dateiname = Datum2& "_performance kabel -ausgewertet.xls"
ActiveSheet.Name erkennt Excel, mag es aber nicht.
Was mache ich da falsch?
Es dankt und grüßt
Anton
Anzeige

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: activeSheet.Name auslesen
01.08.2006 18:33:22
Dierk
Hallo Anton,
als Krücke hätte ich folgendes anzubieten (hat bei mir funktioniert);:
a = ActiveSheet.Name
Datum2 = Mid((a), 7, 4) & Mid((a), 4, 2) & Left((a), 2)
Gruss Dierk
AW: activeSheet.Name auslesen
01.08.2006 18:34:22
Hugo
Hallo,
Option Explicit

Sub test()
Dim strName As String
strName = Format(ActiveSheet.Name, "YYYYMMDD") & "_performance kabel -ausgewertet.xls"
MsgBox strName
End Sub

Hugo
Anzeige
herzlichen Dank
01.08.2006 18:44:48
Anton
Hallo Dierk, Hallo Hugo,
vielen Dank für Eure schnellen Antworten.
Servus,
Anton
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige
Anzeige

Infobox / Tutorial

Aktuellen Namen des aktiven Arbeitsblatts in Excel VBA auslesen


Schritt-für-Schritt-Anleitung

  1. Öffne den VBA-Editor in Excel, indem Du Alt + F11 drückst.

  2. Erstelle ein neues Modul:

    • Klicke im Menü auf "Einfügen" und wähle "Modul".
  3. Füge den folgenden Code ein, um den Namen des aktiven Arbeitsblatts auszulesen:

    Sub GetActiveSheetName()
       Dim activeSheetName As String
       activeSheetName = ActiveSheet.Name
       MsgBox "Der Name des aktiven Arbeitsblatts ist: " & activeSheetName
    End Sub
  4. Führe das Makro aus, indem Du F5 drückst oder auf "Ausführen" klickst.

  5. Überprüfe die Ausgabe in einer MessageBox, die den Namen des aktiven Arbeitsblatts anzeigt.


Häufige Fehler und Lösungen

  • Fehler: "Objekt erforderlich"

    • Lösung: Überprüfe, ob Du tatsächlich ein Arbeitsblatt aktiv hast. Dieser Fehler tritt auf, wenn kein Arbeitsblatt ausgewählt ist.
  • Fehler: "Typen unverträglich"

    • Lösung: Stelle sicher, dass Du ActiveSheet.Name korrekt schreibst. Der Code ActiveSheet.Name.Value ist nicht korrekt; es sollte einfach ActiveSheet.Name verwendet werden.
  • Namen des Arbeitsblatts nicht korrekt formatieren:

    • Stelle sicher, dass Du den Namen des Arbeitsblatts mit den richtigen VBA-Funktionen manipulieren kannst, wie in der Schritt-für-Schritt-Anleitung beschrieben.

Alternative Methoden

  • Direktes Auslesen in einer Variablen:

    Anstelle eine MessageBox zu verwenden, kannst Du den Namen des aktiven Arbeitsblatts auch in einer Variablen speichern und später verwenden:

    Dim workbookName As String
    workbookName = ActiveSheet.Name
  • Namen in eine Zelle schreiben:

    Du kannst den Namen des aktiven Arbeitsblatts auch direkt in eine Zelle einer anderen Tabelle schreiben:

    Sheets("Tabelle1").Cells(1, 1).Value = ActiveSheet.Name

Praktische Beispiele

  • Beispiel 1: Dateinamen basierend auf dem Arbeitsblattnamen:

    Wenn Du den Namen des aktiven Arbeitsblatts in einen Dateinamen umwandeln möchtest, kannst Du folgenden Code verwenden:

    Sub CreateFileName()
       Dim dateiname As String
       Dim Datum2 As String
       Datum2 = Mid(ActiveSheet.Name, 7, 4) & Mid(ActiveSheet.Name, 4, 2) & Left(ActiveSheet.Name, 2)
       dateiname = Datum2 & "_performance kabel -ausgewertet.xls"
       MsgBox "Der Dateiname ist: " & dateiname
    End Sub
  • Beispiel 2: Aktivieren und Ausgeben des aktiven Arbeitsblatts:

    Sub ShowActiveWorksheetInfo()
       Dim ws As Worksheet
       Set ws = ActiveSheet
       MsgBox "Aktives Arbeitsblatt: " & ws.Name & vbNewLine & "Anzahl der Zeilen: " & ws.Rows.Count
    End Sub

Tipps für Profis

  • Nutze Option Explicit am Anfang Deiner Module, um sicherzustellen, dass alle Variablen deklariert sind und um mögliche Fehler zu vermeiden.
  • Überlege, den Namen des aktiven Arbeitsblatts vor der Verwendung zu überprüfen, um sicherzustellen, dass es nicht leer ist oder unerwartete Zeichen enthält.
  • Experimentiere mit weiteren VBA-Funktionen, um die Flexibilität und Effizienz Deiner Skripte zu erhöhen, z.B. durch Verknüpfungen mit Datenbanken oder externen Anwendungen.

FAQ: Häufige Fragen

1. Wie kann ich den Namen des aktiven Arbeitsblatts in eine Datei speichern?
Du kannst den Namen des aktiven Arbeitsblatts verwenden, um einen Dateinamen zu generieren, wie im Beispiel "CreateFileName" beschrieben.

2. Was ist der Unterschied zwischen ActiveSheet und Worksheets?
ActiveSheet bezieht sich immer auf das derzeit ausgewählte Arbeitsblatt, während Worksheets eine Sammlung aller Arbeitsblätter in der Arbeitsmappe darstellt. Du kannst auf ein bestimmtes Arbeitsblatt über Worksheets("Name") zugreifen.

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