mit dem folgenden Code werden im Blatt Auswertung die Formeln von "A2:F2" im selben Blatt in den Bereich "A3:bis zur letzten benutzten Zelle der Tabelle1" kopiert und dann in Werte umgewandelt. Im Code steht für die "letzte benutzte Zelle der Tabelle1" der Begriff "LzT1".
Jetzt hätte ich aber gern, dass aus den 4 Blättern Tabelle1, Tabelle2, Tabelle3 und Tabelle4 die maximale Zeilenzahl der letzten benutzten Zeile ermittelt wird und dafür der Begriff "LzTMax" festgelegt wird.
Im Blatt Auswertung könnte ich dann zum kopieren und Werte einfügen anstatt "LzT1" den Begriff "LzTMax" verwenden.
Hier ist mein Code:
Option Explicit
Sub Auswertung()
Dim LzA1 As Long
Dim LzT1 As Long
Dim LzT2 As Long
Dim LzT3 As Long
Dim LzT4 As Long
With Sheets("Auswertung")
' .Unprotect
LzA1 = Application.Max(3, .Cells(.Rows.Count, 1).End(xlUp).Row)
LzT1 = Sheets("Tabelle1").Cells.SpecialCells(xlCellTypeLastCell).Row
LzT2 = Sheets("Tabelle2").Cells.SpecialCells(xlCellTypeLastCell).Row
LzT3 = Sheets("Tabelle3").Cells.SpecialCells(xlCellTypeLastCell).Row
LzT4 = Sheets("Tabelle4").Cells.SpecialCells(xlCellTypeLastCell).Row
Application.ScreenUpdating = False
.Range(.Cells(3, 1), .Cells(LzA1, 6)).ClearContents
.Range(.Cells(2, 1), Cells(2, 6)).Copy .Range(.Cells(3, 1), Cells(LzT1, 6))
.Range(.Cells(3, 1), Cells(LzT1, 6)).Formula = .Range(.Cells(3, 1), Cells(LzT1, 6)).Value
Range("A1").Select
Application.ScreenUpdating = True
' .Protect
End With
End Sub
Besten Dank für die Hilfe, Servus Walter