HERBERS
Excel-Forum
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Forumbeitrag
Excel-Version des Fragestellers:
2016
Erfahrungslevel des Fragestellers:
Excel gut - VBA bescheiden
Kuwer
24.02.2025 09:49:46
AW: Problem mit Schleife und Select Case
Hallo Tobias,

vergleiche doch mal mit diesem Code: https://www.herber.de/forum/messages/2006947.html
Achte auf den Bereich vor End Sub . ;-)

Gruß, Uwe
Als Antwort auf diesen Beitrag
Tobi_84
24.02.2025 06:54:47
AW: Problem mit Schleife und Select Case
Moin,

wenn man denkt man hat ein Problem gelöst und man etwas funktionierendes wieder kaputt macht...
Für die "anzahlGESAMT"-Schleife wollte ich lediglich die "Select Case" Abfrage einbauen, bin aber kläglich gescheitert.
Kann bitte jemand helfen.

Gruß Tobias



Dim EinzelneWorte() As String, Text As String
Dim i As Integer, lastRow As Integer, intRow As Integer, intLastRow As Integer
Dim cell As Range, adr5 As Range, adr4 As Range, rws As Range
Dim anzahlGESAMT As Long, Anzahl As Long, GESAMT As Long


' Tabelle auszählen
Set adr5 = Worksheets("EplSheet").Range("G2:G500" & Cells(Rows.Count, 1).End(xlUp).Row)
anzahlGESAMT = Application.WorksheetFunction.CountA(adr5)


' Tabelle auszählen '(?) Versuch für die "Select Case" Schleife
Set adr6 = Worksheets("EplSheet").Range("K2:K500" & Cells(Rows.Count, 1).End(xlUp).Row)
GESAMT = Application.WorksheetFunction.CountA(adr6)


'ausser dem Lesen von Werten passiert alles auf dem Blatt "Druck"
With Worksheets("Druck")

.Range("B1:B100").ClearContents
.Range("B1:B100") = "0"


For GESAMT = Cells(Rows.Count, 4).End(xlUp).Row To 1 Step -1 '(?)

Dim CharBMK As String, CharSze As String
Select Case Cells(GESAMT, 8).Value '(?)

'-------------------
Case Is = "26x52"
CharBMK = Chr(10) _
& Chr(10) _
& Worksheets("EplSheet").Cells(2 + i, 8).Value

CharSze = Worksheets("EplSheet").Cells(2 + i, 9).Value _
& Chr(10) _
& Worksheets("EplSheet").Cells(2 + i, 9).Value _
& Chr(10) _
& "3|" _
& Worksheets("EplSheet").Cells(2 + i, 9).Value

Case Is = "37x52"
CharBMK = Chr(10) _
& Chr(10) _
& Chr(10) _
& Worksheets("EplSheet").Cells(2 + i, 8).Value

CharSze = Worksheets("EplSheet").Cells(2 + i, 9).Value _
& Chr(10) _
& Worksheets("EplSheet").Cells(2 + i, 9).Value _
& Chr(10) _
& Worksheets("EplSheet").Cells(2 + i, 9).Value _
& Chr(10) _
& "3|" _
& Worksheets("EplSheet").Cells(2 + i, 9).Value
'-------------------
'etc

Case Else 'wenn keines der anderen zutrifft
CharBMK = Chr(10) _
& Chr(10) _
& Chr(10) _
& Worksheets("EplSheet").Cells(2 + i, 8).Value

CharSze = Worksheets("EplSheet").Cells(2 + i, 9).Value _
& Chr(10) _
& Worksheets("EplSheet").Cells(2 + i, 9).Value _
& Chr(10) _
& Worksheets("EplSheet").Cells(2 + i, 9).Value _
& Chr(10) _
& "3|" _
& Worksheets("EplSheet").Cells(2 + i, 9).Value
End Select
Next GESAMT '(?)


For i = 0 To anzahlGESAMT - 1 ' x beliebige Wierderholung in 1er Reihenschritten

' BMK: Druck Spalte C(3) aus EplSheet Spalte H(8) einlesen
.Cells(1 + i, 3).Value = CharBMK

' Schriftgröße Druck Spalte F(6) aus EplSheet Spalte I(9) einlesen
.Cells(1 + i, 6).Value = CharSze
Next i

End Sub
Folgenachrichten
Antwort auf Beitrag erstellen

Beispieldatei hochladen