Avatar billede djelvis Nybegynder
30. juli 2002 - 14:06 Der er 14 kommentarer og
1 løsning

oret kalender i acces?? 200 point gives for et brugbart svar!!

jeg skal have lavet en tabel i acces!
tabellen skal indholde følgende felter:
dag (mandag, tirsdag, onsdag, osv.)
dato (feks. 16-06-2007)
måned (januar, febuar, osv.)
år (2002, 2003, 2004, osv.)

problemet er ikke at lave tabellen! men hvordan hulen slipper jeg for at sidde og indtaste samtlige dage, datoer, måneder, og år frem til år 2025 ?????
har prøvet at importere kalenderen fra outlook men den vil ikke medtage kalenderen den tager kun de de ting man selv har skrevet i kalenderen og dem skal jeg ikke bruge!
findes der et sted man kan downloade en færdig tabel (helst på dansk men kan evt. bruge en engelsk hvis der ikke findes en dansk)???
eller kan man indskrive en tabel som kode??? hvis ja hvad er så koden og hvor skal den indskrives og hvordan gøres det????
HJÆLP mig jeg skal bruge det i en afleverings opgave i næste uge !! så jeg har travlt derfor de mange point.
Avatar billede a1a1 Novice
30. juli 2002 - 14:16 #1
du skal ikke lave det sådan..

du laver en tabel der indeholder dato, overskrift, beskrivelse

i denne tabel indsætter du så de "aktiviteter" der nu er.

når du udskriver kalenderen kan du så "checke" om der er noget på den pågældende dag. (der er også en mere "besværlig" og "smartere" måde at gøre det på)

;)
Avatar billede a1a1 Novice
30. juli 2002 - 14:17 #2
selve kalenderen kan du jo lave med asp eller i access (med vba), det kommer jo an på hvad du skal bruge..(asp eller "bare" access)
Avatar billede proaccess Nybegynder
30. juli 2002 - 14:31 #3
Du skal kun registrere selve datoen (som et heltal), derefter kan du formattere dit til resten...

Jeg kommer snart med et link til en db til dig...
Avatar billede terry Ekspert
30. juli 2002 - 14:36 #4
If you have a date field then youdo NOT need dag, måned, år you can use the Datepart() function to find these.


then you can use the following function to add your dates (starting from the current date).

Function FillDates()
Dim ldays As Long
Dim linx As Long

    ldays = DateDiff("d", Date, CDate("2025-12-31"))
   
   
    For linx = 0 To ldays
   
        DoCmd.SetWarnings False
        DoCmd.RunSQL "INSERT INTO tblDato (dato) VALUES ( '" & Format(DateAdd("d", linx, Date), "yyyy-mm-dd") & "')"
        DoCmd.SetWarnings True
       
    Next linx

   
End Function
Avatar billede nih Novice
30. juli 2002 - 14:36 #5
den her kan du måske bruge:
Sub datoer()
'tabelnavn = tbldatoer
'feltNavn = dato

Const dtStart As Date = #1/1/2000#
Const dtStop As Date = #1/1/2010#
Dim dtdag As Date

Dim rst As Recordset
Set rst = New ADODB.Recordset
rst.Open "tblDatoer", CurrentProject.Connection, adOpenKeyset, adLockOptimistic

dtdag = dtStart
Do While dtdag <= dtStop
  rst.AddNew
  rst!dato = dtdag
 
    dtdag = dtdag + 1

Loop
End Sub

den putter 10 år ind i tabellen tbldatoer
beregninger af ugedag, måned og år skal foregå via foresp. og ikke gemmes i tabellen.

Niels
Avatar billede proaccess Nybegynder
30. juli 2002 - 14:37 #6
Her er den så:

  www.infoom.dk/proaccess/datoer.mdb (320KB)
Avatar billede terry Ekspert
30. juli 2002 - 14:38 #7
The loop isnt so smart
        DoCmd.SetWarnings False

For linx = 0 To ldays
   
        DoCmd.RunSQL "INSERT INTO tblDato (dato) VALUES ( '" & Format(DateAdd("d", linx, Date), "yyyy-mm-dd") & "')"
       
    Next linx
        DoCmd.SetWarnings True
Avatar billede keysersoze Ekspert
30. juli 2002 - 14:47 #8
skal du kun bruge det i en database - eller skal du bruge det på en hjemmeside med fx asp?
Avatar billede mugs Novice
30. juli 2002 - 16:46 #9
Jeg har en testdb i access97. Fungerer også i 200. Læg din e-mail hvis du vil have den.
Avatar billede mugs Novice
30. juli 2002 - 17:25 #10
For andre interesserede. I starten af koden kommer der 2 Inputbokse, der spørger om den 1. dato der skal oprettes, derefter 1 mere, der beder om den sidste dato. Når begge datoer er indtastet fortsætter koden, og tilføjer samtlige datoer, der ligger imellem de 2 indtastede. Det er således fuldstændig ligegyldigt, om man indtaster 2 datoer, der ligger 1 uge, 1 år eller for den sags skyld 10 år imellem. Perioden bliver oprettet.


For Startdato = Dato1 To Dato2
Set Rst = DBEngine.Workspaces(0).Databases(0).OpenRecordset_("Aktivitetsoversigt")
    With Rst
    .AddNew
    ![Startdato] = Startdato
    ![Ugedag] = Startdato
    .Update
End With
Next
Me.Requery
Avatar billede d.e Nybegynder
30. juli 2002 - 19:13 #11
vil ikke håbe at din opgave har noget med programmering at gøre...:)
Avatar billede d.e Nybegynder
30. juli 2002 - 19:18 #12
ups... forkert bruger.... (a1)
Avatar billede a1a1 Novice
30. juli 2002 - 19:19 #13
:)
man skal lige checke når andre har brugt komputeren....:)
Avatar billede proaccess Nybegynder
22. september 2002 - 12:57 #14
For god ordens skyld skal jeg oplyse at jeg har flyttet databasen til:

http://www.infoom.dk/download/eksperten/datoer.mdb
Avatar billede djelvis Nybegynder
10. maj 2003 - 12:10 #15
jeg vil give pointene til proaccess men hvordan gør jeg jeg mangler min accepter svar knap
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