09. september 2006 - 18:13Der er
24 kommentarer og 1 løsning
Hjælp til LOOKUP
Jeg har et regneark, med 52 ark et for hver uge. I de ark er der på samme pladser nogle data jeg gerne ville kunne slå op til et nyt ark. F.eks er der i kolonne A celle 10,13,16,19,22,25,28 datoer og i kolone C celle 10,13,16,19,22,25,28 er et time antal.
Jeg ville gerne hvis jeg på et nyt ark indtaster en given dato, at den så selv kan finde den dato, og hente time antalet. Jeg kan ikke få det til da datoerne jo vil sprede sig over flere ark (1 uge på ark. Kan godt lave en alm lookup, men kan som sagt ikke se hvordan jeg gør på flere ark.
Senere skal jeg have lavet en userform der henter værdien fra det nye ark, men det tror jeg nok jeg er ved at have lidt styr på (fundet hjælp herinde)
For at forklare lidt, så er det nogle pumper hvor der skrives timer de har kørt ind, jeg vil så gerne kunne slå op hvormange timer de har gået på en given dato, så når der laves inspection på dem kan man også se timer den dag de blev inspiceret, og derved se hvormange timer siden sidste insp.
Function findtal(dato As Date) Dim ws As Worksheet Dim selle, værdi Application.Volatile For Each ws In ActiveWorkbook.Worksheets For Each selle In ws.Range("A10:A28") If selle.Value = dato Then værdi = selle.Offset(0, 1) Next Next findtal = værdi End Function
Function findtal(dato As Date) Dim ws As Worksheet Dim selle, værdi Application.Volatile For Each ws In ActiveWorkbook.Worksheets If ws.Name <> ActiveSheet.Name Then For Each selle In ws.Range("A10:A28") If selle.Value = dato Then værdi = selle.Offset(0, 2) Next End If Next findtal = værdi End Function
Kan faktisk klares med en Vlookup Jeg ved ikke lige hvad de hedder i engelsk version men her er den danske formel, som forudsætter at du har navngivet dine ark som ugenumre (1, 2, 3 osv) og at ugen går fra mandag til søndag, med opslagsværdi i A1 i dit samleark.
Hva Søren excelent - er du også oppe så sent. Ja hvad skal man ellers lave en lørdag nat, end at være på eksperten :-) Jamen tak for det, din makro fungerer skam også til UG og slange, så det er så bare et temperamentsspm. om hvad man vil bruge.
Har i øvrigt surfet lidt omkring de engelske funktioner og oversat formlen til engelsk:
Jeg har indsat denne: =VLOOKUP(A1;INDIRECT(IF(WEEKDAY(A1;2)=7;WEEKNUM(A1;1)-1;WEEKNUM(A1;1))&"!a8:c28");3;0) Den virker ok, men henter værdier fra forkerte celler. Den henter fra C 8,11,14,17,20,23,26. Den skulle hente fra C10,13,16,19,22,25,28,,, da den første celle range indeholder, kun halvdelen af den total jeg skal bruge fra C10,13,16,19,22,25,28 Ellers er det lige sådan en formel jeg kiggede efter.
Men vil den ikke se i hele kolonne A? Problemet ved det er at jeg gentager datoerne for pumpe 1 A8,11,14,17,20,23,26 pumpe 2 A54,57,60,63,66,69,72 pumpe 3 A98,101,104,107,110,113,116. Formlen skal "kun" se efter datoer for f.eks pumpe 1
=INDEX(INDIRECT(IF(WEEKDAY(B2;2)=7;WEEKNUM(B2;1)-1;WEEKNUM(B2;1))&"!C8:C28");MATCH(B2;INDIRECT(IF(WEEKDAY(B2;2)=7;WEEKNUM(B2;1)-1;WEEKNUM(B2;1))&"!A8:A26");0)+2;) Hed den da
Havde lige glemt dette.. UPS Er der mulighed for at den kan lægge værdien af en celle C7 til fra det ark den finder udfra datoen? Og hvis jeg skal have en værdi C30 over for sig selv, men også fra det ark den finder ud fra datoen Så tror jeg ikke jeg skal forstyre dig mere:)
Ja det er muligt I din nuværende formel + INDIRECT(IF(WEEKDAY(B2;2)=7;WEEKNUM(B2;1)-1;WEEKNUM(B2;1))&"!C7") Og en ny Formel: =INDIRECT(IF(WEEKDAY(B2;2)=7;WEEKNUM(B2;1)-1;WEEKNUM(B2;1))&"!C30")
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.