Oprettet tir. d. 29. november 2011 kl. 17:36:32

sabeltiger81
sabeltiger81 (995 point. Point ude: 310)

Automatisk sortering af kunder

min version af excel er 2010.

Lad os antage jeg har 10 kunder der køber for 1 mill og derover

Dernæst har jeg nogle middel kunder som køber for omkring en halv mill

og til sidst nogle der køber under.

normalt skriver man jo bare at
kundenavn 1 pris 1 mill,
kundenavn 2 pris 100.000,
kundenavn 3 køber for 345.000
kundenavn 4 køber 760.000,
kundenavn 5 køber for 670.000

Hvad kan jeg gøre for at de kunder der køber mest står øverst, de kunder der køber for 500.000 til 1 millon står i midten og de sidste kunder der ikke køber for så meget står nederst?

Skrevet tir. d. 29. november 2011 kl. 18:01:56| #1

nathan
nathan (21.899 point)
du skal sortere columen (D) med faldende.

Skrevet tir. d. 29. november 2011 kl. 18:04:07| #2

vejmand
vejmand (161.725 point)
Marker dine data -> sorter og filter -> Brugerdefineret sortering -> Sorter efter kolonnen med beløb -> Vælg største til mindste

Skrevet tir. d. 29. november 2011 kl. 20:07:33| #3

sabeltiger81
sabeltiger81 (995 point)
Der findes ikke en eller anden formel, der gør at når man får kunde nummer 8 f.eks. som giver 560.000, så vil denne automatisk vil rykke ind i mellem de andre kolonner?

Skrevet ons. d. 30. november 2011 kl. 07:31:34| #4

dkhanknu
dkhanknu (35.505 point)
Hvis du har kundenavn fra A1 og nedefter og beløb fra B1 og nedefter så prøv følgende formler i henholdsvis C1 og D1

D1: =HVIS.FEJL(INDEKS(B:B;SAMMENLIGN(MINDSTE($B:$B;RÆKKE());$B:$B;0));"")

C1: =HVIS.FEJL(INDEKS($A:$A;SAMMENLIGN($D1;$B:$B;0));"")

Kopier formlerne så langt nedad som der kan forekomme data i kolonne A og B.

Skrevet ons. d. 30. november 2011 kl. 17:43:28| #5

sabeltiger81
sabeltiger81 (995 point)
Rigtig god formel synes jeg, nu mangler jeg bare en lille udspecificering af punkterne.

Men dem kan du jo lægge i svaret ;)

Skrevet ons. d. 30. november 2011 kl. 17:57:11| #6

dkhanknu
dkhanknu (35.505 point)
Hvad mener du?

Skrevet tor. d. 01. december 2011 kl. 11:47:59| #7

sabeltiger81
sabeltiger81 (995 point)
jo, f.eks. slutningen af formlen til D1 ser sådan her ud:

($B:$B;RÆKKE());$B:$B;0));"")


Det jeg ikke er med på er bl.a. parenteserne efter RÆKKE ()) og det nul der kommer efter $B:$B samt de 2 ""

En anden ting er der hvor der står INDEKS, men den benyttes måske netop til hvis man skal sortere med en formel?

Jo, jeg ved godt hvad $ tegn bruges til, men hvorfor benyttes de kun i den sidste del af formlen?

Skrevet tor. d. 01. december 2011 kl. 13:37:54| #8

dkhanknu
dkhanknu (35.505 point)
Kender du teknikken med at markere en del af en formel (i formelfeltet) og herefter trykke på F9 for at se, hvad den markerede del af formlen evalueres til. Alternativt brug af værktøjet Evaluer formel? Begge dele er et "must" hvis du vil lære at begribe komplekse formler.

Men ok da, så forklarer jeg formlen denne ene gang:

=HVIS.FEJL(INDEKS(B:B;SAMMENLIGN(MINDSTE($B:$B;RÆKKE());$B:$B;0));"")

Den yderste funktion:
HVIS.FEJL(formel;"")
returnerer resultatet af formel, medmindre resultatet er en fejl. I så fald returnerer funktionen "", altså en blank.

Herefter ser vi på INDEKS-funktionen:

INDEKS(B:B;SAMMENLIGN(MINDSTE($B:$B;RÆKKE());$B:$B;0))

(Her, som overalt hvor det drejer sig om at begribe Excel funktioner er det selvsagt helt nødvendigt at man studerer Excels hjælp til den pågældende funktion. Noget som mange helt åbenbart ikke gør).

Ovenstående INDEKS-funktion har to argumenter. Som du ved eller som du bør vide adskilles argumenter af semikolon. Da der er ét semikolon er der altså to argumenter (De to semikolon til højre er en del af "Sammenlign-formlen").

=INDEKS(B:B;"Sammenlign-formel")

Formlen herover vil returnere indholdet i en eller anden celle i området B1:B1048576. Den ene eller anden celle i dette område bestemmes af det tal der returneres af "Sammenlign-formlen". Hvis sidstnævnte returnerer tallet 5 for eksempel, vil INDEKS-funktionen returnere det, der står i celle B5.

Herefter ser vi på Sammenlign-formlen, altså:

SAMMENLIGN(MINDSTE($B:$B;RÆKKE());$B:$B;0)

SAMMENLIGN-funktionen har tre argumenter (opslagsværdi, opslagsmatriks og sammenligningstype), adskilt af to semikolon. Opslagsværdien her er altså det der står frem til første semikolon, det vil sige: MINDSTE($B:$B;RÆKKE()). Hvis formlen her indtastes som matriksformel i række 1 (D1 for eksempel) vil den finde den mindste værdi i kolonne B, idet RÆKKE() indtastet i række 1 returnerer tallet 1. Når formlen kopieres én række nedad vil RÆKKE() returnere tallet 2. Det vil sige at MINDSTE($B:$B;RÆKKE()) nu vil returnere den andenmindste værdi i kolonne B. Hvis formlen kopieres yderligere en række nedad vil den nu returnere den tredjemindste værdi i kolonne B og så videre. Hvis vi et øjeblik kalder den just analyserede del af formlen, altså MINDSTE($B:$B;RÆKKE()), for x kan SAMMENLIGN-funktionen skrives:

=SAMMENLIGN(x; $B:$B;0)

I celle D1 vil x være lig med den mindste værdi i kolonne B. I celle D2 vil x være lig med den andenmindste værdi i kolonne B. I celle D3 vil x være lig med den tredjemindste værdi i kolonne B og så videre. Hvis mindste, andenmindste og tredjemindste værdier i kolonne B findes for eksempel i celle B10, B5 og B13, så vil SAMMENLIGN funktionen returnere henholdsvis 10, 5 og 13.

Herefter er vi fremme ved at INDEKS-funktionen nu er reduceret til:

D1: =INDEKS($B:$B;10)
D2: =INDEKS($B:$B;5)
D3: =INDEKS($B:$B;13)

Den første returnerer altså den værdi der står i celle B10, den næste det der står i celle BB5 og såvidere.

Du skulle herefter selv være i stand til at analysere den formel jeg oprindelig foreslog, at du indtastede i C1 og kopierede nedad.

$-tegnet er ikke nødvendigt nogen af stederne her (eller kunne have været anvendt også i første del af formlen).

Hans

Skrevet tor. d. 01. december 2011 kl. 14:00:14| #9

sabeltiger81
sabeltiger81 (995 point)
Tak fordi du tog dig tid til at give detaljeret uddybning af denne formel, jeg kender godt brugen af semikolon også, men nye input får man jo kun ved at spørge sig frem når mam nu som jeg løb ind i en blindgyde.

Når du lægger et svar til point, så er der fuldt hus. :-)

Skrevet fre. d. 02. december 2011 kl. 06:54:46| #10


Skrevet fre. d. 02. december 2011 kl. 18:38:54| #11

sabeltiger81
sabeltiger81 (995 point)
Hvem er Hans? Ikke mig ihverfald ;)

Skrevet lør. d. 03. december 2011 kl. 09:29:46| #12

vejmand
vejmand (161.725 point)
dkhanknu = Hans  :-)

Skriv et indlæg




Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] [img]link til billede[/img]
Web- og emailadresser omdannes automatisk til links

Log ind

   

   

Seneste spørgsmål

hjælp til at lave et træningsprogram

Oprettet den 26. maj 2012 kl. 20.44
janskov giver 30 point for svar | Giv et svar »

Datavalidering med anden workbook som referance

Oprettet den 26. maj 2012 kl. 09.05
KenneyD71 giver 60 point for svar | Giv et svar »

Søgeformel i Excel

Oprettet den 25. maj 2012 kl. 23.28
Torben1970 giver 60 point for svar | Giv et svar »



   




Tips & Tricks fra PC World

Teaser billede

Læserne: Her er vores værste it-indkøb

Det er ikke al it-udstyr, som er det rene guld. Her er nogle af læsernes skrækhistorier.


Anmeldelser fra PC World

Teaser billede

Test: Mobil med Ferrari-design - og en Trabant-motor

Motorola har begået endnu en smartphone med lækkert design og potentiale til at være blandt de bedste. Men den når ikke i mål. Se her hvorfor.


Seneste blogindlæg

Teaser billede

Tvangslukke spørgsmål: Hvad er den bedste løsning?

Hej Vi har mange åbne spørgsmål på Eksperten. Vi ville gerne tvangslukke dem - så et spørgsmål efter f.eks. 6 måneder lukkes. Men der er et par uklarheder som ville være gode at få lidt input til:...


Nyheder fra PC World

Teaser billede

Sådan siger du farvel til Facebook

Læs her, hvordan du dropper Facebook og i stedet anvender nogle brugervenlige alternativer, så du stadig kan være social på nettet.


Nyheder fra Computerworld

Teaser billede

Galleri: De fedeste håndholdte gennem 40 år

Her har du de mest banebrydende håndholdte computere gennem alle tider.


Kurser
Samarbejdspartnere

Udgiver · © 2012 IDG Danmark A/S · Hørkær 18 · 2730 Herlev · Tlf.: 77 300 300 · Fax: 77 300 301 · Brug af personoplysninger