excel

Von: , 01.07.2011 10:34 Uhr

Liebe/-r Experte/-in,
habe folgende excelspalte:
23
0
0
0
56
0
25
0
0
0
0
3

moechte jetzt gerne eine zweite spalte einfuegen, in der die werte, die nicht null sind, geich bleiben, die nullwerte jedoch durch lineare interpolationen ersetzt werden. dh: die ersten drei nullwerte sollen eine lineare interpolation zw. 23 und 56 sein, der naechste nullwert eine interpolation zw. 56 und 25 usw. mein problem ist, dass die anzahl an nullwerten zufaellig ist, was die eingabe erschwert... hat vl jemand eine idee, wie man das automatisieren koennte?? danke!!!

5 Antworten zu dieser Frage

  1. Antwort von nach 49 Minuten 0 hilfreich
    Re: excel

    Sorry, habe im Moment keine Idee. Eine interessante Aufgabe allerdings, der ich mich gerne widmen "würde". Ich kniffle gerne, fahre heute in Urlaub und so kann ich mich dem Problem leider nicht mehr widmen. Tut mir leid. Ich hoffe du findest eine Lösung.

    Gruß Peter Max

  2. Antwort von nach 8 Stunden 0 hilfreich
    Re: excel

    Hallo Erich,
    hab ich Dich richtig verstanden, dass Du in der zweiten Spalte die Nullen ersetzen willst ? und zwar durch die Zahlen (56-23) = 23/(3+1) nullen =8,25 + 23 =31,25 usw. ?

    23
    31,25
    39,5
    47,75
    56

    Gruß
    Christian

  3. Antwort von nach 10 Stunden 0 hilfreich
    Re: excelzellen automatisch füllen

    Hallo ErichDer2te,

    so ad hoc würd ich eine Makro- oder VB-Programmierung
    vorschlagen, in der die Zellen mit ihren Werten/Inhalten abgefragt werden:
    Wenn Zelle nicht 'Null', dann Wert übernehmen in 'Var1', Zählen der folgenden 'Null'-Werte in 'i' bis zum nächsten Wert ('Var2').

    Dann hat man die erste (Start-)Zelle ('Var1'), Anzahl der '0'-Zellen ('i') und den 2ten Zellwert ('Var2')

    Damit lassen sich dann die Zellen vom Start an bis 'i'-1 mit der Fuktion bzw. deren Ergebnisse füllen.

    Danach geht es weiter bis zur nächsten Zelle, die einen Wert hat.

    Leider hab ich jetzt so schnell die entsprechenden Befehle nicht parat um das Programm 'mal eben' zu schreiben (bin etwas 'eingerostet';)

    Aber vllt. hilft Dir ja schon dieser Überlegungsansatz.

    Grüße

  4. Antwort von nach einem Tag 0 hilfreich
    Re: excel

    Hallo!

    Wahrscheinlich geht das einfach über ein Makro. Aber hierfür musst Du mir erst einmal erklären, was eine "lineare interpolation" bedeutet. Wie sehen die Berechnungsformeln in der 2. Spalte aus?
    Gruß,
    Tobias

  5. Antwort von nach 3 Tagen 0 hilfreich
    Re: excel / lineare Interpolation von Nullstellen

    Hi.
    War etwas kniffelig.
    Ich hoffe, das hier ist was du möchtest. Musste noch ein paar Hilfszellen generieren, damit es einfacher / übersichtlicher wurde.

    wenn das hier dein Ergebsnis ist:
    23 => 23
    0 => 31,25
    0 => 39,5
    0 => 47,75
    56 => 56
    0 => 40,5
    25 => 25
    0 => 20,6
    0 => 16,2
    0 => 11,8
    0 => 7,4
    3 => 3

    dann öffne bitte eine Excel Tabelle (Zeile 1) wie folgt:
    Spalte A => untere Grenze f0
    Spalte B => obere Grenze f1
    Spalte C => obere Grenze x1
    Spalte D => untere Grenze x0
    Spalte E => aktueller Wert x (1 - n)
    Spalte F => deine Werte (y - z)
    Spalte G => interpolierte Werte

    Werte ab Zeile 2! Hinweis: Diese Tabelle ist allgemein, aber auf deine Werteliste abgestimmt!
    Füge nun die folgende Formeln in die Zelle:
    A2 =F2
    A3 =WENN(F3=0;$A2;$F3)
    B13 =F13
    B12 =WENN(F12=0;$B13;$F12)
    C2 =WENN($A2=$B2;$C3;SVERWEIS($B2;$A$2:$E$13;5;FALSCH))
    D2 =SVERWEIS($A2;$A$2:$E$13;5;FALSCH)
    G2 =$A2+(($B2-$A2)/($C2-$D2)*($E2-$D2))

    Kopiere diese (logisch) jeweils mittels Zellenziehen nach unten bzw Spalte B nach oben.

    Damit sollte deine Anforderung erfüllt sein.
    Bei Bedarf kannst du die Hilfsspalten A-D in die Formel in Spalte G einfügen.

    Grüße Jonn

Jetzt auf diese Frage antworten.