• Privacywetgeving
    Het is bij Helpmij.nl niet toegestaan om persoonsgegevens in een voorbeeld te plaatsen. Alle voorbeelden die persoonsgegevens bevatten zullen zonder opgaaf van reden verwijderd worden. In de vraag zal specifiek vermeld moeten worden dat het om fictieve namen gaat.

Excel: Gegevens uit ingevoerde lijst verdelen over kolommen.

Status
Niet open voor verdere reacties.

CoppensB

Nieuwe gebruiker
Lid geworden
9 dec 2016
Berichten
3
Excel-probleempje:

In onderstaande sheet is het gewoon de bedoeling dat uitgevoerde controles ingetypt worden.
4 velden: 1. datum controle, 2. persoon die controle deed, 3. Reden van controle, 4. Lidnummer bij wie controle werd uitgevoerd.

1.jpg

In een andere sheet staan de leden onder elkaar.
Hier zou ik graag de verschillende controles in krijgen volgens de gegevens ingevoerd uit bovenstaande lijst.

2.jpg

Hoe kan ik dit oplossen?

Voorbeeld bestand:
Bekijk bijlage Voorbeeld.xlsx
 
Jouw opzet heeft vrij veel nadelen:
-je tabellen staan midden op het werkblad met lege kolommen links en boven.
-de tabel leden geeft plaats aan precies 4 controles per lid. Misschien is dat het maximum, erg flexibel is het in ieder geval niet.
-als je informatie per persoon (controleur?) wilt zien moet je weer een andere tabel maken.
-als je de tekstvelden in de tabel leden leesbaar wilt houden moet je geheid de kolommen breder maken waardoor je waarschijnlijk naar rechts moet scrollen.
-om de tabel leden te vullen vanuit de tabel invoer zijn redelijk zware formules of VBA nodig.

Begin je tabel invoer linksboven, zet er een filter op en vergeet de tabel leden. Met een filter kun je alle informatie uit de tabel invoer halen die je nodig hebt.
 
Laatst bewerkt:
Jouw opzet heeft vrij veel nadelen:
-je tabellen staan midden op het werkblad met lege kolommen links en boven.
-de tabel leden geeft plaats aan precies 4 controles per lid. Misschien is dat het maximum, erg flexibel is het in ieder geval niet.
-als je informatie per persoon (controleur?) wilt zien moet je weer een andere tabel maken.
-als je de tekstvelden in de tabel leden leesbaar wilt houden moet je geheid de kolommen breder maken waardoor je waarschijnlijk naar rechts moet scrollen.
-om de tabel leden te vullen vanuit de tabel invoer zijn redelijk zware formules of VBA nodig.

Begin je tabel invoer linksboven, zet er een filter op en vergeet de tabel leden. Met een filter kun je alle informatie uit de tabel invoer halen die je nodig hebt.


Opmaak is inderdaad wat onlogisch, maar het was feitelijk maar een voorbeeld document voor aan de juiste oplossing te geraken.
De opstelling in het voorbeelddocument geeft gewoon weer welke formule ik zoek.


In het feitelijk document worden de leden uit een access-database gehaald.
Iedere keer de excel wordt geopend, vernieuwd VBA de gegevens. Aldus verspringen de rijen regelmatig op deze sheet.
Hier de invoer doen van de controles is niet mogelijk, want deze blijven vast aan de rijen.
Als er nieuwe leden bijkomen of weggaan, dan staan de ingevoerde controles opeens bij ander leden.

Daarom wil ik met een "invoer"-sheet werken.
Hier zeer kort een uniek lidnummer invoeren. Datum controle, reden controle & wie controle uitvoerde.
(6 controles is feitelijk de maximum).

In de tabel waar de gegevens uit de access-database staan, wil ik dan kolomen toevoegen met daarin de formules om in de "invoer"-sheet te gaan zoeken.


Volgens mijn zoekwerk op het forum, moet dat lukken met INDEX, VERGELIJKEN, VERSCHUIVEN.
Zo ver reikt mijn kennis van Excel momenteel niet, maar ik ben al wat aan het experimenteren.
 
Gelieve niet quoten.
Mijn advies: integreer de controletabel in de access-database.
 
In Acces is niet mogelijk.
'Controleurs' hebben daar geen machtigingen in.


Heb het ondertussen zelf al gevonden.


De kolom van de eerste controle kan je met een vert.zoeken vinden.

De volgende kolommen was wat moeilijker, maar heb het uiteindelijk gevonden.

Alle controles hebben een uniek volgnummer, dus door die mee te integreren in onderstaande formule kan je correct in kolommen filteren.
(Zonder het uniek volgnummer krijg je fouten. Vergelijken op bv. datum gaf problemen omdat controles bv. op dezelfde dag kunnen plaatsvinden. Dan werden deze in loop weergegeven in de kolommen.)

Onderstaande formule doet voor mij de truc.
En per kolom opschuiven met het uniek nummer.
=ALS.FOUT(INDEX(Invoer!$B$7:$F$14;VERGELIJKEN(E5;VERSCHUIVING(Invoer!$B$7;VERGELIJKEN(I5;Invoer!$C$7:$C$14;0);0):Invoer!B15;0)+VERGELIJKEN(I5;Invoer!$C$7:$C$14;0);3);"")

Bekijk bijlage Voorbeeld_oplossing.xlsx
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan