*

Help!

Problemen met uw pc? De vrijwilligers van oplossing.be zoeken gratis met u mee! 8)

Meer weten over Oplossing.be?

Hoe stel ik een vraag?

Recent

Auteur Topic: Functie Betaalde feestdagen  (gelezen 838 keer)

Offline Diezel

  • Ervaren lid
  • ***
  • Berichten: 463
  • Geslacht: Man
  • Ik zoek hier een integrale oplossing ...En Jij?
Functie Betaalde feestdagen
« Gepost op: 27 januari 2016, 12:00:29 »
Hello oplossers,

Ik heb onderstaande Functie(betaalde feestdagen) geschreven. Mijn vraag: is die volgens de regels van de kunst geschreven en wat kan er nog beter om code te versnellen?

Heb de code getest en werkt in word, excel en acces.

Public Function BetaaldeFeestdag(Dag As Integer, Maand As Integer, Jaar As Integer) As String

Dim feestdagen(10) As Date
Dim benamingen(10) As String
Dim MijnDatum As Date
Dim mijnPaasdatum As Date
Dim I As Double
Dim J As Double

Dag = Dag
Maand = Maand
Jaar = Jaar
MijnDatum = DateSerial(Jaar, Maand, Dag)
mijnPaasdatum = MijnDatum

Call mijnPasen(mijnPaasdatum)

feestdagen(0) = DateSerial(Jaar, 1, 1) ' Nieuwjaarsdag
feestdagen(1) = DateSerial(Format(mijnPasen(mijnPaasdatum), "yyyy"), Format(mijnPasen(mijnPaasdatum) + 1, "mm"), Format(mijnPasen(mijnPaasdatum) + 1, "dd")) 'Paasmaandag var
feestdagen(2) = DateSerial(Jaar, 5, 1) 'Dag van de Arbeid
feestdagen(3) = DateSerial(Jaar, Format(mijnPasen(mijnPaasdatum) + 39, "mm"), Format(mijnPasen(mijnPaasdatum) + 39, "dd")) 'O.L.H Hemelvaart var
feestdagen(4) = DateSerial(Jaar, Format(mijnPasen(mijnPaasdatum) + 50, "mm"), Format(mijnPasen(mijnPaasdatum) + 50, "dd")) 'Pinkstermaandag var
feestdagen(5) = DateSerial(Jaar, 7, 11) 'Feest van de vlaamse gemeenschap
feestdagen(6) = DateSerial(Jaar, 7, 21) 'Nationale Feestdag
feestdagen(7) = DateSerial(Jaar, 8, 15) 'O.L.V Hemelvaart
feestdagen(8) = DateSerial(Jaar, 11, 1) 'Allerheiligen
feestdagen(9) = DateSerial(Jaar, 11, 11) 'Wapenstilstand
feestdagen(10) = DateSerial(Jaar, 12, 25) 'Kerstmis

benamingen(0) = "Nieuwjaarsdag*"
benamingen(1) = "Paasmaandag*"
benamingen(2) = "Dag van de arbeid*"
benamingen(3) = "O.L.H Hemelvaartsdag*"
benamingen(4) = "Pinkstermaandag*"
benamingen(5) = "Feest van de vlaamse gemeenschap"
benamingen(6) = "Nationale Feestdag*"
benamingen(7) = "O.L.V Hemelvaart*"
benamingen(8) = "Allerheiligen*"
benamingen(9) = "Wapenstilstand(W.O 1 '14/'18*)"
benamingen(10) = "Kerstmis*"

'for.....next

For I = MijnDatum To MijnDatum Step 1

mijnPaasdatum = mijnPasen(CDate(I))

For J = 0 To 10 Step 1

'If Format(CDate(I), "dd/mm") = feestdagen(J) Then
If I = feestdagen(J) Then


BetaaldeFeestdag = benamingen(J)

End If

Next J
Next I

End Function

« Laatst bewerkt op: 27 januari 2016, 12:15:51 door Diezel »
OS: Windows 8.1 - 64 bit
Processor:  Intel(R) Core(TM) I7 - 4770 CPU 3,40 GHZ
HDD - Ram: 1 TB, 12 GB
SOFTWARE: Ms Office 2003 SP3  And File format convertor office 2007
Ms Acces: bijlagen databases liefst in .mdb

 


www.combell.com