Funktion för att identifiera det senast inmatade värdet
Mha formler kan vi identifiera det senast inmatade värdet i ett cellområde, som endast består av värden och tomma celler.
I många sammanhang, när vi bygger upp datablad, förekommer både värden, tomma celler och celler med formler i sig. Här kan vi inte med formler identifiera det senaste inmatade värdet i raden eller i kolumnen. Därtill krävs en VBA-baserad lösning såsom en funktion.
Följande funktion kan identifiera det senast inmatade värdet i raden eller i kolumnen, där även formler finns i det angivna cellområdet. Noterbart är att värdet 0 tilldelas om t ex inga angivna värden finns överhuvudtaget, vilket underlättar vid sammanställningar.
Option Explicit
Function Sistavardet(CellOmrade As Range)
'© 2002 Alla rättigheter XL-Dennis
Dim i As Long, j As Long
i = CellOmrade.Rows.Count
On Error GoTo Felhantering:
If i > 1 Then
For j = i To 1 Step -1
If CellOmrade(j, 1).HasFormula = False Then
If Not IsEmpty(CellOmrade(j, 1)) Then
Sistavardet = CellOmrade(j, 1).Value
Exit Function
Else
Sistavardet = 0
End If
End If
Next j
Else
i = CellOmrade.Columns.Count
For j = i To 1 Step -1
If CellOmrade(1, j).HasFormula = False Then
If Not IsEmpty(CellOmrade(1, j)) Then
Sistavardet = CellOmrade(1, j).Value
Exit Function
Else
Sistavardet = 0
End If
End If
Next j
End If
Exit Function
Felhantering:
Sistavardet = CVErr(xlErrValue)
End Function