Avatar billede idani Praktikant
13. august 2012 - 11:07 Der er 10 kommentarer og
1 løsning

INDIREKTE formel Excel 2007

Hej

En anden venlig bruger har lige åbnet mine øjne for at der findes en formel som hedder indirekte.

Jeg har nu googlet rundt for at lære mere om den, idet den kan løse et andet problem jeg har.

SUM.HVISER('D609'!E:E;'D609'!A:A;B2;'D609'!G:G;"JA";'D609'!F:F;INDIREKTE('D609'!F:F;FALSE)>D2)

Jeg har forsøgt at sætte den ind her - men den kommer ikke ud med nogen værdi til mig

Jeg ved at det er fordi jeg har behov for at der valideres på 'D609'!F:F er større end D2

Værdien skulle ende ud med 72.871 DKK  men ender på 0

Er der en venlig sjæl som vil give mig se om de kan finde fejlen - og samtidig give mig en quickguide i hvordan INDIREKTE fungere sådan mere lavpraktisk ;o)
venlig hilsen
Ida
Avatar billede mireigi Novice
13. august 2012 - 11:26 #1
Indirekte giver dig værdien der står i den celle du angiver i formlen Indirekte.

Skriver du fx
=INDIREKTE("D1")


Får du værdien i celle D1 på samme ark.

=INDIREKTE("D"&A1)


Hvor cellen A1 = 5, giver dig værdien fra celle D5. Igen på samme ark.

Du kan læse mere om det her:
http://office.microsoft.com/da-dk/excel-help/indirekte-HP005209139.aspx

Skrevet på forståeligt dansk.
Avatar billede idani Praktikant
13. august 2012 - 12:29 #2
Hej Mireigi

Tak for svar - men jeg har desværre ikke helt fanget den endnu.

Når jeg kigger på formlerne på ovennævnte link - så beder jeg om værdien i A1 - men får værdien i B1 retur.

Betyder det at den altid tager værdien lige ved siden den celle som man kigger på?

Og kan du gennemskue hvor min formel kikser ovenfor?

Plejer ellers at være temmelig hardcore på dette her - men lige nu sidder jeg fast ,o)

Hiseln
Ida
Avatar billede natkatten Mester
13. august 2012 - 12:37 #3
"jeg har behov for at der valideres på 'D609'!F:F er større end D2" - mener du, at summen af tallene i kolonne F i arket 'D609' skal være større end tallet i D2?

I så fald tror jeg slet ikke, at du har brug for at bruge INDIREKTE funktionen. Som jeg umiddelbart læser din formel, så vil følgende kunne gøre det:

=SUM.HVISER('D609'!E:E;'D609'!A:A;B2;'D609'!G:G;"JA";'D609'!F:F;">D2")

Jeg tager dog forbehold for denne, idet jeg jo ikke kender dit regneark ;-)
Avatar billede mireigi Novice
13. august 2012 - 14:13 #4
@idani: I eksemplet jeg har linket til, får du værdien i B2, fordi formlen INDIREKTE læser teksten "B2" fra cellen A1.

Sådan virker INDIREKTE:
1. Hvad står der mellem mine paranteser?
2. Har jeg en formel mellem mine paranteser?
3. Har jeg en reference mellem mine paranteser?
4. Har jeg en fast defineret tekst mellem mine paranteser?
5. Hvad er den komplette tekst mellem mine paranteser?
6. Hent data fra cellen/området
7. Vis værdien i cellen, hvor formularen er indtastet

I første eksempel står der i celle A2 værdien "B2" og formlen der bruges er
[pre]=INDIREKTE($A$2)[]/pre

Altså bliver ovenstående forløb således:

1. $A$2
2. Nej
3. Ja
4. Nej, der er ikke nogen tekst ("") eller formler der laver tekst
5. Værdi fra referencen $A$2 ("B2")
6. Værdien i celle B2 er 1,333
7. Vis værdi

=INDIREKTE($A$2), hvor celle A2 = "B2", svarer til at formlen i stedet for er =B2.

Du kan også se det som at oprette en ny kontakt i dit email program, og efterfølgende skrive til personen.

Hvis personens email er "niels_hansen@intetsted.dk" og du gemmer denne som en ny kontakt med navnet "N. Hansen", står der "N. Hansen" i "til" feltet i den email du er ved at skrive.

Når dit email program så sender emailen, bliver forløbet:

1. "N. Hansen"
2. Nej
3. Ja
4. Nej, der ikke skrevet en email adresse, men et navn på en kontakt
5. "N. Hansen"
6. Emailen for "N. Hansen" er "niels_hansen@intetsted.dk"
7. Send emailen til den fundne adresse

Jeg ved ikke om det giver 100% mening, men det er den bedste måde jeg kan forklare det på :)

Ofte er det en god ide, at eksperimentere med formlerne i et simpelt eksempel, inden de bruges i større sammenhænge. Så er chancen for at du får en "aha" oplevelse noget større, da omfanget er mindre.
Avatar billede idani Praktikant
13. august 2012 - 14:20 #5
Hej Mireigi og natkatten

Jeg syntes din forklaring på hvad det er den kigger efter umiddelbart forklare ret godt hvad det er - super godt, tak for hjælpen.

Natkatten

Det var også selv min første tanke - men det dutter ikke ;( - det er som om at excel ikke lige kan læse det her med de forskellig fortegn i denne forbindelse

andre gode forslag, ellers vil jeg arbejde videre med den indirekte del - selv om jeg ikke er helt sikker på at den kan bruges her

/Ida
Avatar billede mireigi Novice
13. august 2012 - 14:51 #6
Velbekomme.

Jeg tror din formel skal se således ud:
=SUM.HVISER('D609'!E:E;'D609'!A:A;B2;'D609'!G:G;'D609'!F:F;"JA")

Formlem bruges som:
=SUM.HVISER(hvadSkalSumeres, hvadSkalKontrollers, hvadSkalOpfyldes)

hvadSkalSumeres = A2:A5
hvadSkalKontrolleres = D2:D5
hvadSkalOpfyldes = A1

Altså er det kun værdier i kolonne området A2:A5, hvor værdien i A2 findes på samme række i område D2:D5, der bliver summeret

Dermed giver
     A    B
1    F
2    1    D
3    2    F
4    3    F
5    4    D


Resultatet 5 (2 + 3)
Avatar billede idani Praktikant
14. august 2012 - 11:06 #7
Hej Mireigi

Jeg har en værdi i kolonne D (en dato ) hvor min beregning skal have den med som parameter
Derfor er jeg nød til at have en Større / Mindre end med ind også.

Problemet er at når jeg referer til >D2 så læser den ikke værdien i D2 - men tager jeg blot og sætter D2 ind - altså uden > så vil den gerne accepterer værdien.

Det er som om at den ikke kan lide > inde i den formel.

Jeg er sikker på at det blot er et spørgsmål om en eller anden lille dum ting - men jeg kan bare ikke finde den?

Nogen gode ideer
Avatar billede mireigi Novice
14. august 2012 - 16:03 #8
SUM.HVISER godtager kun samhørighed (==, =/=). Den kan ikke bruge <, <=, =>, >.

     A    B    C
-----------------
1    A    F    10
2    B    G    20
3    C    H    30
4    D    I    40
5    E    J    50


=SUM.HVISER(C1:C5;A1:A5;"A";B1:B5;"F")

Vil give resultatet 10.

Ændrer du A3 til "A" og B3 til "F", får du resultatet 40 (10 + 30)

Tallene i resultatkolonnen (C1:C5) bliver kun lagt sammen, hvis alle kriterier er opfyldt for hele rækken.
     A    B    C
1    A    F    1

Er gyldig, fordi "A" og "F" står på samme række (1).

Af denne årsag kan der kun bruges == og =/=
<, <=, =>, > er ugyldige netop fordi hver sammenligning kan give flere rækker, og det derfor er umuligt at lave én-til-én sammenligning på hver række.

Jeg kender ikke til nogen måde, hvorpå du kan løse dit problem. Det virker som meget komplicerede opslag, hvorfor jeg i stedet vil anbefale at flytte data til en database som Access eller MS SQL, hvor du har langt flere muligheder.
Avatar billede Slettet bruger
14. august 2012 - 17:37 #9
Kan du ikke prøve at uploade en fil der viser opgaven?
Avatar billede idani Praktikant
14. august 2012 - 20:07 #10
jeg vil prøve at lave en fil i anonym form
kigger lige på den del imorgen ;o)

Men opgaven i sig selv er ikke så kompliceret - det er blot beregninger på baggrund af forskellige parameter.

;o)
Avatar billede idani Praktikant
15. august 2012 - 13:26 #11
Hej Alle

Først og fremmest 1.000 tak for alle jeres svar.

Dernæst så er det lykkedes mig at løse problemet ved at indsætte en hjælpe kolonne som fortager dato valideringen for mig, og returnere et Ja eller Nej.
Dermed skal Sum.Hviser kun tage stilling til om det er Ja eller Nej
Jeg vil senere hen forsøge mig med at koble hele min hjælpe kolonne ind i min Sum.HvisEr formel, men vil lige vurdere om det kommer til at gøre det hele for uoverskueligt når det er. (alle formlerne i et ser fancy ud - men minsker gennemskueligheden)

Jeg tillader mig derfor selv at hugge point for denne her ;o)
Hilsen
Ida
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

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