Toon posts:

Excel meerdere ALS functies

Pagina: 1
Acties:

Onderwerpen

Vraag


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Lieve leden,

Ik zit enorm te worstelen met Excel. Ik heb een dataset waarin in kolom C allerlei activiteiten staan (bijv. Individual work that requires low concentration; Individual work that requires high concentration; Face-to-face communication, planned etc.). In kolom D staat de werkplek (bijv. Desk, Meeting room etc.). Ik wil nu kolom C en D aan elkaar koppelen en in kolom E tonen of de activiteit en de werkplek een match of een mismatch zijn.

Het match / mismatch schema is onderaan getoond; hierin staan ook alle activiteiten en werkplekken die in de dataset staan.

Afbeeldingslocatie: https://tweakers.net/i/ylQbLOgdSpJhNk6uLQhPprJW3vs=/800x/filters:strip_icc():strip_exif()/f/image/rOHRTJUnBLZ1cpxgqHhhTIC2.jpg?f=fotoalbum_large

Welke topper kan mij helpen met het maken van een formule zodat ik alle matches en mismatches kan zien???

Enorm bedankt alvast!! _/-\o_

Beste antwoord (via Verwijderd op 25-04-2020 22:29)


  • Bolletje
  • Registratie: Juni 2008
  • Laatst online: 30-09 13:00

Bolletje

Moderator Harde Waren
Hier als voorbeeld:

Je maakt een extra tab aan waar je jouw tabel met de matching even onder elkaar zet. Dus niet in de matrix vorm die je in je openingpost hebt. In mijn voorbeeld heet dit tabblad "Config":
Afbeeldingslocatie: https://tweakers.net/fotoalbum/image/6y32id2J1yJSoGzw3KEU1MBY.jpg

Vervolgens heb je je dataset met de kolommen. In mijn voorbeeld heet dit tabblad "Data".
Afbeeldingslocatie: https://tweakers.net/fotoalbum/image/zCGsfCcBYc54SGOLfieqNEOe.jpg

Daar heb je de de twee kolommen C en D, en dan wil je de uitkomst of het een match is in E.

In E doe je dus een array-formule. (zie je bovenaan het plaatje). Wat deze is:
code:
1
=INDEX(Config!D:D;MATCH(1;(C2=Config!C:C) * (D2=Config!B:B);0))

Let erop, dat je met de array-formule je ctrl-shift-enter moet doen, niet enkel op enter klikken

Conditional formatting / voorwaardelijke opmaak kan je hopelijk zelf wel (als iets match is, dan groen, mismatch dan rood).

Hier nog een linkje met meer uitleg: https://exceljet.net/form...ch-with-multiple-criteria


Tweede voordeel is ook dat je zo ook alles makkelijk kan aanpassen op het tabblad, maar ook makkelijk dingen kan toevoegen (indien nodig).

[ Voor 12% gewijzigd door Bolletje op 25-04-2020 17:18 ]

Alle reacties


Acties:
  • 0 Henk 'm!

  • Roozzz
  • Registratie: Juni 2011
  • Nu online

Roozzz

Plus ultra

Om de velden in C en D te vergelijken is dit toch al genoeg?
E1=ALS(C1=D1;match;mismatch)

Wat gaat er mis en wat heb je al geprobeerd? Of wat probeer je exact te bereiken?

If you can see, look. If you can look, observe


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Ik heb deze (gigantisch lange) formule geprobeerd:

=ALS(EN(C2="Break";D2="Break-out area")*EN(C2="Break";D2="Restaurant")*EN(C2="Break";D2="Bar")*EN(C2="Break";D2="Pantry")*EN(C2="Break";D2="Stand-up")*EN(C2="Individual work that requires high concentration";D2="Desk")*EN(C2="Individual work that requires low concentration";D2="Desk")*EN(C2="Face-to-face communication, planned";D2="Meeting room")*EN(C2="Face-to-face communication, planned";D2="Consulting table")*EN(C2="Face-to-face communication, planned";D2="Break-out area")*EN(C2="Face-to-face communication, non-planned";D2="Meeting room")*EN(C2="Face-to-face communication, non-planned";D2="Consulting table")*EN(C2="Face-to-face communication, non-planned";D2="Break-out area")*EN(C2="Face-to-face communication, non-planned";D2="Restaurant")*EN(C2="Face-to-face communication, non-planned";D2="Bar")*EN(C2="Face-to-face communication, non-planned";D2="Pantry")*EN(C2="Face-to-face communication, non-planned";D2="Stand-up")*EN(C2="Communication through phone or video conference";D2="Meeting room")*EN(C2="Communication through phone or video conference";D2="Consulting table")*EN(C2="Communication through phone or video conference";D2="Phone booth")*EN(C2="Communication through phone or video conference";D2="Stand-up");"Match";"Mismatch")

Zowel EN / OF geprobeerd, werkt allebei niet.

Acties:
  • +1 Henk 'm!

  • Dido
  • Registratie: Maart 2002
  • Laatst online: 12:06

Dido

heforshe

Volgens mij is het veel simpeler om dit handmatig in te vullen. Je gaat hier nooit uitkomen zonder een draak van een formule, en om die draak van een formule te controleren moet je handmatig je hele schema nalopen.
Als je het gewoon handmatig invult ben je zo klaar.

En als er morgen een acticiteit of locatie bijkomt ben je in 2 minuten klaar, of je zit een paar uur je formule aan te passen en te hertesten.

Wat betekent mijn avatar?


Acties:
  • 0 Henk 'm!

  • g0tanks
  • Registratie: Oktober 2008
  • Nu online

g0tanks

Moderator CSA
Dido schreef op zaterdag 25 april 2020 @ 16:00:
Volgens mij is het veel simpeler om dit handmatig in te vullen. Je gaat hier nooit uitkomen zonder een draak van een formule, en om die draak van een formule te controleren moet je handmatig je hele schema nalopen.
Als je het gewoon handmatig invult ben je zo klaar.

En als er morgen een acticiteit of locatie bijkomt ben je in 2 minuten klaar, of je zit een paar uur je formule aan te passen en te hertesten.
Zo'n gigantische formule moet je inderdaad niet willen, maar dit is echt wel goed te automatiseren in korte tijd.

Je zou het bijvoorbeeld met verticaal zoeken (zoek de functie maar op) kunnen oplossen nadat je de kruistabel ook hebt gemaakt in Excel. In kolom E kan je dan verticaal zoeken op de werkplek in de kruistabel, waarbij de kolom die je pakt afhangt van de werkactiviteit. Dat laatste kan je bepalen aan de hand van een ALS.

Nog netter is met INDEX en MATCH, maar dat is voor het huidige kennisniveau wellicht te moeilijk.

[ Voor 4% gewijzigd door g0tanks op 25-04-2020 16:05 ]

Ultrawide gaming setup: AMD Ryzen 7 2700X | NVIDIA GeForce RTX 2080 | Dell Alienware AW3418DW


Acties:
  • 0 Henk 'm!

  • Bolletje
  • Registratie: Juni 2008
  • Laatst online: 30-09 13:00

Bolletje

Moderator Harde Waren
Je moet een array-formule maken, met INDEX en MATCH op meerdere criteria.

VLOOKUP moet je niet naar kijken.

Acties:
  • 0 Henk 'm!

  • TheFes
  • Registratie: Juni 2001
  • Laatst online: 16:19
Ik zou het zelf zo doen:
Zet achter de kolom met plekken in de tabel die je nu laat zien een extra kolom, en begin met 2 achter Desk en nummer dan verder door naar beneden.

Voor het resultaat wat je dan uiteindelijk in je kolom E wil krijgen, ga je HORIZONTAAL.ZOEKEN toepassen. Eén van de variabelen die je daarin moet opgeven is het rijnummer, deze bepaal je door VERTICAAL.ZOEKEN naar de werkplek met als resultaat je extra hulpkolom.
Bolletje schreef op zaterdag 25 april 2020 @ 16:09:
Je moet een array-formule maken, met INDEX en MATCH op meerdere criteria.

VLOOKUP moet je niet naar kijken.
Dat is inderdaad nog beter, vergeet ik zelf altijd :)

[ Voor 24% gewijzigd door TheFes op 25-04-2020 16:12 ]

Home Assistant configuratie


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Handmatig invullen wordt lastig omdat het databestand 4000 rijen bevat... Ik ga even op zoek naar hoe het zit met verticaal zoeken!

Acties:
  • Beste antwoord
  • +2 Henk 'm!

  • Bolletje
  • Registratie: Juni 2008
  • Laatst online: 30-09 13:00

Bolletje

Moderator Harde Waren
Hier als voorbeeld:

Je maakt een extra tab aan waar je jouw tabel met de matching even onder elkaar zet. Dus niet in de matrix vorm die je in je openingpost hebt. In mijn voorbeeld heet dit tabblad "Config":
Afbeeldingslocatie: https://tweakers.net/fotoalbum/image/6y32id2J1yJSoGzw3KEU1MBY.jpg

Vervolgens heb je je dataset met de kolommen. In mijn voorbeeld heet dit tabblad "Data".
Afbeeldingslocatie: https://tweakers.net/fotoalbum/image/zCGsfCcBYc54SGOLfieqNEOe.jpg

Daar heb je de de twee kolommen C en D, en dan wil je de uitkomst of het een match is in E.

In E doe je dus een array-formule. (zie je bovenaan het plaatje). Wat deze is:
code:
1
=INDEX(Config!D:D;MATCH(1;(C2=Config!C:C) * (D2=Config!B:B);0))

Let erop, dat je met de array-formule je ctrl-shift-enter moet doen, niet enkel op enter klikken

Conditional formatting / voorwaardelijke opmaak kan je hopelijk zelf wel (als iets match is, dan groen, mismatch dan rood).

Hier nog een linkje met meer uitleg: https://exceljet.net/form...ch-with-multiple-criteria


Tweede voordeel is ook dat je zo ook alles makkelijk kan aanpassen op het tabblad, maar ook makkelijk dingen kan toevoegen (indien nodig).

[ Voor 12% gewijzigd door Bolletje op 25-04-2020 17:18 ]


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Dank! Ik ga de array formule proberen! Ik laat weten als het is gelukt :)

Acties:
  • 0 Henk 'm!

  • Lustucru
  • Registratie: Januari 2004
  • Niet online

Lustucru

26 03 2016

g0tanks schreef op zaterdag 25 april 2020 @ 16:02:
[...]
met INDEX en MATCH, maar dat is voor het huidige kennisniveau wellicht te moeilijk.
Imho het enige juiste antwoord, en zeker niet lastiger dan ombouwen met een arrayformule en ombouwen van de tabel. Het is ook ongeveer het standaardpatroon om dit soort zaken aan te pakken.

Index geeft een waarde terug uit een matrix (tabel) op het snijpunt van een gegeven rij en kolomnummer. Die vind je met vergelijken.

Stel dat het (mis)matchschema staat in A1:H15, en in regel 20 beginnen de regels met combinaties. Dan komt in E20:

=INDEX($A$1:$H$15;VERGELIJKEN(C20;$A$1:$A$15;0);VERGELIJKEN(D20;$A$1:$H$1;0))

In tekst: geef uit A1:H15 de waarde terug die staat op de regel die overeenkomt met C20 in de kolom die overeenkomt met D20. Standaardfunctionaliteit. ;)

[ Voor 17% gewijzigd door Lustucru op 25-04-2020 18:28 ]

De oever waar we niet zijn noemen wij de overkant / Die wordt dan deze kant zodra we daar zijn aangeland


Acties:
  • +1 Henk 'm!

Verwijderd

Topicstarter
@Bolletje eindelijk gelukt dankzij je uitleg!!! Super bedankt!! :)
Pagina: 1