Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Workbook Worksheets Sheets

Workbook Worksheets Sheets
28.06.2005 09:16:55
Sapphira
Hallo,
kann mir einer sagen, was der Unterschied zwischen:
- Workbook
- WorkSheets
- Sheets
ist?
Danke
Gruß
Sapphira
Anzeige

10
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Workbook Worksheets Sheets
28.06.2005 09:23:06
chris-ka
hi
Workbook =Mappe
worksheets =Sheets = Tabelle
Gruß
Chris
AW: Workbook Worksheets Sheets
28.06.2005 09:33:05
Galenzo
Excel (Application) besteht aus Workbooks.
Ein Workbook (Die Arbeitsmappe) besteht aus Sheets.
Sheets besteht aus Worksheets (Tabellenblätter) und Charts (Diagrammblätter)
Ein Worksheet besteht aus Bereichen (Range)
Ein Bereich wiederum aus Zellen (Cells).
(Wobei auch ein Worksheet aus Zellen besteht.)
Anzeige
AW: Workbook Worksheets Sheets
28.06.2005 09:42:20
Sapphira
Hi,
wenn ich nun Tabellenblätter löschen will, muss ich dann ein Worksheet löschen oder ein Sheet?
Gruß
Sapphira
AW: Workbook Worksheets Sheets
28.06.2005 10:04:42
Galenzo
nicht klar? :-(
Worksheets natürlich....
Viel Erfolg!
AW: Workbook Worksheets Sheets
28.06.2005 10:24:06
Sapphira
Kann ich so ein Blatt löschen machen? Ich will ein bestimmtes Blatt löschen mit dem Namen SheetName.
For Each Sheet In Worksheets
If Sheet.Name = SheetName Then
Sheets(SheetName).Activate
ActiveSheet.Delete
End If
Next
Anzeige
AW: Workbook Worksheets Sheets
28.06.2005 10:49:22
chris-ka
hi

Sub til()
sheetName = "Tabelle1"
For Each blatt In Sheets
If blatt.Name = sheetName Then
Sheets(sheetName).Delete
End If
Next
End Sub

AW: Workbook Worksheets Sheets
28.06.2005 10:51:33
Galenzo
naja, die Schleife ist überflüssig.
Du kannst das Blatt direkt mit dem Namen ansprechen und löschen - dazu mußt du nicht erst alle Blätter durchlaufen und das Blatt suchen. Wenn's das Blatt nicht gibt, wird ein Fehler erzeugt, den du mit "On Erro Resume Next" aber einfach überspringen kannst.
Mein Vorschlag:
Dim strBlattname As String
strBlattname = "Tabelle3"
On Error Resume Next
Worksheets(strBlattname).Delete
Viel Erfolg!
Anzeige
AW: Workbook Worksheets Sheets
28.06.2005 11:07:39
Sapphira
Danke, das Löschen ist nun schneller ... komische.
Nächste Frage:
ich habe eine Funktion geschrieben:

Sub CopyPaste(Name, Rows, RowNumber)
Sheets(Name).Select
ActiveSheet.Range(ActiveSheet.Cells(1, 1), ActiveSheet.Cells(Rows, 7)).Select
Application.CutCopyMode = False
Selection.Copy
Sheets("Zusammenfassung").Select
ActiveSheet.Cells(RowNumber, 1).Select
ActiveSheet.Paste
End Sub

Name = Tabellenname
Rows = Anzahl der Zeilen, die kopiert werden sollen
RowNumber = Zeilennummer, wo die kopierten Daten eingefügt werden sollen
Wie kann ich es machen, dass ich nicht immer "ActiveSheet." davor schreiben muss?
Gruß
Sapphira
Anzeige
AW: Workbook Worksheets Sheets
28.06.2005 11:17:12
Galenzo
logisch - es muß ja auch keine (überflüssige) Schleife mehr durchlaufen werden. Das steigert bei vielen Blättern dann doch sehr die Performance.
Deine Copy/Paste -Anweisung läßt sich auch optimieren:
With Sheets(Name)
.Range(.Cells(1, 1), .Cells(Rows, 7)).Copy Sheets("Zusammenfassung").Cells(RowNumber, 1)
End With
(Freihand geschreiben - ich hoffe es funktioniert)
Viel Erfolg!
Anzeige
AW: Workbook Worksheets Sheets
28.06.2005 11:26:16
Sapphira
Klasse, es funktioniert.
Wenn ich das richtig verstehen, bezieht sich alles bis Copy auf kopieren und danach kommt im Prinzip die Paste-Anweisung, also wohin kopiert werden soll. Schön kompakt.
Vielen Dank. Du hast mir sehr geholfen!
Gruß
Sapphira
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige
Anzeige

Infobox / Tutorial

Unterschied zwischen Workbook, Worksheets und Sheets in Excel


Schritt-für-Schritt-Anleitung

  1. Verstehen der Begriffe:

    • Workbook: Eine Arbeitsmappe, die mehrere Sheets (Blätter) enthalten kann.
    • Sheets: Dies sind die verschiedenen Blätter in einer Arbeitsmappe; sie können Worksheets (Tabellenblätter) oder Charts (Diagramme) sein.
    • Worksheets: Spezifische Blätter, die Daten in Tabellenform darstellen.
  2. Zugriff auf Sheets und Worksheets: Um auf ein bestimmtes Blatt zuzugreifen, kannst du in VBA den folgenden Code verwenden:

    Dim ws As Worksheet
    Set ws = ThisWorkbook.Worksheets("Blattname")
  3. Löschen eines Worksheets: Um ein bestimmtes Worksheet zu löschen, kannst du den folgenden VBA-Code verwenden:

    Dim sheetName As String
    sheetName = "DeinBlattname"
    On Error Resume Next
    ThisWorkbook.Worksheets(sheetName).Delete
    On Error GoTo 0

Häufige Fehler und Lösungen

  • Fehler: "Blatt nicht gefunden"

    • Lösung: Überprüfe den Namen des Blattes; es muss exakt mit dem Namen in der Arbeitsmappe übereinstimmen.
  • Fehler beim Löschen eines Worksheets

    • Lösung: Stelle sicher, dass du die richtige Syntax verwendest und dass das Blatt nicht geschützt ist.

Alternative Methoden

  • Verwendung von For Each Schleifen: Wenn du durch alle Worksheets in einem Workbook iterieren möchtest, kannst du folgenden Code verwenden:

    Dim ws As Worksheet
    For Each ws In ThisWorkbook.Worksheets
      ' Hier kannst du Operationen auf dem Arbeitsblatt ausführen
    Next ws
  • Direktes Ansprechen eines Worksheets: Anstatt eine Schleife zu verwenden, kannst du direkt auf das Worksheet zugreifen:

    ThisWorkbook.Worksheets("Blattname").Range("A1").Value = "Neuer Wert"

Praktische Beispiele

  • Kopieren und Einfügen von Daten zwischen Worksheets: Wenn du Daten von einem Blatt in ein anderes übertragen möchtest, kannst du den folgenden VBA-Code verwenden:

    Sub CopyData()
      Dim sourceSheet As Worksheet
      Dim destSheet As Worksheet
    
      Set sourceSheet = ThisWorkbook.Worksheets("Quelle")
      Set destSheet = ThisWorkbook.Worksheets("Ziel")
    
      sourceSheet.Range("A1:B10").Copy destSheet.Range("A1")
    End Sub

Tipps für Profis

  • Optimierung der Performance: Vermeide unnötige Schleifen, wenn du auf spezifische Worksheets zugreifst. Direkter Zugriff ist meist schneller und effizienter.

  • Verwendung von With-Anweisungen: Mit With kannst du den Code lesbarer und effizienter gestalten:

    With ThisWorkbook.Worksheets("Blattname")
      .Range("A1").Value = "Neuer Wert"
      .Range("B1").Value = "Noch ein Wert"
    End With

FAQ: Häufige Fragen

1. Was ist der Unterschied zwischen Sheets und Worksheets?
Sheets umfasst alle Blätter in einer Arbeitsmappe, während Worksheets nur die Tabellenblätter umfasst.

2. Wie kann ich alle Worksheets in einem Workbook auflisten?
Du kannst eine Schleife verwenden, um alle Namen der Worksheets aufzulisten:

Dim ws As Worksheet
For Each ws In ThisWorkbook.Worksheets
    Debug.Print ws.Name
Next ws

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