Thema Datum  Von Nutzer Rating
Antwort
Rot Per Makro zugehörige Werte finden
15.11.2016 14:59:10 Florian Rave
NotSolved
15.11.2016 16:29:13 BigBen
NotSolved
15.11.2016 16:51:52 Florian Rave
NotSolved
15.11.2016 16:53:12 Florian Rave
NotSolved
15.11.2016 17:00:01 BigBen
NotSolved
15.11.2016 17:05:21 Gast40465
NotSolved
15.11.2016 17:05:39 Gast16014
NotSolved
15.11.2016 17:07:37 Florian Rave
NotSolved
15.11.2016 19:43:31 BigBen
NotSolved
15.11.2016 20:21:01 BigBen
NotSolved
15.11.2016 21:20:29 Florian Rave
NotSolved
16.11.2016 10:45:19 BigBen
NotSolved
15.11.2016 17:29:45 BigBen
NotSolved

Ansicht des Beitrags:
Von:
Florian Rave
Datum:
15.11.2016 14:59:10
Views:
1512
Rating: Antwort:
  Ja
Thema:
Per Makro zugehörige Werte finden
Hallo Zusammen, Ich habe folgendes Problem, Ich habe 2 Wertelisten: Werteliste 1(Tabellenblatt 1): Spalte A: Datum Spalte B: Laufzeit/h Spalte C: Kraft/kN Spalte D: Höhenänderung/% Spalte E: Innentemperatur/°C Spalte F: Außentemperatur/°C Werteliste 2 (Tabellenblatt 2): Spalte A: Laufzeit/h Spalte B: Innentemperatur/°C Spalte C: Höhenänderung_Korrektur/% Ich muss nun den Wert Höhenänderung(Werteliste1|SpalteD) bei der Temperatur(Werteliste1|SpalteE) um den Wert Höhenänderung_Korrektur(Werteliste1|SpalteC)korrigieren. D.h. Höhenänderung(Werteliste1|SpalteD)_Temp - Höhenänderung_Korrektur(Werteliste1|SpalteC)_Temp Da die Werte der beiden Wertelisten nicht immer bei exakt der gleichen Temperatur vorliegen, muss ich den entsprechnden Wert aus der Werteliste 2 interpolieren. Dazu wollte ich mir zu einer Innentemperatur(Werteliste1|SpalteE) den nächst niedrigeren Wert aus und den nächst höheren Wert aus Werteliste 2 Spalte B suchen und mittels Geradengleichung den zwischenwert berechnen. Um die Werte zu suchen, habe ich an folgendes Makro gedacht:Sub grossklein() Dim lzeile As Long Dim dklein As Double Dim dgross As Double Dim letztezeile As Long letztezeile = Sheets(1).UsedRange.SpecialCells(xlCellTypeLastCell).Row MsgBox letztezeile With ThisWorkbook.Worksheets("Tabelle1") For j = 1 To 3388 If Trim(.Range("F" & j).Value) <> "" Then If IsNumeric(.Range("F" & j).Value) Then For lzeile = 2 To 4000 If CDbl(.Range("F" & j).Value) >= CDbl(Worksheets("Korrektur-Werte").Cells( _ _ lzeile, 2).Value) Then dklein = CDbl(Worksheets("Korrektur-Werte").Cells(lzeile, 2).Value) End If If CDbl(.Range("F" & j).Value) <= CDbl(Worksheets("Korrektur-Werte").Cells( _ _ lzeile, 2).Value) Then dgross = CDbl(Worksheets("Korrektur-Werte").Cells(lzeile, 2).Value) Exit For End If Next lzeile End If End If Range("I" & j).Value = dklein Range("J" & j).Value = dgross Next j End With End Sub Das funktioniert auch, allerdings stürzt Excel (ich denke auf Grund der vielen Datensätze) ab. Weiß jemand einen einfacheren Weg, bzw. einen Weg, bei dem Excel nicht überfordert ist? Besten Dank! Schon mal, Gruß Florian Rave

Ihre Antwort
  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen
Thema: Name: Email:



  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen

Thema Datum  Von Nutzer Rating
Antwort
Rot Per Makro zugehörige Werte finden
15.11.2016 14:59:10 Florian Rave
NotSolved
15.11.2016 16:29:13 BigBen
NotSolved
15.11.2016 16:51:52 Florian Rave
NotSolved
15.11.2016 16:53:12 Florian Rave
NotSolved
15.11.2016 17:00:01 BigBen
NotSolved
15.11.2016 17:05:21 Gast40465
NotSolved
15.11.2016 17:05:39 Gast16014
NotSolved
15.11.2016 17:07:37 Florian Rave
NotSolved
15.11.2016 19:43:31 BigBen
NotSolved
15.11.2016 20:21:01 BigBen
NotSolved
15.11.2016 21:20:29 Florian Rave
NotSolved
16.11.2016 10:45:19 BigBen
NotSolved
15.11.2016 17:29:45 BigBen
NotSolved