Acties:
  • 0 Henk 'm!

  • HellPunk
  • Registratie: September 2002
  • Laatst online: 18:25
Ik heb een Excel-sheet dat er als volgt uitziet (alleen een stuk groter, met zowat 50 rijen en 60 kolommen):

LondonParisBarcelona
Busxx
Treinx
Autoxx


Onder deze tabel geef ik in wat ik wil zoeken - dit is een waarde uit de eerste kolom. Hieronder moet dan komen te staan welke waarden aan die zoekterm voldoen, d.w.z. voor welke steden staat er een kruisje bij het gekozen vervoersmiddel. Als je dus bijvoorbeeld Bus ingeeft, dan moet de output als volgt zijn:

London
Paris


Ik dacht dat dit eenvoudig te regelen zou zijn met een combinatie van HLOOKUP, INDEX, MATCH en/of CONCATENATE. Helaas kan ik geen enkele formule verzinnen die het gewenste resultaat geeft. Mijn GoogleFu is onderhand wel uitgeput, als er iemand suggesties heeft over welke functie dit dan wel kan hoor ik het graag.

It's still magic even if you know how it's done. (Terry Pratchett, A Hat Full of Sky)


Acties:
  • 0 Henk 'm!

  • Logico
  • Registratie: September 2013
  • Laatst online: 09-09 22:30
Is het bezwaarlijk om je inputtabel als volgt weer te geven? De vervoermiddelen hoeven niet gesorteerd te staan maar mogen ook in willekeurige volgorde, dat heeft geen gevolgen voor de output.

VervoerBestemming
BusLondon
BusParis
TreinParis
AutoLondon
AutoBarcelona


In dat geval zou je dit kunnen gebruiken: https://dl.dropboxusercon...437/Hellpunk%20excel.xlsx

Acties:
  • 0 Henk 'm!

  • Fish
  • Registratie: Juli 2002
  • Niet online

Fish

How much is the fish

an nee die kruisje

[ Voor 105% gewijzigd door Fish op 09-01-2015 00:03 ]

Iperf


Acties:
  • 0 Henk 'm!

  • HellPunk
  • Registratie: September 2002
  • Laatst online: 18:25
Logico schreef op donderdag 08 januari 2015 @ 23:40:
Is het bezwaarlijk om je inputtabel als volgt weer te geven? De vervoermiddelen hoeven niet gesorteerd te staan maar mogen ook in willekeurige volgorde, dat heeft geen gevolgen voor de output.

VervoerBestemming
BusLondon
BusParis
TreinParis
AutoLondon
AutoBarcelona


In dat geval zou je dit kunnen gebruiken: https://dl.dropboxusercon...437/Hellpunk%20excel.xlsx
Dat is een optie, maar dan moet ik even overleggen of ik de data mag omgooien. Alvast bedankt, hier kan ik wat mee!

Edit:
Helaas, als ik de data zo sorteer treden er andere problemen op die ik in de OP niet voorzien had :). De op te zoeken waarde (in het voorbeeld: het vervoer) wordt in een listbox geselecteerd en die haalt zijn waardes natuurlijk uit diezelfde kolom. Als je dan meerdere rijen gaat maken met hetzelfde vervoermiddel krijg je duplicates in die listbox. Die kan je er wel uitfilteren met een macro, maar dat wil ik zeker vermijden.

[ Voor 19% gewijzigd door HellPunk op 09-01-2015 08:55 ]

It's still magic even if you know how it's done. (Terry Pratchett, A Hat Full of Sky)


Acties:
  • 0 Henk 'm!

Verwijderd

Dit zou ik aanpakken met een macrootje.
Als de vervoermiddelen in A2 beginnen en de bestemmingen in B1, en als de vervoermiddelen ook in listbox1 staan, dan is de rij waarin de kruisjes gezocht moeten worden gelijk aan listbox1 + 2. Dan moet je verder die rij vanaf kolom 2 maar langs lopen (t/m kolom 61, bv.met een for-nextlus) om de kolommen te vinden waarin de kruisjes staan. De cel in de eerste rij van die kolommen laat je dan telkens weergeven in een kolom waarvan je de rijwaarde bij elk gevonden kruisje 1 ophoogt.

Acties:
  • 0 Henk 'm!

  • HellPunk
  • Registratie: September 2002
  • Laatst online: 18:25
Ik had besloten om toch de oplossing van Logico te gebruiken. Alleen lukt er ergens iets niet en ik vermoed dat het komt omdat de range waarin mijn gegevens staan pas in $A$17 begint (op de rijen daarboven staat de listbox) waardoor de laatste RIJ-functie in de soep draait. Dat zou simpel op te lossen moeten zijn, maar ik zie het helaas niet...

It's still magic even if you know how it's done. (Terry Pratchett, A Hat Full of Sky)


Acties:
  • 0 Henk 'm!

  • Logico
  • Registratie: September 2013
  • Laatst online: 09-09 22:30
Het is inderdaad vrij simpel. Je kan de matrix van de INDEX()-formule gewoon vanaf rij 1 (dus in jouw geval vanaf $A$1) laten staan, de andere bereiken begin je wel pas vanaf rij 17. Ook als je ergens tussen A1 en A16 een vervoersmiddel hebt staan wordt deze niet meegenomen in de resultaten.

Ik heb het bestand achter de link uit m'n eerste post even aangepast ter illustratie.

Acties:
  • 0 Henk 'm!

  • tritimee
  • Registratie: December 2006
  • Laatst online: 19:35
https://www.dropbox.com/s/vevd1vuerwrzi2z/Book1.xlsx?dl=0

Heb ook even lopen knutselen. Heb de formules bewust niet netjes weggewerkt, zo zie je namelijk de essentie er achter beter.

3 tabbladen
1 - Alle uit te lezen data kan hier.
2 - Formule doortrekken en steden toevoegen dmv transpose kopieren en plakken.
3 - Vervoersmiddel selecteren en pivotrange even aanpassen en dan de pivot verversen.

Als alle data er in zit hoef je alleen nog maar het vervoersmiddel te selecteren en de pivot te verversen.

Acties:
  • 0 Henk 'm!

  • HellPunk
  • Registratie: September 2002
  • Laatst online: 18:25
Bedankt allebei, nu moet het wel lukken :), als ik credits krijg van m'n werkgever laat ik het zeker weten 8)

It's still magic even if you know how it's done. (Terry Pratchett, A Hat Full of Sky)


Acties:
  • 0 Henk 'm!

Verwijderd

Niets ten nadele van de gebruikte oplossing, maar ik denk dat jullie de kracht van macro's niet helemaal onderkennen.

Acties:
  • 0 Henk 'm!

  • Logico
  • Registratie: September 2013
  • Laatst online: 09-09 22:30
Ik ken de kracht van macro's, maar er zijn altijd redenen denkbaar waarom je er geen gebruik van wil/kan maken. Al is het maar omdat een gebruiker van het bestand op een Mac werkt.
Pagina: 1