Thema
|
Datum
|
Von Nutzer
|
Rating
|
Antwort
|
Per Makro zugehörige Werte finden |
15.11.2016 14:59:10 |
Florian Rave |
|
|
|
15.11.2016 16:29:13 |
BigBen |
|
|
|
15.11.2016 16:51:52 |
Florian Rave |
|
|
|
15.11.2016 16:53:12 |
Florian Rave |
|
|
|
15.11.2016 17:00:01 |
BigBen |
|
|
|
15.11.2016 17:05:21 |
Gast40465 |
|
|
|
15.11.2016 17:05:39 |
Gast16014 |
|
|
|
15.11.2016 17:07:37 |
Florian Rave |
|
|
|
15.11.2016 19:43:31 |
BigBen |
|
|
|
15.11.2016 20:21:01 |
BigBen |
|
|
|
15.11.2016 21:20:29 |
Florian Rave |
|
|
|
16.11.2016 10:45:19 |
BigBen |
|
|
|
15.11.2016 17:29:45 |
BigBen |
|
|
Von:
Florian Rave |
Datum:
15.11.2016 14:59:10 |
Views:
1671 |
Rating:
|
Antwort:
|
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 |
- 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
Bitte geben Sie ein aussagekräftiges Thema an.
Bitte geben Sie eine gültige Email Adresse ein!
- 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
|
Per Makro zugehörige Werte finden |
15.11.2016 14:59:10 |
Florian Rave |
|
|
|
15.11.2016 16:29:13 |
BigBen |
|
|
|
15.11.2016 16:51:52 |
Florian Rave |
|
|
|
15.11.2016 16:53:12 |
Florian Rave |
|
|
|
15.11.2016 17:00:01 |
BigBen |
|
|
|
15.11.2016 17:05:21 |
Gast40465 |
|
|
|
15.11.2016 17:05:39 |
Gast16014 |
|
|
|
15.11.2016 17:07:37 |
Florian Rave |
|
|
|
15.11.2016 19:43:31 |
BigBen |
|
|
|
15.11.2016 20:21:01 |
BigBen |
|
|
|
15.11.2016 21:20:29 |
Florian Rave |
|
|
|
16.11.2016 10:45:19 |
BigBen |
|
|
|
15.11.2016 17:29:45 |
BigBen |
|
|