ich bin neu im Forum und habe nur sehr wenig Erfahrung mit VBA.
Ich suche schon eine ganze Weile nach einer Lösung für mein Problem, bin jedoch hier im Forum oder bei Google nicht fündig geworden.
Ich habe eine Tabelle mit jeweils ca. 2000 Temperatur- und Zeitwerten in 12 Spalten (E-Q). Nun möcht ich den gesamten Spaltenbereich (E-Q) wo die Temperatur zum ersten mal den 520 °C Bereich überschreitet bis zum letzen mal, wo der Temperaturbereich von 620°C überschritten (Daten in Beispieldatei rot markiert) wird in eine neue Tabelle kopieren. Übrigens ich benutze Office 2016.
Der Spaltenbereich ist immer konstant, jedoch die Zeilenanzahl variiert bei jeder Messung.
Folgenden Code habe ich mir zusammengestellt, jedoch funktioniert er nur, wenn ich die Spalten-und Zeilennummer fest vergebe. Ich möchte aber den Zeilenbereich, den ich in Zelle E2 und E3 berechne, variabel vorgeben.
Private Sub CommandButton1_Click()
Worksheets("tabelle1").UsedRange.ClearContents
Dim firstrow As Long
Dim firstcol As Long
Dim lastrow As Long
Dim lastcol As Long
firstrow = 2
firstcol = 5
lastrow = 3
lastcol = 5
Sheets("Daten_gefiltert").Activate
'Folgende Zeile liefert die falschen Werte!
'Range(Cells(firstrow, firstcol), Cells(lastrow, lastcol)).Select
Range(Cells(419, 5), Cells(497, 16)).Select
Selection.copy
Selection.PasteSpecial Paste:=xlPasteValues
Sheets("Tabelle1").Activate
ActiveSheet.Rows("2:2").Select
ActiveSheet.Paste
Application.CutCopyMode = False
End Sub
Hier kann man sich auch die Datei holen.https://www.herber.de/bbs/user/104580.xlsm
Ich hoffe, ich habe mich verständlich ausgedrückt
und bedanke mich im voraus
Manfred