title image


Smiley Re: Via VBA auslesen wie viel Sheets eine Tabelle hat? (und mehr...)
hallo Elektroman,



beim Array würde ich bleiben, weil es eine sehr schnelle und übersichtliche Variante ist. Das Array muss mit den Ländern gefüllt werden, bei mir stehen die im Bereich C47 bis c50



Dann sähe Dein Code also so aus:



Sub pruefen()

Dim Laender(3) As String ' Array mit 4 Elementen (0-3)

Dim ok As Boolean



Worksheets("Notes").Activate ' sicher ist sicher...



' Array füllen, die Länder stehen in C47 - C50

For i = 0 To 3

Laender(i) = Range("C" & i + 47).Value '1.Arrayelement hat die Nummer 0!

Next i



For j = 0 To UBound(Laender)

ok = False

For i = 1 To Worksheets.Count

If Worksheets(i).Name = Laender(j) Then

ok = True

End If

Next i

If ok = False Then

' ein neues via Copie/Past erschaffen.

End If

Next j

End Sub

******************************************************



Eleganter (und vor allem schneller!) wäre es, wenn auch die Namen der Worksheets in einem Array wären. (Um nicht jedesmal die Anzahl anpassen zu müssen, haben beide Arrays 101 Elemente und im Code wird das Ende abgefragt, indem beim ersten leeren Eintrag die Schleifenverarbeitung abgebrochen wird).



Sub pruefen2()

Dim Laender(100) As String ' Array der Länder

Dim Sheets(100) As String ' Array der vorh. Worksheets

Dim ok As Boolean



Worksheets("Notes").Activate 'sicher ist sicher...



' Arrays füllen, die Länder stehen in C47 - C50

For i = 0 To 3

Laender(i) = Range("C" & i + 47).Value '1.Arrayelement hat die Nummer 0!

Next i

For i = 0 To Worksheets.Count - 1

Sheets(i) = Worksheets(i + 1).Name

Next i





For j = 0 To UBound(Laender)

If Laender(j) = "" Then Exit For ' Ausstieg nach letztem Land

ok = False

For i = 0 To UBound(Sheets)

If Sheets(i) = "" Then Exit For ' Ausstieg nach letztem Sheetnamen

If Sheets(i) = Laender(j) Then

ok = True

End If

Next i

If ok = False Then

' ein neues via Copie/Past erschaffen.

End If

Next j



End Sub





viele Grüße. Heide





geschrieben von

Login

E-Mail:
  

Passwort:
  

Beitrag anfügen

Symbol:
 
 
 
 
 
 
 
 
 
 
 
 
 

Überschrift: