Wie kann ich bei Excel zwei Zeitspalten mit unterschiedlichen Zeitintervallen anpassen/verbinden?

2 Antworten

oder andersrum: die Sekunden-genaue Spalte als Vorlage und die fehlenden Werte der anderen leer lassen oder ggf interpolieren (was in xl nicht Standard, aber mit etwas Aufwand möglich  ist)



Iamiam  19.11.2015, 14:29

damit ich nicht nur pfeife, ohne was zu liefern, hier mein i'pol-µ:

Sub interpolation()

Dim BasisZ, c, DiffEinzeln, Halt, Wertob, Wertunt, Zeileob, Zeileunt

BasisZ = ActiveCellZeileunt = ActiveCell.Row

Wertunt = ActiveCell.Value

Halt = MsgBox("ist Zellzeiger auf der unteren, gefüllten Zelle? Bei leerer Zelle wird diese als 0 angenommen", vbOKCancel)

If Halt = 2 Then

EndZeileob = ActiveCell.End(xlUp).Row

Wertob = ActiveCell.End(xlUp).Value

'DiffEinzeln = Application.Round((Wertunt - Wertob) / (Zeileunt - Zeileob), 3) 'Application.Round()=>Schneide?

For Each c In Range(ActiveCell, ActiveCell.End(xlUp).Offset(1, 0))

If IsEmpty(c) Then

'c.Value = c.Offset(-1, 0).Value + DiffEinzeln

c.Value = Wertob + Application.Round((Wertunt - Wertob) / (Zeileunt - Zeileob) * (c.Row - Zeileob), 4)

Else: Exit For 'round: 3 bei Elektriz., 4 bei Zeit. über if instr(":", Format.c) o.ä. unterscheidbar?

End If

Next

End Sub

Dieses µ geht allerdings von gleichen Abständen der Sekundenliste aus (war bei mir auf eine Tagesliste bezogen für Zählerablesung)

Für unterschiedliche Intervalle ginge das auch, aber geringfügig komplizierter. (Dreisatz)

Du musst die sekundengenaue Spalte auf die 10-sekundengenaue Spalte abbilden.

Runde zum Beispiel mit der Funktion OBERGRENZE die sekundengenaue Spalte auf.

=OBERGRENZE(A1;10/24/60/60)