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
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
Als Antwort auf diesen Beitrag
Tobi_84
23.02.2025 19:41:21
AW: Spalte auf Textlänge überprüfen & statt Umbruch, neue Ze
Danke, hat sich erledigt, habe meinen Fehler gefunden.

Gruß Tobias
Folgenachrichten
Antwort auf Beitrag erstellen

Beispieldatei hochladen