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 
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]