blondebabe87 Skrevet 12. november 2008 Del Skrevet 12. november 2008 Heisann Jeg har en type som er ikt ansvarlig i en bank Jeg vil imponere han og har funnet en makro som han bruker Jeg lurer på hva alt dette betyr... Noen som kan hjelpe?? Hjelp ! her kommer den: Option Explicit Const GrunnData As String = "Grunnlag" Const TabellData As String = "Tabell" Const Diagram As String = "Graf" Function SamletAnnRente(RPP As Single, Periode As Integer, AntPerioder As Integer, Startverdi As Double, Sluttverdi As Double) As Double Dim i As Integer, mSum As Double Application.Volatile mSum = 0 For i = 1 To Periode mSum = mSum + Application.Ipmt(RPP, i, AntPerioder, Startverdi, 0) Next i SamletAnnRente = mSum End Function Function SamletSerRente(RPP As Single, Periode As Integer, AntPerioder As Integer, Startverdi As Double) As Double Dim i As Integer, mSum As Double, Avdrag As Double Application.Volatile mSum = 0 Avdrag = Startverdi / AntPerioder For i = 1 To Periode mSum = mSum + Startverdi * RPP Startverdi = Startverdi - Avdrag Next i SamletSerRente = mSum * -1 End Function Sub FiksTabellen() Dim sRow As Integer, yRow As Integer ' startraden og sluttkolonne for overskriftene i tabellen Dim i As Integer, AntPerioder As Integer, ACM As Integer, y As Integer ThisWorkbook.Activate Sheets(GrunnData).Select Range("AnnLån").Select AntPerioder = Range("TabellPerioder").Value If AntPerioder < 12 Then MsgBox "Du må fylle inn et større antall perioder/år eller antall år" Range("AnnPerioder").Select Exit Sub End If ACM = Application.Calculation Application.Calculation = xlManual Application.ScreenUpdating = False Application.StatusBar = "Oppdaterer tabellen med " & AntPerioder & " rader..." Sheets(TabellData).Select sRow = Range("Overskrift").Row ' startraden for overskriftene i tabellen y = Cells(sRow, 1).End(xlToRight).Column ' siste kolonne med data ' slett eventuelle overskuddsdata Range(Cells(sRow + 3, 1), Cells(16384, y)).Clear For i = 1 To AntPerioder Cells(sRow + i, 1).Formula = i Next i Range(Cells(sRow + 2, 2), Cells(sRow + AntPerioder, y)).FillDown ActiveSheet.PageSetup.PrintArea = Range(Cells(1, 1), Cells(sRow + AntPerioder, y)).Address Cells(sRow + 1, 1).Select OppdaterDiagrammet 1, sRow, 3, AntPerioder, "Annuitetslån" ' IB annuitetslån OppdaterDiagrammet 2, sRow, 9, AntPerioder, "Serielån" ' IB serielån Application.Calculation = ACM Application.Calculate Worksheets(1).Select Application.StatusBar = False End Sub Sub OppdaterDiagrammet(Serie As Integer, rIndex As Integer, cIndex As Integer, pCount As Integer, sNavn As String) ' oppdaterer navnene som benyttes av grafen Application.StatusBar = "Oppdaterer diagrammet..." With Charts(Diagram).SeriesCollection(Serie) .XValues = "=" & TabellData & "!R" & rIndex + 1 & "C2:R" & rIndex + pCount & "C2" '.Name = "=" & TabellData & "!R" & rIndex & "C" & cIndex .Name = sNavn .Values = "=" & TabellData & "!R" & rIndex + 1 & "C" & cIndex & ":R" & rIndex + pCount & "C" & cIndex End With Application.StatusBar = False End Sub På forhond takk Lenke til kommentar
Harald Staff Skrevet 12. november 2008 Del Skrevet 12. november 2008 Kort forklart, ikke en makro, men to funksjoner og to makroer til Excel. Funksjonene er skreddersydde økonomifunksjoner og brukes sannsynligvis som formler i Excel-ark. De beregner samlede renter i serie- og annuitetslån tror jeg. Første makro (sub) setter opp noe som jeg tror er en tabell over lån og betaling. Andre makro angir/endrer kildedata i et diagram. Første makro kjører andre makro to ganger, en for annuitetslånet og en for serielånet. Det krever en del øvelse å lese sånt, jeg kan ikke lære deg å forstå alt i løpet av en setning eller to. Men nå har du da litt å bløffe med. Banker bør dessuten passordbeskytte kodene sine spør du meg Beste hilsen Harald Lenke til kommentar
blondebabe87 Skrevet 17. november 2008 Forfatter Del Skrevet 17. november 2008 Tusen takk Dette var iallefall litt hjelpsomt=)) klem..!! Lenke til kommentar
blondebabe87 Skrevet 17. november 2008 Forfatter Del Skrevet 17. november 2008 (endret) Men kan du forklare de ulike komandoene? Det hadde det vert toppers(K) klem... Endret 17. november 2008 av blondebabe87 Lenke til kommentar
Harald Staff Skrevet 17. november 2008 Del Skrevet 17. november 2008 Har du talt over hvor mange ulike kommandoer vi snakker om? Nei du. Men prøv dette: Start Excel. Åpne makroeditoren (Alt F11 eller så). Sett inn en modul (Insert - module). Lim inn all koden i modulen. Merk en kommando og trykk F1, så dukker forhåpentligvis forklaringene opp. (Forhåpentligvis fordi det varierer om folk installerer VBA help med Office eller ikke) Beste hilsen Harald Lenke til kommentar
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå