Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
600to604
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
600to604
600to604
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Tabellenblatt existiert

Tabellenblatt existiert
22.04.2005 09:47:10
Christian
Hallo zusammen
ich möchte eine schleife verwenden dir mir in einer arbeitsmappe prüft ob ein gewisses tabellenblätter existiert und falls ja eine prodzedur aufruft und falls nein nach dem nächsten blatt sucht. kann mir jemand helfen?
vielen dank im voraus und gruss.

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

Betreff
Datum
Anwender
Anzeige
AW: Tabellenblatt existiert
22.04.2005 09:58:09
Michel
Hi,
Diese kleine Schleife wäre, um festzustellen, ob das Blatt existiert
Dim wks As Worksheet
For Each wks in Worksheets
If wks.Name = "DeinBlatt" Then DeineProzedur
Next wks
Aber, woher nimmst du die Namen, um weitere Blätter zu prüfen?
Du kannst höchstens, ohne es eben zu wissen, diese Prod weiterbilden.
For Each wks in Worksheets
If wks.Name = "DeinBlatt" Or wks.Name = "Dein anderes Blatt" Then DeineProzedur
Next wks
cu
Michel
AW: Tabellenblatt existiert
22.04.2005 10:58:52
Christian
Hallo Michel und jan-und-jana
vielen dank für eure antworten.
kurz zur eklärung. ich habe in meiner arbeitsmappe tabellenblätter deren namen aus einem string "unternehmen" und einer id (1-50) zusammengesetzt ist, z.b. unternehmen11. ich möchte nun die daten aus den verschiedenen tabellenblätter in einem tabellenblatt zusammenfassen, d.h. eine schleife schreiben, die mir die entsprechenden werte aus den einzelnen blätter nacheinander in ein blatt "import" schreibt. das problem ist aber nun, dass nicht alle blätter zur gleichen zeit vorhanden sind oder möglicherweise nicht alle existieren, so dass ich zuerst prüfen muss ob ein blatt existiert bevor die werte übertragen werden können.
Anzeige
AW: Tabellenblatt existiert
22.04.2005 10:14:16
jan-und-jana
Hallo Christian,
Hier deine Prozedur:

Sub existTabellenBlatt(strTabellenblattName As String)
Dim objWorksheet As Worksheet
For each objWorksheet In ThisWorkbook.Worksheets
If objWorksheet.Name = strTabellenblatt THen
'das Tabellen Blatt esistiert, tu was du willst
Else
'das Tabellen blatt existiert nicht, tu was du willst
End If
Next objWorksheet
Set objWorksheet = Nothing'Speicher aufräumen
End Sub

Zur Info die Worksheets-Eigenschaft entspricht einer Collection mit allen Worksheet Objekten. diese wird iterativ durchlaufen und man referenziert bei idem Schleifen-Durchlauf das nächste Worksheet-Objekt.
Ich würde die oben gezeigte Prozedur etwas anpassen, so dass sie öffters verwendbar ist.

Function existTabellenBlatt(strTabellenblattName As String) As Boolean
Dim boolRetrun As Boolean
Dim objWorksheet As Worksheet
boolReturn = false
For each objWorksheet In ThisWorkbook.Worksheets
If objWorksheet.Name = strTabellenblatt THen
'das Tabellen Blatt esistiert, tu was du willst
boolReturn = true
Exit For
End If
Next objWorksheet
existTabellenBlatt = boolReturn
Set objWorksheet = Nothing 'Speicher aufräumen
End Function

Na ja das kannst du halten wie du willst.
Gruß, jan-und-jana
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige