Zellen markieren

Hi!
Ich möchte bestimmte Bereiche markieren. Der Makrorecorder hat mir folgendes ausgespuckt:

Worksheets(„Zwischenspeicher“).Range(„J1:L1,J5:L5“).Select

Da sich der Bereich ändert, will ich das ganze dynamisch gestalten, aber ich weis nicht so ganz wie ^^

Private Sub CommandButton1_Click()
Dim Von As Integer
Dim Bis As Integer

Von = 5
Bis = 5

Worksheets(„Zwischenspeicher“).Range(Range(Worksheets(„Zwischenspeicher“).Cells(1, 9), Worksheets(„Zwischenspeicher“).Cells(1, 12)), Range(Worksheets(„Zwischenspeicher“).Cells(Von, 9), Worksheets(„Zwischenspeicher“).Cells(Bis, 12))).Select

End Sub

Mit dieser Funktion wird jedoch der Bereich von („I1:L5“) markiert…

Wie kann ich dieses Problem lösen?

Mit freundlichen Grüßen, Andi

Hallo Andi,

wenn ich das richtig verstanden habe, sollte das nicht so schwer sein. Du musst nur die Strings richtig zusammenbauen

Sub test()
bereich1 = „J2:L2“
bereich2 = „J6:L6“
bereich3 = „A1:b12“
alles = bereich1 & „,“ & bereich2 & „,“ & bereich3
Range(alles).Select
End Sub

Mit freundlichem Gruß
Jadawin

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

…kleine Ergänzung

 bereich1 = Chr(64 + 10) & "2:L2"
chr(64) = "@", also "@" plus offset (10) ergibt "J"

Luxusvariante :smile:

Sub init()
 Alles = BereichFuellen(2, 10, 2, 12)
 Alles = Alles & "," & BereichFuellen(6, 10, 6, 12)
 Alles = Alles & "," & BereichFuellen(1, 1, 12, 2)
 Range(Alles).Select
End Sub

Function BereichFuellen(Oben As Integer, Links As Integer, Unten As Integer, Rechts As Integer) As String
 tstr = Chr(64 + Links) & Oben & ":" & Chr(64 + Rechts) & Unten
 BereichFuellen = tstr
End Function

Gruß
Jadawin

[MOD] Pre-Tags eingefügt.

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

Hi Jadawin!

Danke für deine Antwort!
Ich brauch das ganze mit den Variablen ‚Von‘ und ‚Bis‘. Ich hab deine Version kurz umgeschrieben, aber leider funktioniert das jetzt nicht mehr. Weist du wo mein Fehler ist?

Mit freundlichen Grüßen, Andi

Private Sub CommandButton1\_Click()
 Dim Von As Integer
 Dim Bis As Integer

 Von = 5
 Bis = 5

 bereich1 = Worksheets("Zwischenspeicher").Range(Worksheets("Zwischenspeicher").Cells(1, 9), Worksheets("Zwischenspeicher").Cells(1, 12))
 bereich2 = Worksheets("Zwischenspeicher").Range(Worksheets("Zwischenspeicher").Cells(Von, 9), Worksheets("Zwischenspeicher").Cells(Bis, 12))
 alles = bereich1 & "," & bereich2

 Worksheets("Zwischenspeicher").Range(alles).Select
End Sub

[MOD] Pre-Tags eingefügt.

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

Danke
Hi Jadawin!

Vielen Dank für deine Antwort!
Mit deiner Funktion ‚BereichFuellen‘ funktionierts!

Mit freundlichen Grüßen, Andi

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]