Avatar billede susanne_larsen Nybegynder
16. april 2002 - 13:50 Der er 32 kommentarer og
1 løsning

Access - Active X object - kalender

Jeg har hentet kalender-objekt 9.0 (access 2000), ind i min database. Har brug for at der også vises ugenr (hvis det overhovedet kan lade sig gøre)

Er der nogen der har forslag...........
Avatar billede terry Ekspert
16. april 2002 - 13:54 #1
Dont think it can!
Avatar billede terry Ekspert
16. april 2002 - 13:58 #2
You could place the control on a form and then add a combo box to the form containing ALL week numbers. Then when you select the week number the calendar shows the correct date. Just an idea, but it will need some VBA code!
Avatar billede susanne_larsen Nybegynder
16. april 2002 - 15:54 #3
ok det vil jeg prøve

længe leve vba :-)

har seriøst brug for en bog med vba på developer-niveau
Avatar billede terry Ekspert
16. april 2002 - 17:09 #4
I have number of books on Access but none of them have so much on VBA. Access's own help does have lots of examples but its maybe hard to find exactly what you want.
16. april 2002 - 23:05 #5
Susanne->

Der er 2 bøger, som er gode:
-Beginning Access 2000 VBA fra forlaget WROX
og biblen over dem alle:
-Access 2000 Develpers Handbook fra Sybex
Den sidste (ADH) er den ultimative Access-bog med bunker af gode eksempler og 2 medfølgende CD'er fylde med kode-eksempler.
ADH har dog den ulempe at den er i 2 bind, som hver koster omkring 600,- og tilsammen indeholder omkring 2500 sider!
Avatar billede susanne_larsen Nybegynder
17. april 2002 - 20:03 #6
>thomasjepsen
står allerede på vent til Access 2000 Developers Handbook (har snart ventet på bogen i 3 uger) - så jeg håber den er ventetiden værd :-)

gør ikke så meget at den koster ca 600 pr bind, bare den er god

har næsten lige "fået" Access 2000 Bible fra Microsoft, da jeg fik den anbefalet vedr VBA - blev slemt skuffet - lol
passer ikke helt står mange gode ting i den, men ikke så meget omkring VBA
Avatar billede terry Ekspert
17. april 2002 - 20:22 #7
Have you implemeneted that combo yet Susanne?
17. april 2002 - 20:25 #8
Susanne-> ADH er al ventetiden værd :o)
Nu har du så lært en vigtig grundregel: Køb aldrig litteratur fra Microsoft ;o)

Terry-> Tak for din henvisning tidligere i dag :o) You are a real Pal !!!
Avatar billede terry Ekspert
17. april 2002 - 20:35 #9
Your welcome Thomas, did it bare fruit?
17. april 2002 - 20:39 #10
Well, he wrote me, and I called him back. We had a small talk and arranged a meeting next week. So lets see :o)

Thnx again!
Avatar billede terry Ekspert
17. april 2002 - 20:47 #11
Great to hear :o)
Avatar billede fynbohans Nybegynder
17. april 2002 - 23:54 #12
Ugenummer kan findes med funktionen DateDiff.
De danske regler følger ISO-standarden, som er
1.Første dag i ugen er mandag.
2.Uge 1 er den uge som indeholder den 1.januar, dog skal der være mindst 4 dage
  i ugen. Dvs.hvis 1.januar er en fredag starter uge 1 den følgende mandag.
Punkt 2 betyder man skal bruge konstanten vbUseSystem i funktionen.
Avatar billede susanne_larsen Nybegynder
18. april 2002 - 00:40 #13
> fynbohans
jep kender godt dateDiff, men kan du ikke lige uddybe lidte mere

> thomasjepsen - du er nok ikke den helt store tilhænger af MS books, va?? - lol - til deres forsvar skal dog siges, at de ikke alle er ringe.......
Avatar billede susanne_larsen Nybegynder
18. april 2002 - 00:42 #14
>terry
combobox - nope not yet. Sidder seriøst og hygger mig en anden generende detalje, som er ved at drive mig til vandvid.....

men har fået et stædighedsflip skal kunne lade sig gøre at vise ugenr
Avatar billede fynbohans Nybegynder
18. april 2002 - 02:00 #15
AktuelUge = DateDiff("ww", "1-1", Now, 0, 0) + 1

Må tilstå, at jeg kun kendte de danske regler fordi jeg skulle bruge det til
et tipsprogram for nogle år siden ............!
18. april 2002 - 07:43 #16
Hvorfor ikke bare skrive: Format(Date, "ww")
Avatar billede susanne_larsen Nybegynder
18. april 2002 - 10:09 #17
>thomasjepsen - nej du kan ikke nøjes med Format(Date, "WW") da Access så regner forkert - har jo engelsk/am kalender. Dvs. deres uge begynder om søndagen og ikke om mandagen - bliver noget værre skod hvis man glemmer det - lol
18. april 2002 - 19:22 #18
Men Access benytter jo bare indstillingerne i kontrolpanellet!?
Avatar billede susanne_larsen Nybegynder
18. april 2002 - 20:00 #19
>fynbohans

ja din kode kan bruges til at fortælle hvilken uge vi er i nu. Men var ikke helt det jeg havde i tankerne. Det der rigtigt kunne være smart var hvis bruger ex vælger januar 2002 så er i stand til at se hvilke ugenumre der indgår i den valgte md

ved bare ikke rigtig hvordan pokker jeg kan gøre det. OK kunne vælge terry´s metode og oprette cboBox men tallene fra 1-53, og så skal knappen trykkes ned på den første dato i valgte uge.

Ex jeg vælger uge 2, og knap med mandag den 07-01 trykkes ned

er der nogen der har en god ide til hvordan jeg kan løse dette??
Avatar billede terry Ekspert
18. april 2002 - 20:37 #20
You convert the year + week number to a date (monday is first day of week) and then you move the calendar to that date.

I've sent you a mail Susanne, have your received it?
Avatar billede susanne_larsen Nybegynder
18. april 2002 - 20:44 #21
> terry

ok vil prøve det

nope havn´t recieved any mail from you yet - I´ll just have at theck
Avatar billede susanne_larsen Nybegynder
18. april 2002 - 20:53 #22
> terry jes just recieved your mail :-)
Avatar billede fynbohans Nybegynder
19. april 2002 - 00:53 #23
Du kan godt indsætte en anden dato end Now i DateDiff, men funktionen tæller kun
antallet af uger, og ved ikke noget om hvad vi kalder dem. Var lidt for hurtig og
mente fejlagtigt at det var nok at bruge vbUseSystem.
Reglerne skal indbygges i funktionen. Efter mange spekulationer endte det med, at jeg i sin tid  startede med et år, hvor 1.januar var en mandag og regnede frem. Ikke VBA eller Visual Basic.
Hvis du vil bruge vba kan funktionen WeekNumber findes på www.freevbcode.com.
Avatar billede susanne_larsen Nybegynder
19. april 2002 - 08:28 #24
>fynbohans
tanx for linket - ser interessant ud den side.

Vil prøve at grave lidt videre på en eller anden løsning :-)
Avatar billede susanne_larsen Nybegynder
19. april 2002 - 21:30 #25
Hej Alle

HURRA tror s.... jeg har fundet metoden

Private Sub cboUgenr_Change()
  ' Find aktuelle ugenummer
  Dim CurWeek
  CurWeek = DatePart("ww", Now, vbMonday, vbFirstFourDays)
 
  ' Find Mandag i uge 1
  Dim DayWeek1
  DayWeek1 = DateAdd("ww", -CurWeek + 1, Now + 1 - Weekday(Now, vbMonday))
 
  ' Find valgte ugenummer og træk 1 fra
  Dim WeekDiff
  WeekDiff = CInt(cboUgenr.Text) - 1
 
  ' Udregn uger til antaldage
  Dim Diff
  Diff = WeekDiff * 7
 
  ' Læg antal dage til 1. dag i uge 1
  calDatoValg.Value = DateAdd("d", Diff, DayWeek1)
 
End Sub
20. april 2002 - 15:23 #26
Var der slet ikke nogle af alle disse svar/kommentarer, som fortjente nogle point? Umiddelbart synes jeg da at Fynbohans hjalp dig rimelig godt på vej!
Avatar billede fynbohans Nybegynder
20. april 2002 - 15:29 #27
Virker det omkring årsskriftet? Den 29.december i år er en kritisk dato fordi mandag i uge 1
2003 er den 30.december 2002.
Avatar billede terry Ekspert
20. april 2002 - 15:32 #28
well if it doesnt work for 2003 week 1 then I have a routine that does!
Avatar billede terry Ekspert
20. april 2002 - 15:32 #29
complies with DS/EN 28601.
Avatar billede terry Ekspert
20. april 2002 - 15:39 #30
It does work Susanne :o)
Avatar billede susanne_larsen Nybegynder
20. april 2002 - 17:30 #31
> nej egentlig ikke - sorry

Var selv inde og vende omkring det med en combobox, men det jeg engentlig efterlyste var indsættelse af en ekstra kolonne i Xobjektet så der ud for hver enkelt nye uge var angivet dette.

Sorry hvis jeg ikke har formuleret mig tydeligt nok :-)

>thomasjepsen
Men selvfølgelig hvis du syntes at fynbohans og I andre skal have nogle points, så for min skyld gerne. Kan da dele puljen i 4 lige dele??? - G*****
Avatar billede susanne_larsen Nybegynder
23. april 2002 - 20:12 #32
terry, fynbohans & thomasjepsen

Så har jeg delt points i 3 - 10 til hver af jer

:D Susanne
Avatar billede susanne_larsen Nybegynder
05. juni 2002 - 22:15 #33
fynbohans har oprettet lidt point til dig her

http://www.eksperten.dk/spm/220813

:D Susanne
Avatar billede Ny bruger Nybegynder

Din løsning...

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.

Loading billede Opret Preview
Kategori
Dyk ned i databasernes verden på et af vores praksisnære Access-kurser

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester