Verstehe leider nicht wie ich hier Code-Schnipsel / den Text-Editor einfügen/benutzen kann. Aber meine codes wären jetzt:
Tabelle1:
Sub Worksheet_SelectionChange(ByVal Target As Range)
If Range("HW1").Value = "1" Then
Set CurrWS = ActiveSheet
For Each WS In ThisWorkbook.Worksheets
WS.Activate
WS.Range(Target.Address).Select
Next
CurrWS.Activate
If IsEmpty(Range("HW1").Value) = True Then
End If
End Sub
Modul3:
Sub Tauschen()
Worksheets("Einsatzplan").Select
Range("HW1").Value = "1"
Dim s(1 To 4) As Variant
With Selection
If .Areas.Count = 2 And .Cells.Count = 2 Then
s(1) = .Areas(1).Cells(1, 1).Value
s(2) = .Areas(1).Range(Cells(1, 1), Cells(1, 1).Offset(0, 50)).Value
s(3) = .Areas(2).Cells(1, 1).Value
s(4) = .Areas(2).Range(Cells(1, 1), Cells(1.1).Offset(0, 50)).Value
'tauschen
.Areas(1).Cells(1, 1).Value = s(3)
.Areas(1).Range(Cells(1, 1), Cells(1, 1).Offset(0, 3)).Value = s(4)
.Areas(2).Cells(1, 1).Value = s(1)
.Areas(2).Range(Cells(1, 1), Cells(1, 1).Offset(0, 3)).Value = s(2)
End If
End With
Worksheets("Urlaubsplan").Select
Dim r(5 To 8) As Variant
With Selection
If .Areas.Count = 2 And .Cells.Count = 2 Then
r(5) = .Areas(1).Cells(1, 1).Value
r(6) = .Areas(1).Range(Cells(1, 1), Cells(1, 1).Offset(0, 50)).Value
r(7) = .Areas(2).Cells(1, 1).Value
r(8) = .Areas(2).Range(Cells(1, 1), Cells(1.1).Offset(0, 3)).Value
'tauschen
.Areas(1).Cells(1, 1).Value = r(7)
.Areas(1).Range(Cells(1, 1), Cells(1, 1).Offset(0, 50)).Value = r(8)
.Areas(2).Cells(1, 1).Value = r(5)
.Areas(2).Range(Cells(1, 1), Cells(1, 1).Offset(0, 50)).Value = r(6)
Range("HW1").Clear
End If
End With
End Sub
Leider funktioniert das nicht. |