Avatar billede cp2309 Nybegynder
21. januar 2008 - 13:51 Der er 8 kommentarer

Returner sidste tal/tekst på en liste

Jeg har et regneark med et kundekartotek (Kolonne A: Navne, Kolonner B: Adresser, osv) På denne liste bliver det en gang i mellem tilføjet nye kunder. Jeg søger en funktion altid finder den sidste linie (altså den sidste kunder der er tilføjet listen) og overfører den til at andet ark.
Avatar billede luffeladefoged Praktikant
21. januar 2008 - 15:30 #1
Du kan f.eks. bruge en offset formel:
Hvis du har dine data i Sheet1 kan du i sheet2 skrive:
- I A1:Navn; B1:Adresse; etc
- I A2: =OFFSET(Sheet1!A1;COUNTA(Sheet1!A:A)-1;0)
- og kopiere formlen derhen af
Formlen er afhænging af at alle felter i databasen er udfyldt (counta) - eventuelt gør den afhænging af bare navne / A-kolonnen.
Hilsen Luffe
Avatar billede luffeladefoged Praktikant
28. januar 2008 - 11:44 #2
Duede det - eller har jeg misforstået problemstillingen?
/ Luffe
Avatar billede Rune Sommer Mester
14. oktober 2011 - 15:06 #3
Er der nogensinde kommet et løsning? Står med samme problematik.
Avatar billede luffeladefoged Praktikant
14. oktober 2011 - 17:15 #4
Virker den ikke den med offset formlen?
/Luffe
Avatar billede Rune Sommer Mester
14. oktober 2011 - 17:47 #5
Jeg har googlet offset - men kan ikke finde den danske oversættelse af denne funktion - har derfor ikke afprøvet den.

Har oprettet en ny tråd med næsten samme spørgsmål - hvor jeg selv fandt et relativt simpelt svar - som kun gælder så længe der ikke er tomme celler i matrixen.

www.eksperten.dk/spm/949229#reply_7852207
Avatar billede luffeladefoged Praktikant
14. oktober 2011 - 18:18 #6
forskydning mener jeg den hedder.
/luffe
Avatar billede Rune Sommer Mester
15. oktober 2011 - 04:13 #7
I den anden tråd er løsningen givet. Svaret kommer også her:


Såfremt dine data ligger i søjle M fungerer nedenstående. Det er underordnet om der er tomme celler og tekst og tal blandet sammen.

=FORSKYDNING(M1;SAMMENLIGN(MAKS(M:M)+1;M:M;1)-1;0)

Umiddelbart virker det også med INDEKS som erstatning for FORSKYDNING.

=INDEKS(M:M;SAMMENLIGN(MAKS(M:M)+1;M:M;1))


Efter nogle timer med at forstå hvorfor det virker, har jeg nu fundet ud af det. Og skriver "løsningen" med ord her - så jeg kan finde det igen næste gang jeg glemmer det.


MAKS: returnerer det største tal i en matrix og/eller i en indtastning

SAMMENLIGN: returnerer den position som er nærmest initial-tallet. 1 = sorteret nedefra og op. -1 sorteret omvendt.

FORSKYDNING: returnerer en celles værdi fundet ud fra initialpunktet.

INDEKS: returnerer en celles værdi fundet ud fra et bestemt rækkenr. i matrixen.



Årsagen til at dette virker er, at sammenlign-funktionen vælger det næst-største tal i matrixen ved sammenligningstype 1, hvor teksten "er" sorteret stigende. Dvs. funktionen finder det største tal at sammenligne med + 1 (for at kunne vælge sig selv også) og forsøger så, nedefra og op (pga. "sorteringen"), at vælge det næst-største tal.

Det næst-største tal vil således altid være det sidste i rækken (pga. maks + 1), da det jo pga. sorteringen må være det næst-største.
Avatar billede luffeladefoged Praktikant
24. oktober 2011 - 08:18 #8
Så skulle min forskydnings formel nok også virke :)
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
Vi har et stort udvalg af Excel kurser. Find lige det kursus der passer dig lige her.

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