Avatar billede peter-herning Nybegynder
09. maj 2005 - 10:05 Der er 17 kommentarer og
3 løsninger

Beskyttelse af cellereferencer i formel

Hej.

Jeg har nogle Excel ark med rigtigt mange formler i - de refererer til ubeskyttede områder, hvor brugerne må ændre data. Problemet er at når brugerne flytter data med træk og slip, ændres cellereferencerne i formlerne tilsvarende. Formlerne er komplekse og jeg har brug for at kunne kopiere dem ud i mange hundrede rækker, så $ er en dårlig løsning.
Avatar billede jkrons Professor
09. maj 2005 - 11:43 #1
Hvorfor er $ en dårlig løsning? Antallet af celler du skal kopiere til har vel ingen betydning i den forbindelse?
Avatar billede peter-herning Nybegynder
09. maj 2005 - 11:54 #2
Jeg bygger arket på den måde, at jeg lægger formlen ind til cellerne i øverste række, og derefter kopierer den til alle de andre rækker. Med $ beskyttelse på cellereferencerne, vil der vel ske det, at alle rækkernes referencer går til række 1.
Avatar billede jkrons Professor
09. maj 2005 - 11:57 #3
Det kommer an på, hvilke cellereferencer du lægger det på.
Avatar billede peter-herning Nybegynder
09. maj 2005 - 12:03 #4
=HVIS(ER.FEJL((FIND("/";D3;(1+1))-1));0;VÆRDI(VENSTRE(D3;(FIND("/";D3;(1+1))-1))))

Hvor ville du lægge den i denne formel?
Avatar billede jkrons Professor
09. maj 2005 - 12:08 #5
Hvad er det, der skal forblive konstant?
Avatar billede jkrons Professor
09. maj 2005 - 12:09 #6
Du siger at formlen refererer til et ubeskyttet område - hvor ligger det?
Avatar billede peter-herning Nybegynder
09. maj 2005 - 12:32 #7
Hvis brugeren flytter indholdet af D3 til E3 eller D4 skal formlen stadig referere til D3 (som så er tom)

Det ubeskyttede område er A3:Z70
(og jeg har så per ark (som der er 10 af) 1632 formler der referer til dette område)
Avatar billede jkrons Professor
09. maj 2005 - 13:02 #8
Så tror jeg du har et problem, hvis de alle som udgangspunkt referer tuil hver sin række, og derefter skal data kunne flyttes frit. Det tror jeg simpelhen ikke at Excel giver mulighed for at gøre automatisk. Men jeg vil gerne se lidt nærmere på det.
Avatar billede peter-herning Nybegynder
09. maj 2005 - 13:09 #9
De refererer netop til hver sin række. Jeg frygter også at Excel ikke har en funktion, der f.eks på ark eller workbook niveau disabler den hjælpsomme funktion, der flytter referencen med. Men hvis du finder noget, vil jeg blive kisteglad... I hvert fald tak for indsatsen så vidt.
Avatar billede bak Forsker
09. maj 2005 - 14:14 #10
Et forslag kunne være at du laver det kopiering du skal lave og så kører en makro bagefter, der ændrer alle formler i området til absolutte referencer.
En sådan makro kan du hente her.:

http://www.freevbcode.com/ShowCode.asp?ID=4943
Avatar billede stefanfuglsang Juniormester
09. maj 2005 - 14:32 #11
Såvdit jeg kan se hjælper det ikke at bruge $ - referencen ændres alligevel.
Træk/slip-funktion kan fjernes i Funktioner/Indstillinger/Rediger
Avatar billede stefanfuglsang Juniormester
09. maj 2005 - 14:49 #12
En besværlig løsning, men måske kan det bruges:
alle dine referencer kan opbygges efter modellen:
=INDIREKTE(ADRESSE(RÆKKE();1))
eksemplet giver værdien i kolonne A, der står i samme række som formlen. Denne vil ikke ændres, selvom værdien bliver flyttet.

- jeg håber der er en bedre løsning, men jeg kan ikke lige se det.

I øvrigt svarer træk/slip-funktionen til Cut+Paste, så f.eks. Ctrl+X, Ctrl+V vil give de samme problemer.
Avatar billede peter-herning Nybegynder
09. maj 2005 - 14:57 #13
Hej. Tak for de mange gode input. Jeg er førstegangsbruger, og nu kommer det dumme spørgsmål: hvordan giver jeg mine point til det svar, jeg kunne bruge  og lukker spørgsmålet?

Endnu en gang tak til alle
Avatar billede stefanfuglsang Juniormester
09. maj 2005 - 14:59 #14
Hvis du er tilfreds med svarene, så mind dem der svarer om, at de skal lægge et svar.
Når de har gjort det, kan du i venstre side vælge (markere) hvem der skal have point.
Giv dig selv point, hvis du ikke er tilfreds med svarene.
Avatar billede stefanfuglsang Juniormester
09. maj 2005 - 15:01 #15
var det lidt volapyk jeg skrev der?
Pointen er at du ikke kan give point til "Kommentarer", kun til "Svar"
Avatar billede peter-herning Nybegynder
09. maj 2005 - 15:09 #16
Tak - Vil du bak lægge et svar, så du kan få nogle point, jeg synes din også virker som en farbar vej..
Avatar billede bak Forsker
09. maj 2005 - 15:21 #17
jo ;-)
Avatar billede jkrons Professor
09. maj 2005 - 15:21 #18
Prøv om dette eventuelt løser dit problem:

=HVIS(ER.FEJL((FIND("/";INDIREKTE("D3");(1+1))-1));0;VÆRDI(VENSTRE(INDIREKTE("D3");(FIND("/";INDIREKTE("D3");(1+1))-1))))
Avatar billede jkrons Professor
09. maj 2005 - 15:22 #19
Glem det. Det virker selvfølgelig ikke når du kopierer.
Avatar billede peter-herning Nybegynder
09. maj 2005 - 15:51 #20
Kære jkrons - Tak for din indsats. Jeg tror at jeg vil forsøge med en løsning, der angiver at man efter kopieringen til helle formelområdet kan køre en makro, der på bagkanten ændrer alle referencer til at være absolutte.
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