11. november 2010 - 18:06Der er
4 kommentarer og 1 løsning
Opslag i andet ark og returnere flere cellers værdier
Jeg har brug for, i regneark1 på et netværksdrev, at slå op i regneark2 (der har 3 arkfaner og ligger på samme netværksdrev), for at hente forskellige værdier.
Jeg har en lang række af "ens" unikke værdier i regneark1 som findes i regneark2 (ark1, ark2, ark3 i kolonne G i cellerne G11, G21, G31 osv. i spring på 10 rækker nedaf.
Jeg har brug for at få returneret måske i alt 15 celleværdier for hver unik værdi som regneark1 finder i regneark2 (måske endda hele området A1:H12). I området A1:H1 er der i øvrigt flettede celler, hvis det ellers har noget at sige.
Fælles for alle disse værdier er, at de alle ligger de samme steder i forhold til opslagsværdien i G11, G21 osv.
Jeg har prøvet flere forskellige opslagsfunktioner, bl.a. Forskydning" som jeg måske kan bruge hvis jeg kan finde og kombinere funktionen med en anden funktion der kan slå op i regneark2 og returnere cellereferencen på opslagsværdien
Hvis jeg har cellereferencen på den unikke værdi i regneark2 og ellers kan finde ud af at referere til den i funktionen "Forskydning" kan det måske lade sig gøre?
Den moderne arbejdsplads er i stigende grad afhængig af mødelokaler til at fremme samarbejde, men dette skift medfører også stigende sikkerhedsudfordringer.
Jeg tror du er nødt til at forklare dig bedre, jeg kan i hvert fald ikke greje hvad der skal slås op hvordan? Hvordan hænger området A1:H12 sammen med G11, G21, G31... ? I hvilket ark og hvilken fane ligger området hhv. rækkerne? Og hvad er linket til regneark1? Kan du evt. eksemplificere?
Ok, jeg prøver lige igen. Det er 2 regneark der ligger på samme netværksdrev der skal snakke sammen. Regneark1 skal hente data fra regneark2 og ikke omvendt.
I regneark1 i celle A1 står en unik værdi. Denne værdi findes et eller andet sted i regneark2 i cellen G11, eller i cellen G21, G31, osv. i spring på 10 rækker indtil celle G:3031.
Når Excel har fundet ud af i hvilken celle den unikke værdi står i, i regneark2, skal jeg have returneret flere celler der ligger i umiddelbar nærhed af cellen i regneark2.
Hvis vi antager at værdien findes allerede i celle G11 i regneark2 skal jeg have overført værdierne i de omkringliggende celler til Regneark1. Cellerne der skal overføres er pt. G3:G10 + D7:E11 + A3:E6, + yderligere et par celler som ikke er helt fastlagt endnu. Hvis værdien i stedet findes i celle G21, skal jeg i stedet have følgende celler/celleområder overført: G13:G20 + D17:E21 + A13:E16 - altså fra 10 rækker længere nede. Der er altså et system med at de celleområder jeg skal have hentet, ligger i samme bestemte område i forhold til opslagsværdien.
Jeg kan ikke bare nøjes med at lave en kæde mellem de 2 ark, da opslagsværdien i regneark1 kan ligge i celle G11 i regneark2 den ene dag og måske i celle G3031 i morgen.
Jo, nu blev det klarere, omend noget uskønt - det med at tingene ligger i hver 10. række gør det hele ganske besværligt - og et tegn på at Excel reelt ikke er det optimale værktøj.
Men givet din struktur vil jeg mene du skal ud i noget VBA. Der er dog så mange ting der ikke er 100% skarpe, at jeg desværre må melde pas på at forsøge at hjælpe dig med det her.
Jeg er helt enig i din betragtning, det er noget knold at bruge excel på denne måde, men desværre kan det ikke være anderledes.
Jeg kan ikke intet vba, men efter lidt rødvin her til aften, forestiller jeg mig følgende "kode" på Ny VBA'sk...
If .Value = "regneark1;opslagsværdi" Then (Skal finde cellen i regneark2 der matcher opslagsværdien i regneark1)
Get ActiveCell.Offset(-5:5, -5:5).Value (Skal hente celleværdierne i regneark2 der ligger i umiddelbar nærhed af fx G11)
Nu ser det pludselig nemt ud....
Det er vel egentlig en slags avanceret lopslag jeg skal bruge, men hvor værdierne der skal hentes, befinder sig i celler både ovenover opslagsværdien og til begge sider.
Jeg har løst problemet ved - for hver 10. række -, at kopiere de ca 15 udvalgte celler ud i en kolonne længst ude til højre i regnearket, så dataene for hver "post" bliver dubleret, men nu ligger i samme række.
Dernæst har jeg indspillet en makro der kopierer disse nye rækker over i et nyt ark, sorterer og gemmer.
Nok ikke en særig elegant løsning, men det virker!
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.