Ik heb een opdracht voor school. Ik ben nog een VBA-beginneling dus ik kom niet uit het volgende:
Allereerst mijn huidige script:
Option Explicit
Sub taxibedrijf()
Dim aantalKm As Integer
Dim beginTijd As Date
Dim eindTijd As Date
Dim ritPrijs As Single
Dim totKm As Long
Dim totTijd As Long
Dim totBedrag As Double
Call lees(aantalKm, beginTijd, eindTijd)
Call bereken(aantalKm, beginTijd, eindTijd, ritPrijs, totKm, totTijd, totBedrag)
Call schrijf(ritPrijs, totKm, totTijd, totBedrag)
End Sub
Sub lees(aantalKm As Integer, beginTijd As Date, eindTijd As Date)
aantalKm = Range("A5").Value
beginTijd = Range("B5").Value
eindTijd = Range("C5").Value
End Sub
Sub bereken(aantalKm As Integer, beginTijd As Date, eindTijd As Date, ritPrijs As Single, totKm As Long, totTijd As Long, totBedrag As Double)
Dim beginGetal As Double
Dim eindGetal As Double
Dim ritGetal As Double
Dim ritTijd As Long
beginGetal = beginTijd
eindGetal = eindTijd
ritGetal = eindGetal - beginGetal
ritTijd = ritGetal * 1440
ritPrijs = berekenRitPrijs(ritTijd, aantalKm)
totKm = totKm + aantalKm
totTijd = totTijd + ritTijd
totBedrag = totBedrag + ritPrijs
End Sub
Sub schrijf(ritPrijs As Single, totKm As Long, totTijd As Long, totBedrag As Double)
Range("E5").Value = ritPrijs
Range("F5").Value = totKm
Range("G5").Value = totTijd
Range("H5").Value = totBedrag
End Sub
Function berekenRitPrijs(ritTijd As Long, aantalKm As Integer) As Double
Dim kmTarief As Single
Dim minuutTarief As Single
Dim kmPrijs As Single
Dim tijdPrijs As Single
Dim totaal As Double
'Constanten
kmTarief = 1
minuutTarief = 0.25
kmPrijs = aantalKm * kmTarief
tijdPrijs = ritTijd * minuutTarief
totaal = kmPrijs + tijdPrijs
berekenRitPrijs = totaal
End Function
Momenteel voer ik in cel A5 het aantal kilometers in, B5 begintijd, C5 eindtijd. Vervolgens rekent ie ritprijs enzo uit.
Nu wil ik dit voor een lijst gegevens doen (A5 t/m A..., B5 t/m... enz.) met als uitkomst de ritprijs per regel (E5 t/m E...)en de overige uitvoer blijvend in resp. F5,G5,H5. Hoe pas ik mijn script hier op aan.
MVG
Bart
Allereerst mijn huidige script:
Option Explicit
Sub taxibedrijf()
Dim aantalKm As Integer
Dim beginTijd As Date
Dim eindTijd As Date
Dim ritPrijs As Single
Dim totKm As Long
Dim totTijd As Long
Dim totBedrag As Double
Call lees(aantalKm, beginTijd, eindTijd)
Call bereken(aantalKm, beginTijd, eindTijd, ritPrijs, totKm, totTijd, totBedrag)
Call schrijf(ritPrijs, totKm, totTijd, totBedrag)
End Sub
Sub lees(aantalKm As Integer, beginTijd As Date, eindTijd As Date)
aantalKm = Range("A5").Value
beginTijd = Range("B5").Value
eindTijd = Range("C5").Value
End Sub
Sub bereken(aantalKm As Integer, beginTijd As Date, eindTijd As Date, ritPrijs As Single, totKm As Long, totTijd As Long, totBedrag As Double)
Dim beginGetal As Double
Dim eindGetal As Double
Dim ritGetal As Double
Dim ritTijd As Long
beginGetal = beginTijd
eindGetal = eindTijd
ritGetal = eindGetal - beginGetal
ritTijd = ritGetal * 1440
ritPrijs = berekenRitPrijs(ritTijd, aantalKm)
totKm = totKm + aantalKm
totTijd = totTijd + ritTijd
totBedrag = totBedrag + ritPrijs
End Sub
Sub schrijf(ritPrijs As Single, totKm As Long, totTijd As Long, totBedrag As Double)
Range("E5").Value = ritPrijs
Range("F5").Value = totKm
Range("G5").Value = totTijd
Range("H5").Value = totBedrag
End Sub
Function berekenRitPrijs(ritTijd As Long, aantalKm As Integer) As Double
Dim kmTarief As Single
Dim minuutTarief As Single
Dim kmPrijs As Single
Dim tijdPrijs As Single
Dim totaal As Double
'Constanten
kmTarief = 1
minuutTarief = 0.25
kmPrijs = aantalKm * kmTarief
tijdPrijs = ritTijd * minuutTarief
totaal = kmPrijs + tijdPrijs
berekenRitPrijs = totaal
End Function
Momenteel voer ik in cel A5 het aantal kilometers in, B5 begintijd, C5 eindtijd. Vervolgens rekent ie ritprijs enzo uit.
Nu wil ik dit voor een lijst gegevens doen (A5 t/m A..., B5 t/m... enz.) met als uitkomst de ritprijs per regel (E5 t/m E...)en de overige uitvoer blijvend in resp. F5,G5,H5. Hoe pas ik mijn script hier op aan.
MVG
Bart