|
||||
Disse websidene oppdateres ikke lengre og er kun tilgjengelig for historikken sin skyld.Klikk her for å gå til den oppdaterte informasjonen. Summer verdier fra det forrige eller neste regnearketDet er mulig å summere verdier fra et område i et annet regneark på denne måten: =SUMMER(Ark1!A1:A100)Denne formelen kan deretter kopieres til de andre arkene i arbeidsboken, men du må redigere arknavnet i formelen for hvert enkelt ark. Med de egendefinerte funksjonene nedenfor kan man skrive inn funksjonen en gang (f.eks. hvis man grupperer regnearkene først) og slippe den manuelle redigeringen av arknavnet i formelen: Function SumPreviousSheet(InputRange As Range) As Double ' summerer verdiene i InputRange i det forrige regnearket ' returnerer 0 hvis funksjonen benyttes i det første regnearket Application.Volatile ' utelat denne setningen hvis den ikke er nødvendig SumPreviousSheet = 0 On Error Resume Next SumPreviousSheet = Application.WorksheetFunction.Sum(InputRange.Parent.Previous.Range(InputRange.Address)) On Error Goto 0 End Function Function SumNextSheet(InputRange As Range) As Double ' summerer verdiene i InputRange i det neste regnearket ' returnerer 0 hvis funksjonen benyttes i det siste regnearket Application.Volatile ' utelat denne setningen hvis den ikke er nødvendig SumNextSheet = 0 On Error Resume Next SumNextSheet = Application.WorksheetFunction.Sum(InputRange.Parent.Next.Range(InputRange.Address)) On Error Goto 0 End Function Det er også mulig å lage en egendefinert funksjon som summerer verdier i et annet regneark på denne måten: Function SumOffsetSheet(InputRange As Range, Optional SheetOffset As Integer = 0) Application.Volatile SumOffsetSheet = 0 On Error Resume Next SumOffsetSheet = _ Application.WorksheetFunction.Sum(Worksheets(InputRange.Worksheet.Index + _ SheetOffset).Range(InputRange.Address)) On Error Goto 0 End Function Eller man kan lage en egendefinert funksjon som summerer verdier i et annet regneark på denne måten: Function SumIndexSheet(InputRange As Range, Optional SheetIndex As Integer = 0) Application.Volatile SumIndexSheet = 0 If SheetIndex = 0 Then SumIndexSheet = Application.WorksheetFunction.Sum(InputRange) Else On Error Resume Next SumIndexSheet = _ Application.WorksheetFunction.Sum(Worksheets(SheetIndex).Range(InputRange.Address)) On Error Goto 0 End If End Function Eksempler:
Dokumentet er sist oppdatert 1999-08-14 12:41:47
|
||||
|