• 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.

automatisch sorteren en cellen met 0 niet weergeven

Status
Niet open voor verdere reacties.

vgtc

Gebruiker
Lid geworden
7 jul 2007
Berichten
31
Ik heb een tabel op werkblad A. Ik wil dat deze tabel automatisch wordt gesorteerd op kolom B en dat de rijen waarvan de cel in kolom B leeg is of een 0 heeft niet wordt weergegeven. Deze tabel moet dan in werkblad B worden weergegeven.
Met andere woorden al ik de tabel in werkblad A aan pas dan wordt de tabel in werkblad B automatisch aangepast en gesorteerd.
Kan iemand me daar bij helpen?

Groet, Vincent
 
En hoeveel rijen zijn er zo in die tabel?

Ik zou zelf persoonlijk met een Worksheet_Activate macro werken, maar indien het weinig rijen zijn (zie vraag hierboven), dan is hier een oplossing met formules.

Om nullen niet te laten zien zal je formule moeten uitbreiden, en dat zal niet triviaal zijn.

Wigi
 
Dag Wigi,

Ik zie je antwoorden pas vandaag. Ik heb geen automatische e-mail ontvangen, vandaar.
Ik werk met veel rijen en heb geen ervaring met Worksheet_Activate macro's.
Indien mogelijk kan je via deze link bij desbetreffend bestand komen. Dan kan je meteen zien wat ik bedoel.
Het gaat om werkblad Bestellijst DNB en die zou automatisch in werkblad Bestellijst Volgorde gesorteerd dienen te worden in kolom B.

Ik hoor wel of je er tijd voor hebt of niet.

Alvast bedankt.

Groet, Vincent
 
Wigi,

Ik ben even weg. Dus mocht je reageren dan kan ik niet meteen terug reageren.

Groet, Vincent
 
Je bestand is (zelfs gezipt) veel te omvangrijk om te uploaden !

Hieronder een oplossing zonder VBA of matrixformules, maar met 1 hulpkolom.

Voeg in sheet Bestellijst DNB één kolom toe (als eerste kolom).
Plaats in A3 van deze sheet ::
Code:
=ALS(ISNB(B3);"";ALS(B3=0;"";B3))
en kopieer tot A1001.

Zet in A3 van sheet Bestellijst Volgorde :
Code:
=ALS(ISFOUT(VERT.ZOEKEN(KLEINSTE('Bestellijst DNB'!$A$3:$A$1001;RIJ(B1));'Bestellijst DNB'!$A$3:$O$1001;KOLOM();0));"";VERT.ZOEKEN(KLEINSTE('Bestellijst DNB'!$A$3:$A$1001;RIJ(B1));'Bestellijst DNB'!$A$3:$O$1001;KOLOM();0))
en kopieer tot A1001 en N1001.

GiMe
 
Hoi GiMe,

Bedankt voor je reactie!
Ik heb gedaan wat je in je antwoord hebt gezet. Echter hij wordt dan gesorteerd op de bestelnummer en niet op magazijn. Kan het zijn dat door dat er een extra kolom is bijgekomen de b-kolom nu c-kolom moet zijn?

Groet, Vincent
 
Voor sortering op "MAGAZIJN" (alfanumeriek) moeten we het over een ander boeg gooien !
Hieronder een methode voor sortering op de eerste 6 tekens, eveneens zonder VBA of matrixformules.
Start vanaf je oorspronkelijk bestand.

-Voeg in sheet "Bestellijst DNB" één kolom toe (als eerste kolom).
Plaats in A3 van deze sheet :
Code:
=ALS(ISNB(C3);"";ALS(C3=0;"";ALS(C3="mag";(0+RIJ()/10000);WAARDE((LINKS(C3;2)&CODE(DEEL(C3;3;1))&ALS(DEEL(C3;4;1)="";0;DEEL(C3;4;1))&ALS(DEEL(C3;5;1)="";0;DEEL(C3;5;1))&ALS(DEEL(C3;6;1)="";0;DEEL(C3;6;1))+RIJ()/10000)))))
en kopieer tot A1001

-In cel P3 van dezelfde sheet :
Code:
=B3
en kopieer tot P1001

-In cel A3 van sheet "Bestellijst Volgorde" :
Code:
=ALS(ISFOUT(VERT.ZOEKEN(KLEINSTE('Bestellijst DNB'!$A$3:$A$1001;RIJ(C1));'Bestellijst DNB'!$A$3:$P$1001;16;0));"";VERT.ZOEKEN(KLEINSTE('Bestellijst DNB'!$A$3:$A$1001;RIJ(C1));'Bestellijst DNB'!$A$3:$P$1001;16;0))
en kopieer tot A1001

In cel B3 van dezelfde sheet :
Code:
=ALS(ISFOUT(VERT.ZOEKEN(KLEINSTE('Bestellijst DNB'!$A$3:$A$1001;RIJ(C1));'Bestellijst DNB'!$A$3:$O$1001;KOLOM()+1;0));"";VERT.ZOEKEN(KLEINSTE('Bestellijst DNB'!$A$3:$A$1001;RIJ(C1));'Bestellijst DNB'!$A$3:$O$1001;KOLOM()+1;0))
en kopieren tot N1001

GiMe
 
Kortere formule in A3 van sheet "Bestellijst DNB" :
Code:
=ALS(C3=0;"";SOMPRODUCT(--(C3>$C$3:$C$1001))+SOMPRODUCT(--($C$3:C3=C3))-AANTAL.LEGE.CELLEN($C$3:$C$1001))

GiMe
 
Hoi GiMe,

Hij werkt perfect. Ik dacht zelf ook al dat het iets te maken had met het alfanumerieke. KLEINSTE is volgens mij alleen voor getallen.
Enfin...
Ik ben er erg blij mee.

Hartstikke bedankt!!!

Groet, Vincent
 
functie KLEINSTE komt nog steeds voor in de sheet "Bestellijst Volgorde" !

GiMe
 
Laatst bewerkt:
Status
Niet open voor verdere reacties.
Steun Ons

Nieuwste berichten

Terug
Bovenaan Onderaan