Änderungen dokumentieren
08.06.2021 10:33:17
Christian
ich möchte mich informieren, wie ihr Excel Profis folgendes Problem lösen würdet.
Ich würde gerne dokumentieren, welche Änderungen sich an Spalte Q durch das Ausführen des am Schluss stehenden Makros ergeben.
Das heißt ich habe ein Blatt namens Texte erstellt.
In Spalte A möchte ich die Texte auflisten, die vor dem Ausführen in Spalte Q standen und nach dem Ausführen nicht mehr
In Spalte B den umgekehrten Fall, die Texte die nach dem Ausführen in Spalte Q stehen, jedoch noch nicht davor.
Wie kann man das lösen? Am liebsten wäre es mir natürlich, wenn man das Makro entsprechend erweitert.
Vielen Dank
Christian
Sub Makro3()
Dim loLetzte As Long, j As Long, x As Long, lC As Long
Application.ScreenUpdating = False
With Worksheets("Ergebnis")
loLetzte = .Cells(Rows.Count, 1).End(xlUp).Row
.Range("B1:C1").Copy .Range("B1:C" & loLetzte)
.Range("B2:C" & loLetzte).Formula = .Range("B2:C" & loLetzte).Value2
.Range("E1:F1").Copy .Range("E2:F" & loLetzte)
.Range("E2:F" & loLetzte).Formula = .Range("E2:F" & loLetzte).Value2
.Range("R1") = "Formel" 'Zeile 1 markieren!!
.Sort.SortFields.Clear
.Sort.SortFields.Add Key:=.Range("C1:C" & loLetzte), SortOn:=xlSortOnValues, _
Order:=xlAscending, DataOption:=xlSortNormal
.Sort.SortFields.Add Key:=.Range("F1:F" & loLetzte), SortOn:=xlSortOnValues, _
Order:=xlDescending, DataOption:=xlSortNormal
With .Sort
.SetRange Range("A1:R" & loLetzte)
.Header = xlGuess
.MatchCase = False
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Apply
End With
'Zeile der Markierung in Spalte l suchen
x = .Cells(Rows.Count, 18).End(xlUp).Row
'Formeln ggf. in Zeile1 zurück kopieren
If x > 1 Then
.Cells(x, 2).Resize(1, 2).Copy .Range("B1")
.Cells(x, 5).Resize(1, 13).Copy .Range("E1")
.Cells(x, 5).Copy .Range("E1")
.Rows(x).Value = .Rows(x).Value
End If
.Range("G1:Q1").Copy .Range("G2:Q" & loLetzte)
.Range("G2:Q" & loLetzte).Formula = .Range("G2:Q" & loLetzte).Value2
.Cells(x, 18) = Empty 'markierung löschen
.Range("A1").Select
End With
Application.CutCopyMode = False
End Sub