15. september 2003 - 18:00Der er
4 kommentarer og 1 løsning
Interpolere og opslag i regneark.
Jeg har en liste i et regneark som jeg gerne vil kunne lave opslag i. Problemet er at jeg samtidig gerne vil have den til at interpolere i listen. Er der nogen der kan hjælpe mig med det...
Et forslag er at bruge denne brugerdefinerede funktion. Indsæt den i et alm. modul. så er den klar til brug. Du bruger den på samme måde som alm. LOpslag. =interpolateVLOOKUP(12; A1:C100; 3)
Function InterpolateVLOOKUP(x As Single, Table As Range, _ YCol As Integer)
Dim TableRow As Integer, Temp As Variant Dim x0 As Double, x1 As Double, y0 As Double, y1 As Double Dim d As Double
On Error Resume Next Temp = Application.WorksheetFunction.Match(x, Table.Resize(, 1), 1) If IsError(Temp) Then InterpolateVLOOKUP = CVErr(Temp) Else TableRow = CInt(Temp) x0 = Table(TableRow, 1) y0 = Table(TableRow, YCol) If x = x0 Then InterpolateVLOOKUP = y0 Else x1 = Table(TableRow + 1, 1) y1 = Table(TableRow + 1, YCol) InterpolateVLOOKUP = (x - x0) / (x1 - x0) * (y1 - y0) + y0 End If End If End Function
Du kan ikke uddybe det du har skrevet lidt, da det ikke siger mig ret meget :-), jeg er ikke den skrappeste til Excel. Helt nøjagtigt, hvordan laver jeg denne brugerdefinerede funktion... Jeg bør måske nævne, at jeg bruger Excel 97 indtil videre.
du stiller dig i det regneark hvor funktionen skal bruges. Tryk Alt-F11 tryk ctrl-r I menuen "Insert" vælger du Module. I det modul der nu kommer klistrer du ovennævnte kode ind. Du kan nu bruge funktionen lige som alle andre excel-funktioner
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.