12. september 2003 - 12:16Der er
23 kommentarer og 1 løsning
Hvordan får man sidst ændret dato ind i en celle
Jeg har et regneark hvor jeg skal have en månedangivelse ind, som fortæller andre hvilken måned tallene i arket er fra.
Tallene bliver opdateret f.eks. den 4/9-03 og indeholder så kun tal til og med august. I feltet skal der derfor stå august.
Havde først overvejet bare at skive Idag()-30, men det går ikke, for hvis man så går ind i arket den 1/10-03, vil der stå september, selvom tallene endnu ikke er opdateret.
Kan man på en eller anden måde få sidst ændret dato ind? Eller en anden måde at styre det?
I dette særtema ser vi på, hvordan cloud og AI bliver fundamentet for virksomhedernes digitale forretning, og hvordan de nye muligheder for automatisering og forretningsværdi kan udnyttes uden at miste overblik, sikkerhed og menneskelig kontrol.
Hvis du vil have månedens navn kan du bruge denne modificerede version:
Function Lastmonth() a = DatePart("m", Date) - 1 Select Case a Case Is = 1 Lastmonth = "Januar" Case Is = 2 Lastmonth = "Februar" Case Is = 3 Lastmonth = "Marts" Case Is = 4 Lastmonth = "April" Case Is = 5 Lastmonth = "Maj" Case Is = 6 Lastmonth = "Juni" Case Is = 7 Lastmonth = "Juli" Case Is = 8 Lastmonth = "August" Case Is = 9 Lastmonth = "September" Case Is = 10 Lastmonth = "Oktober" Case Is = 11 Lastmonth = "November" Case Is = 12 Lastmonth = "December" End Select End Function
5 tallet er nødt til at være lig opdateringsdagen. Så formlen skal rettes afhængig af dagen. Eller der kunne være en speciel celle til den der opdaterer.
Har jeg så ikke stadig samme problem med, at hvis jeg er kommet ind i oktober og ikke har fået opdateret mine tal, så vil der alligevel stå september. Der skal jo stadig stå august.
Men det kan også være jeg bare ikke er helt klar over hvad funktionen laver.
Hvis du skal kunne gå ind i en hvilken som helst måned og opdatere, tror jeg ikke umiddelbart det kan gøres på den måde. Man kan tage udgangspunkt i aktuel måned, men regnearket kan jo ikke umiddelbart se, om du "huskede" at opdatere i sidste måned.
Du kunne jo afsætte en kolonne til udelukkende at lægge en dato ind for sidst opdateret - hver gang der opdateres. Det betyder selvfølgelig at din opdaterings procedure skal lægge dagsdato nederst i kolonnen (eller øverst). Så har du efterfølgende en kolonne med alle opdateringsdatoerne som du så kan bruge i en formel. Spørgsmålet er så hvad din opdatering går ud på. Køres der f.eks. en makro ?
Måske er der der en, der kan finde en løsning, men jeg kan ikke lige gennemskue, hvordan den skal kunne vide om en opdatering fx 2-10-03 gælder september eller august (eller for den sags skyld Maj), hvis ikke brugeren på en eller anden måde fortæller det.
Så kunne du jo slutte din makro af med sub'en Sub Indsæt_Dato() Range("BB1").Select ActiveCell.FormulaR1C1 = "=TODAY()" Selection.Copy Selection.PasteSpecial Paste:=xlValues End Sub Så indeholde "BB1" altid seneste opdateringsdato. Din formel kunne så bare hedde: = BB1 , formateret som : mmmm
OK - formlen er ikke i orden. Måske kunne BC1 udfyldes med den måned der så er opdateret med. Dvs. hvis dato er 1-10, men tal er fra 8mdr ikke 9mdr. kræver det lidt regler.
Hvis dag er større end 4 så sidste måned ellers forrige måned. Gælder det ?
Problemet er hvis perioden i den nye måned indtil der bliver opdateret. Jeg kan som tidlige nævnt ikke se/forstå at din kode løser det problem.
Koden virker godt nok nu, der indsættes 8 eller august i cellen. Vil cellen ikke automatisk ændre sig til 9 eller september når Pc'ens dato skifter til 1/10? Hvis det er tilfældet duer det ikke ellers er det super.
Men min kode løser ganske rigtigt ikke det problem at den opdatering, du kører 1. oktober egentlig hører til september. Så i så fald vil den skrive september i stedet for august.
Hvis den skal løse det problem skal du over i en noget mere komp´leks løsning der sammenligner aktuel dato med sidste opdateringsdato eller lignende, som aheiis er inde på.
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.