@ > Home > Inhalt > Lücken linear auffüllen Excel 97+

Die Formel verkürzt http://excelformeln.de/formeln.html?welcher=465. Dort heißt es:

B2: {=WENN(A2="";B1+(INDEX(A:A;MIN(WENN(A2:A$99<>"";ZEILE(A2:A$99))))-INDEX(A:A;MAX(WENN(A$1:A2<>"";ZEILE(A$1:A2)))))/(MIN(WENN(A2:A$99<>"";ZEILE(A2:A$99)))-MAX(WENN(A$1:A2<>"";ZEILE(A$1:A2))));A2)}.

Aber fangen wir noch einmal von vorn an. Stehen in Spalte A Werte, 
- beginnend mit gefülltem A2 und endend mit einem gefülltem letzten Eintrag in A:A,
- unterbrochen durch Lücken (=leere Zellen), 
- mit einer maximalen Lücke von 98 Zeilen,
lautet die ab B2 entlang der Reihe A:A runterzukopierende Formel für deren lineare Interpolation:

B2: {=B1+(INDEX(A:A;MIN(WENN(A2:A101<>"";ZEILE(2:101))))-B1)*1/(MIN(WENN(A2:A101<>"";ZEILE(2:101)))-ZEILE(A2)+1)}

 

          A     B    
    1                 
    2   1      1      
    3          2,5    
    4          4      
    5          5,5    
    6   7      7      
    7          4,333  
    8          1,666  
    9  -1     -1      

Soll statt dessen
- die unterbrochene Liste schon in A1 statt A2 beginnen und/oder
- die Rechengeschwindigkeit etwas verbessert sein (vor allem bei anteilig nur wenigen Lücken),
lautet sie um eine WENN-Bedingung erweitert:

B2:  {=WENN(A2<>"";A2;B1+(INDEX(A:A;MIN(WENN(A2:A101<>"";ZEILE(2:101))))-B1)*1/(MIN(WENN(A2:A101<>"";ZEILE(2:101)))-ZEILE(A2)+1))}

Sie muss dann auch hoch nach B1 kopiert werden! Die #BEZUG!-Fehler in B1 sind dabei unschädlich. Wen es jedoch stört: B1: =A1 geht auch.

Soll die Lücke statt dessen 998 Zeilen betragen dürfen, wird die Formel an den entsprechenden Stellen auf A2:A1001 und 2:1001 geändert.