Avatar billede davmor Nybegynder
12. september 2003 - 12:16 Der 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?
Avatar billede overchord Nybegynder
12. september 2003 - 12:20 #1
Er en dropdown boks hvor personen der opdaterer vaelger maaned maaske en mulighed?
Avatar billede aheiss Praktikant
12. september 2003 - 12:27 #2
Jeg foreslår følgende formel
=HVIS(DAG(IDAG())<5;IDAG()-45;(IDAG()-30))

Cellen brugerformateres : mmmm
Avatar billede davmor Nybegynder
12. september 2003 - 12:28 #3
Resten af arket er lavet så den der opdaterer kun skal afvikle en makro.

Jeg foretrækker derfor en løsning der kan håndteres uden man aktiv skal gøre noget.
Avatar billede jkrons Professor
12. september 2003 - 12:30 #4
Læg dene funktion i et modul.

Function Lastmonth()
Lastmonth = DatePart("m", Date) - 1
End Function

Skriv =LASTMONTh i cellen hvor måneden skal stå.
Avatar billede davmor Nybegynder
12. september 2003 - 12:34 #5
Til aheiss

Hvis jeg bruger din metode, skal man vente til den 5 før man kan opdaterer. Desværre jeg troede lige den var der.
Avatar billede jkrons Professor
12. september 2003 - 12:36 #6
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
Avatar billede aheiss Praktikant
12. september 2003 - 12:37 #7
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.
Avatar billede davmor Nybegynder
12. september 2003 - 12:38 #8
Til jkrons

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.
Avatar billede jkrons Professor
12. september 2003 - 12:41 #9
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.
Avatar billede davmor Nybegynder
12. september 2003 - 12:45 #10
Hmm, det vil jeg være ked af.
Avatar billede aheiss Praktikant
12. september 2003 - 12:54 #11
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 ?
Avatar billede jkrons Professor
12. september 2003 - 12:55 #12
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.
Avatar billede davmor Nybegynder
12. september 2003 - 13:05 #13
Der køres en makro der opfrisker data i 24 underliggende ark som alle henter data fra access via Query.
Data præsenteres så måned for måned.
Avatar billede davmor Nybegynder
12. september 2003 - 13:07 #14
Hvis der laves en opdatering vil det altid være sidste måned der så er aktuel.

Der bliver opdateret hver måned, det kan bare ikke lade sig gøre at gøre det på en fast dato, da jeg er afhængig af data fra andre systemer.
Avatar billede jkrons Professor
12. september 2003 - 13:10 #15
Jo, men hvis du først kører opdateringen for august den 1.10 er det jo forrige måned, ikek sidste måneds tal, der vises.
Avatar billede davmor Nybegynder
12. september 2003 - 13:16 #16
Det korrekt

Det burde være en hypotetisk problemstilling, men man kan jo aldrig vide.
Avatar billede aheiss Praktikant
12. september 2003 - 13:17 #17
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
Avatar billede aheiss Praktikant
12. september 2003 - 13:25 #18
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 ?
Avatar billede jkrons Professor
12. september 2003 - 13:28 #19
Hvis det er en hypotetisk problemstling bør mit første forslag virke.
Avatar billede davmor Nybegynder
12. september 2003 - 13:41 #20
Til jkrons

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.
Avatar billede jkrons Professor
12. september 2003 - 13:45 #21
Det gør den ikke hos mig med mindre jeg selv går ind og opdaterer cellen. Men prøv det. Det kan være versionafhængigt.
Avatar billede jkrons Professor
12. september 2003 - 13:48 #22
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å.
Avatar billede davmor Nybegynder
12. september 2003 - 13:52 #23
Hej jkrons

Det fungere sku. Så vi lukker den her og du får dine point.

Tak for hjælpen.
Avatar billede jkrons Professor
12. september 2003 - 13:53 #24
Velbekomme!
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
Excel kurser for alle niveauer og behov – find det kursus, der passer til dig

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