11. april 2012 - 14:48Der er
12 kommentarer og 1 løsning
Arbejde med formlen "indirekte"
Jeg har et ark hvor jeg henviser til en række faneblade via formlen indirekte. Således kan jeg på mit hovedark (KPI) vælge hvilken af fanebladene jeg vil arbejde med. De 9 faneblade er ens i opsætning (regnskab).
Nu er jeg kommet i den kattepine at jeg ønsker at indsætte en linje i hver af de 9 faneblade, men idet Excel ikke "anderkender" teksten inden i formlen indirekte som en henvisning flytter den ikke henvisningerne.
Eksempel: =Indirekte($B$3&"!C92") giver jo en henvisning til fanebladet jeg skriver i B3 og henter celle C92 i det faneblad. Desværre vil jeg nu indsætte en linje i fanebladene, og derfor skal den for eftertiden henvise til celle 93.
Jeg har ca 1200 henvisninger på denne måde. Er der nogen redning?
Tja, ved ikke lige om du kommer uden om at skulle ændre alle henvisningerne, men hvis du havde navngivet C92 først, så havde det ikke være noget problem.
Jeg har lige lavet en test, hvor jeg navngav cellen i et andet ark, og så referede til cellenavnet istedet for nummeret, og så kan jeg godt indsætte en røkke før, uden at det giver problemer.
Så vil din formal se nogenlunde sådan ud: =Indirekte($B$3&"!CELLENAVN")
Synes godt om
Slettet bruger
11. april 2012 - 16:34#3
Hvis du bruger Excel 2007+ så lav det område hvor du henter data fra til en tabel (Indsæt, Tabel).
Konklusionen er nok at jeg burde have tænkt mig om inden jeg startede.
supertekst-it.dk - kan du komme med et forslag til hvordan det evt. skulle se ud? Kunne man forestille sig en VBA som lagde en til tallet i min henvisning? Altså =Indirekte($B$3&"!C92+1") i et nærmere defineret område. Min linje starter hedder i kolonne Y - altså: Y5 =Indirekte($B$3&"!C92") Z5 =Indirekte($B$3&"!D92") AA5 = Indirekte($B$3&"!E92")
Hvis jeg kunne have en VBA som jeg kan køre på hver linje er arbejdet hos nogetkun lettere.
Synes godt om
Slettet bruger
11. april 2012 - 17:25#5
Enig i din konklusion.
Men hvis ikke tabelløsningewn er en mulighed så kunne du måske overveje:
=INDIREKTE(B3&"!R"&RÆKKE('Ark1'!92:92)&"C3";0)
Hans
Synes godt om
Slettet bruger
11. april 2012 - 17:29#6
Glem venligst #5. Den dur selvfølgelig ikke.
Synes godt om
Slettet bruger
11. april 2012 - 19:46#7
Hvis du for eksempel Sheet1 B3 og:
=RÆKKE(Sheet1!A92) i B4
så prøv med:
=INDIREKTE("'"&$B$3&"'!R"&B4&"C3";0)
Hans
Synes godt om
Slettet bruger
12. april 2012 - 06:45#8
Det var vist ikke særlig klart det jeg fik skrevet i #7, så derfor prøver jeg lige igen.
Forudsætninger:
Ark1!B3 skal indeholde tekststengen Ark2 Ark1!B4 skal indeholde formlen: =RÆKKE('Ark2'!92:92) Ark2!C92:E92 indeholder de data der skal hentes til Ark1!Y5:AA5
I Ark1!Y5 indtastes:
=INDIREKTE($B$3&"!R"&$B$4&"C"&KOLONNE(C:C);0)
Formlen kopieres til højre til og med AA5.
Nu kan du indsætte rækker i Ark2 før række 92 og INDIREKTE-formlen vil justere sig selv.
Det virker skisme som planlagt - jeg forstår dog ikke hvorfor.
I min verden skriver indirekte jo (Ark2!R92C3). Kan du også hjælpe mig til at forstå det - kolonne giver jo blot nummeret på en kolonne - jeg fornemmer at den funktion kan blive god i lopslags situationer :-) Men hvis jeg manuelt skriver det jeg forventer Indirekte giver så forstår Excel det ikke.
Husk at smide svar.
Synes godt om
Slettet bruger
23. april 2012 - 17:45#11
=INDIREKTE($B$3&"!R"&$B$4&"C"&KOLONNE(C:C);0)
Jf. post #8 står der i B3 tekststrengen "Ark2" Jf. post #8 står der i B4 formlen:=RÆKKE('Ark2'!92:92) Denne formel er dynamisk i den forstand, at hvis du indsætter en række ovenfor række 92 i Ark2, så vil formlen tilpasse sig i overensstemmmelse hermed.
Følgende del af INDIREKTE-formlen: $B$3&"!R"&$B$4 returnerer tekststrengen "Ark2!R92" KOLONNE(C:C); reurnerer nummeret på kolonne C, det vil sige 3. Når formlen kopieres én til højre ændrer den sig til KOLONNE(D:D) der returnerer 4 osv. "C"&KOLONNE(C:C) returnerer tekststrengen "C3". Formlens sidste argument, det vil sige 0 (nul) angiver at der er tale om r1c1 notation (se hjælp hvis det ikke siger dig noget).
Hele udtrykket $B$3&"!R"&$B$4&"C"&KOLONNE(C:C) returnerer tekststrengen "Ark2!R92C3" der indsat i INDIREKTE funktionen returnerer værdien i Ark2, række 92, kolonne 3.
I og med, at den formel der står i B4 er "dynamisk" opnås at INDIREKTE-formlen tager højde for rækker der indsættes/slettes ovenfor række 92 i Ark2.
Det hjalp på forståelsen også - du mangler stadig at smide et svar :-)
Synes godt om
Slettet bruger
02. maj 2012 - 16:58#13
OK. Hans
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.
Martin Thorborg overvejer at droppe de amerikanske tech-leverandører efter nedlukning af chefanklagers mailkonto: "Det er en sikkerhedsrisiko for den virksomhed, som jeg er direktør i"