03. marts 2005 - 21:49Der er
14 kommentarer og 1 løsning
Indsætte "Create Date"
Kan man ikke, som i Word, indsætte "Create Date" i en skabelon, således at når man åbner den vil dagens dato blive indsat og fixeret, så den ikke, hvis man åbner xls-filen dagen efter, bliver opdateret?
Du kan lave en f.eks. lave en funktion som nedenfor of så blot kalde den fra cellen. Det betyder selvfølgelig at den bliver kaldt hver gang dokumentet åbnes, men det betyder vel ikke noget.
Function GetCreateDate() As Variant GetCreateDate = ActiveWorkbook.BuiltinDocumentProperties.Item("Creation date") End Function
sjap-> Så vidt jeg husker giver Creation date datoen for skabelonens oprettelse, ikke datoen, hvor de enkelte dokumenter oprettes. Er det ikke korrekt?
Da du nævnte det, synes jeg faktisk også, at jeg havde hørt noget i den retning, så derfor måtte jeg lige teste det, men når jeg tænker over det, så har du på en måde ret:
Hvis man gemmer funktionen i en skabelon, vil "Create Date" være den dato, hvor skabelonen blev oprettet. Det har jeg ikke testet, men det lyder umiddelbart sandsynligt.
Det som jeg testede var at funktionen virkede i et nyt regneark, mens funktionen selv er placeret i mit generelle lille xla-bilbliotek. Og her fungerer det fint nok.
Jeg har ikke arbejdet så meget med skabelonen, så jeg har ikke lige nogen jeg kan teste det på.
Tak for input. Hvordan er det nu lige med "function"? sætte ind og aktivere. Jeg vil prøve dit forslag. Meningen er den, at den skal bruges i en Excel-skabelon således, at når jeg åbner et regneark baseret på skabelonen, skal i et felt den aktuelle dato indsættes og forblive som den er indsat. Altså IKKE aut. opdateres når jeg åbner regnearket senere.
Brug Alt-F11 og Menuen Indsæt/Modul (hvis der ikke i forvejen er et modul tilknyttet regnearket. Her kan du så kopiere funktionen ovenfor og sætte ind. Herefter kan du blot i din celle skrive
=GetCreateDate()
Så skulle det virke.
Men vær lige opmærksom på det som jkrons skriver om at i skabeloner er det sandsynligvis skabelonens CreateDate, der angives. Er det tilfældet, så sig lige til, så skal jeg nok komme med anvisninger på at lave et xla-bibliotek, så kan vi se om det ændrer noget.
Funktionen virker, men.... som jkrons var inde på, er det skabelonens oprettelsesdato, der genereres og bliver hængende, dvs. når man åbner et regneark baseret på skabelonen, har det skabelonens gamle dato sat ind. Ikke helt hvad jeg havde forestillet mig, men dog lidt i den rigtige retning.
I ThisWorkbook (i VBA editoren) indsætter du følgende kode:
Private Sub Workbook_Open()
If Not Worksheets("Ark1").Range("A1") > 0 Then Worksheets("Ark1").Range("A1") = Now End If
End Sub
Funktionen afvikles hver gang regnearket åbnes, og undersøger om der står et tal i celle A1 på faneblad Ark1. Hvis der ikke står noget skrives det aktuelle tidspunkt.
Du skal selvfølgelig lige rette Ark1 og A1 til din placering.
Ved ikke om det virker i skabelon, men det burde det, hvis du altså blot sørger for at datofeltet er tomt, når arket åbnes.
Hmm - har lige prøvet i min Office 2007 og her skriver den bare #NAME og ukendt fejl?
Men fedt at det virker - så må det være en fejl 40 her.
Synes godt om
Ny brugerNybegynder
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.