Dansk Regneark Forum
  Hjælp Hjælp  Søg i forum   Arrangementer   Opret ny bruger Opret ny bruger  Log ind Log ind


Emne lukketDatostempel

 Besvar Besvar
Forfatter
Jørgen Se dropdown
Bronze bruger
Bronze bruger
Avatar

Medlem: 28.Maj.2010
Land: Danmark
Status: Offline
Point: 72
Direkte link til dette indlæg Emne: Datostempel
    Sendt: 09.Feb.2011 kl. 11:02
Hej
I BST Utilities er der en funktion der indsætter datostempel. Det virker fint.
 
Mit problem er bare at jeg gerne vil have excel til at indsætte datostempel i en celle, når en anden celle når en bestemt værdi.
 
Hvis jeg bruger en normal "IF" og =TODAY(), så vil datoen blive opdateret hvergang jeg åbner arket.
Hvordan kan man få excel til at indsætte dagsdato, og så "låse" datostemplet, så det ikke ændre sig?
 
MVH
Jørgen
Til top



Til top
Allan Se dropdown
Forum Admin
Forum Admin
Avatar
Forum Admin

Medlem: 03.Feb.2010
Land: Danmark
Status: Offline
Point: 10330
Direkte link til dette indlæg Sendt: 09.Feb.2011 kl. 11:48
Hej Jørgen,
 
Du kan bruge denne makro:
 
Sub FrysDato()
If Range("A1").Value = "DinVærdi" Then Range("B1") = Format(Now, "dd-mm-yyyy")
End Sub
Koden kigger i A1
Hvis teksten i A1 = DinVærdi så Skrives dags dato i B1
 
Ved du hvordan man lægger den ind og tilretter den dit behov?
 
//Allan
Til top
Jørgen Se dropdown
Bronze bruger
Bronze bruger
Avatar

Medlem: 28.Maj.2010
Land: Danmark
Status: Offline
Point: 72
Direkte link til dette indlæg Sendt: 09.Feb.2011 kl. 11:56
Hej Allan
 
Det var hurtigt!!
Så vidt jeg kan se har din makro samme problem som en almindelig "IF" formel.
 
Hvis man kører makroen flere gange, så vil den opdaterer datoen.
Et andet problem er at det er en hel kollonne med værdier, som efterhånden når den værdi som jeg måler på, og når de så har den værdi, så vil jeg gerne have sat et datostembel.
 
Din makro kikker så vidt jeg kan se kun på en enkelt celle, og kræver at man "aktiverer" den for at få sat datoen. (så kan man jo lige så godt skrive den)
 
Kan du se problemet?
 
MVH
Jørgen
Til top
Allan Se dropdown
Forum Admin
Forum Admin
Avatar
Forum Admin

Medlem: 03.Feb.2010
Land: Danmark
Status: Offline
Point: 10330
Direkte link til dette indlæg Sendt: 09.Feb.2011 kl. 12:08
Hej Jørgen,
 
Både ja og nej, makroen har den fordel at den kun opdaterer datoen når makroen bliver kørt, dermed kan man selv styre hvornår handlingen udføres.
En formel vil derimod automatisk korrigere datoen hvis kriteriet er mødt, du kan med andre ord ikke styre den.
 
Du skriver en hel kolonne, kan du definere lidt nærmere.
Lidt á la:
 
Hvis værdien i området A1: A100 er lig med 'Ja' så skal der sættes dags dato i kolonne B
Hvis der i forvejen står en dato, feltet ignoreres og koden skal gå videre til næste.
Koden ville i så fald være:
 
Sub FrysDato()
MinVaerdi = "Ja"
For Each c In Range("A1:A100").Cells
    If c.Value = MinVaerdi And Range("B" & c.Row).Value = "" Then
        Range("B" & c.Row).Value = Format(Now, "dd-mm-yyyy")
    End If
Next c
End Sub
 
//Allan
Til top
Jørgen Se dropdown
Bronze bruger
Bronze bruger
Avatar

Medlem: 28.Maj.2010
Land: Danmark
Status: Offline
Point: 72
Direkte link til dette indlæg Sendt: 09.Feb.2011 kl. 12:25
Hej Allan
Jeg tror at vi nærmer os noget jeg kan bruge. Prøver lige at arbejde lidt videre med det. Hvis jeg går i stå, så vender jeg tilbage.
Tak for hjælpen (indtil nu)
 
Jørgen
Til top
Allan Se dropdown
Forum Admin
Forum Admin
Avatar
Forum Admin

Medlem: 03.Feb.2010
Land: Danmark
Status: Offline
Point: 10330
Direkte link til dette indlæg Sendt: 09.Feb.2011 kl. 12:56
Velbekomme Jørgen, Tak for din tilbagemelding Wink
Kom endelig tilbage hvis du møder udfordringer på vejen.
 
//Allan
Til top
Guests Se dropdown
Gæst
Gæst
Direkte link til dette indlæg Sendt: 12.Feb.2011 kl. 18:41

Jeg beklager, hvis dette opfattes som et forsøg at stjæle tråden men det er så beslægtet så jeg tænkte det ikke gjorde så meget at samle det.

Jeg står overfor at skulle bruge noget tilsvarende, og jeg har da også fået denne til at virke. Min udfordring består dog i at, jeg gerne skulle have en slags "nu" stempel der registrerer, når nogen har ændret i et givet felt. Eks.
Kolonner er de forskellige trin i en opgave (Består af 5 trin)
Rækkerne er forskellige opgaver, der skal i arkiv når 5. trin er fuldført.
Hvert trin i en opgave kan udføres på forskellige tidspunkter af døgnet.
Når et trin er fuldført skal man sætte sine initialer i det tilsvarende felt - herefter skal makroen gerne selv sætte datostempel i feltet bag - et datostempelt der ikke ændrer sig
Jeg kan få makroen i denne tråd til virke, men det giver det samme datostempel hele vejen ned gennem rækkerne.
 
Til top
rassten Se dropdown
Guld bruger
Guld bruger


Medlem: 26.Okt.2010
Status: Offline
Point: 694
Direkte link til dette indlæg Sendt: 13.Feb.2011 kl. 12:08
måske noget i stil med


Private Sub Worksheet_Change(ByVal Target As Range)

If Target.Cells.Count <> 1 Then Exit Sub

    Userinput = Target.Value
        NewInput = Userinput & " " & Now
    Application.EnableEvents = False
        Target = NewInput
    Application.EnableEvents = True
   
End Sub

VH rassten

Arbejde excel 2010
Privat excel 2010
Til top
Jørgen Se dropdown
Bronze bruger
Bronze bruger
Avatar

Medlem: 28.Maj.2010
Land: Danmark
Status: Offline
Point: 72
Direkte link til dette indlæg Sendt: 15.Feb.2011 kl. 09:26
Jeg kæmper stadig!!
 
I vedlagte regneark vil jeg gerne have et datostempel, når status ændre sig til værdien i A5 = "afsluttet".
På ark 1 har jeg prøvet at lave en makro som jeg har stykket sammen af forskellige indput fra nær og fjern. Jeg er ikke sikker på at jeg selv ved hvad jeg har gang i !!!
 
På ark 2 har jeg forsøgt at få den til at køre Allans makro, når arket aktiveres, men uden held.
 
Det jeg allerhelst vil have, det er at der i kolonne B sættes en dato ud for den celle i kolonne A der ændres til "Afsluttet", og helst lige så snart cellen forlades. - Alternativt når arket åbnes
 
Er der en der vil gøre et forsøg?
 
 
Jørgen
Til top
Allan Se dropdown
Forum Admin
Forum Admin
Avatar
Forum Admin

Medlem: 03.Feb.2010
Land: Danmark
Status: Offline
Point: 10330
Direkte link til dette indlæg Sendt: 15.Feb.2011 kl. 09:56

Hej Jørgen,

Jeg må med røde ører indrømme at jeg har skrevet forkert i den kode jeg postede til dig tidligere Embarrassed (Det er nu korrigeret mht. fremtidige læsere)
 
 
Når du ændrer status til 'Afsluttet' sættes datostempel, denne dato kan ikke ændres efterfølgende, så længe der står 'Afsluttet' i status.
Ændrer du status tilbage til 'Kørende' eller tom kan du slette datoen igen.
 
Prøv den lige af.
 
//Allan
Til top
Jørgen Se dropdown
Bronze bruger
Bronze bruger
Avatar

Medlem: 28.Maj.2010
Land: Danmark
Status: Offline
Point: 72
Direkte link til dette indlæg Sendt: 15.Feb.2011 kl. 11:45
Hej Allan
 
Tak for hjælpen - nu ser det ud til at virke - under forudsætning af at alle datoerne ikke ændre sig i morgen !!!Clap
 
Og så lige et spørgsmål.
Hvad er det der aktiverer makroen? Et eller andet sted må du jo fortælle den at den skal køre!
 
Jørgen
 
Til top
Allan Se dropdown
Forum Admin
Forum Admin
Avatar
Forum Admin

Medlem: 03.Feb.2010
Land: Danmark
Status: Offline
Point: 10330
Direkte link til dette indlæg Sendt: 15.Feb.2011 kl. 13:08
Hej Jørgen,
 
Det var godt det virkede nu.
Grunden til at makroen kan 'Mærke' at du ændrer en status, er en såkaldt event.
Inde i VBA-editoren ligger koden under arket 'Datostempel ved ændring'
 
Den ser i seneste version således ud:
 
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column > 2 Or Target.Row < 11 Then Exit Sub
FrysDato
End Sub
 
Sub'en 'FrysDato' startes når det sker en ændring i arket. (Kun i kolonne A og B og i række 11 og ned)
 
Disse events, kan også laves til at starte ved markering af bestemte celler, dobbleltklik, aktivering eller deaktivering af arket blot for at nævne nogle stykker.
 
//Allan
 
Til top
 Besvar Besvar

Skift forum Forum tilladelser Se dropdown

© 2010 - 2024 Dansk Regneark Forum - en del af Excel-regneark.dk