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

Samenvatten met filters

Status
Niet open voor verdere reacties.

Scallebe

Gebruiker
Lid geworden
29 okt 2014
Berichten
535
Ontwikkelaars,

Deze code maakt een samenvatting van al mijn sheets in één sheet.

Ik zou een filter kunnen gebruiken om specifieke gegevens te bekijken.

Kan deze filter niet in de VBA gezet worden door middel van bv een InputBox waar de waarde van de filter moet ingegeven worden?

Ik zou de code dan aan een knop verbinden zodanig dat de gebruikers onmiddelijk resultaat hebben. Vele medewerkers zijn niet zo Excel minded. (Openen, inputten en sluiten, that's it)

Wie kan mij verder helpen?


Alvast bedankt

PHP:
Private Sub CommandButton22_Click()
 
Application.ScreenUpdating = False
SheetNames = Array("Apothekers", "Kinesisten", "MedGen", "Tandartsen", "Specialisten")
 
With Sheets("Alle CCF")
    .Range(.Range("CV6"), .Cells(.Rows.Count, 1).End(xlUp)).ClearContents
End With
 
For i = LBound(SheetNames) To UBound(SheetNames)
    With Sheets(SheetNames(i))
         .Range(.Range("CV6"), .Cells(.Usedrange.rows.count, 1)).Copy Sheets("Alle CCF").Cells(Rows.Count, 1).End(xlUp).Offset(1, 0)
    End With
Next i
Application.ScreenUpdating = True
 
End Sub


Greetz

Pascal
 
Laatst bewerkt:
VenA

Ik heb de code toch tussen de twee php's geplaatst als het dat is wat je bedoeld... :confused:


De vraag was inderdaad al gesteld als extra op die vraag die eigenlijk al opgelost was.

Misschien moet ik nog wat wachten op een reactive... :confused:

Het bestand is te groot om mee te sturen zelfs in Rar-versie...


Ik zal proberen uit te leggen wat de bedoeling is :

De code maakt een samenvatting van alle categorieen van lijn 4.

Alle sheets + de sheet met de samenvatting hebben dezelfde lay-out. Alles werkt (nog niet voor 100% maar dat is voor later)

So far so good.


Nu moet ik op regelmatige basis een lijst maken voor de mensen tewerkgesteld in Antwerpen (terug te vinden in Kolom 5 van iedere sheet). Ik zou op de samengestelde lijst een filter kunnen gebruiken en die lijst dan overmaken. Maar als ik de filter terug uitschakel dan zie ja alle rijen terug.

Ik zou nu door middel van een InputBox de mogelijkheid willen hebben alvorens Excel de sheets begint samen te vatten om een waarde in te geven in de Inputbox (vb Antwerpen)

Op die manier zou ik enkel een samengevatte lijst krijgen die voldoet aan de waarde die ik ingegeven heb. In dit geval dus enkel de medewerkers uit Antwerpen.

Ikzelf kan met filters werken maar vele collega's die de excel sheets moeten gebruiken zijn daar niet zo mee bekend.

Ik hoop dat mijn uitleg voldoende was...

Greetz

Pascal
 
Pascal,

in welke kolom staat het te filteren gegeven?
 
Je moet code tussen code tags zetten
Code:
 [/code} , niet tussen PHP.

Linksonder in het scherm, klik rechtermuisknop: weergaven van alle werkbladen met hyperlinks
 
Haije,

het te filteren gegeven staat in kolom 5

Greetz

Pascal
 
Laatst bewerkt:
Je kan toch even een kopie van jouw bestand maken. Daar het meeste uithalen zodat er per tab een een paar rijen blijven staan. Wij hoeven echt het hele bestand niet te hebben. Wat bedoel je met kolom 5? Kolom E?
 
VenA,

Ik heb mij vergist : het gaat over kolom 7 zijnde kolom G (Ik weet dat in sommige codes en formules het cijfer van de kolom moet ingegeven worden, daarmee)

Het bestand dat bijgevoegd is als volgt opgebouwd :

Een sheet Apothekers, een sheet Kinesisten en een sheet Alle CCF.

In Alle CCF is een knop "samenvatting alle CCF".

In de code van die knop zou de filter moeten ingebouwd worden.

Ik heb heel veel sheets verwijderd alsook heel veel gegevens en kolommen om het bestand te verkleinen.

Dus in de code van het voorbeeld is maar sprake van 2 sheets, in de originele van 5 maar dat zal niet veel uitmaken denk ik.

In de kolom G staan dus de plaatsen van tewerkstelling en die wil ik filteren. Als ik de groene knop aanklik zou een InputBox moeten verschijnen die vraagt voor welke stad met als resultaat een samengevaate lijst die voldoet aan de ingevoerde stad.

Bekijk bijlage Voorbeeld.rar


Ik hoop dat mijnen uitleg voldoende is. :rolleyes:

Greetz

Pascal
 
Pascal,

zoiets?
 

Bijlagen

Haije,

Het is zeker al een grote stap in de goede richting.

U hebt in de code het system "filter" ingebouwd, wat zeker niet slecht is voor de gebruikers intern. Maar van zodra de filter button terug wordt uitgeschakeld zijn alle lijnen terug zichtbaar en dat wil ik juist vermijden. De samengevatte lijst moet doorgestuurd worden naar een extern bureau en die mensen hebben geen boodschap (zelfs helemaal geen zaken) aan de andere lijnen die niet voldoen aan de ingegeven eenheid.

De bedoeling is dat enkel en alleen de lijnen in de samenvatting komen die voldoen aan de waarde van de InputBox.


Greetz

Pascal
 
Laatst bewerkt:
Oké, zo dan?
 

Bijlagen

Haije,

Ik neem aan dat de code wordt uitgevoerd in de samengevatte lijst.

Het werk niet helemaal goed.

Ik heb in de zes lijnen in het voorbeeld 3X antwerpen, 2X Gent en 1X Brussel

Wanneer ik in de InputBox Antwerpen typ dan krijg ik 3 X Antwerpen

Wanneer ik in de InputBox Gent typ dan krijg ik 1 X Gent, 1X Brussel, 1X Gent

Wanneer ik in de InputBox Brussel typ dan krijg ik 1X Antwerpen, 1X Brussel, 1X Gent

Ergens moet er dus toch een foutje zitten. :confused:


Ik kon ook de design mode niet uitschakelen. Heeft dit te maken met het type bestand dat je meegestuurd hebt?


Greetz

Pascal
 
Laatst bewerkt:
Pascal,

klein foutje, zie verbeterde versie
 

Bijlagen

Haije,

Nu is het perfect. Nu kan ik mijn sheets aanpassen.

Alvast bedankt.


Nog een klein vraagje, Met de code die bovenaan in mijn vraag staat worden alle sheets netjes onder elkaargeplaats in mijn samenvattende sheet. Dit gaat perfect.

De samenstelling van mijn sheets zijn voor de eerste 5 rijen diverse titels en hoofdingen, vanaf rij 6 de gegevens

Onderaan elke sheet komt er na de laatse rij met gegevens een blanco rij en dan negen rijen met diverse totalen voor verschillende kolommen. in total dus 10 rijen.

Van de eerste 4 sheets neemt hij die 10 rijen met totalen niet mee. (moet ook zo)

Enkel de laatste 10 rijen (met de totalen) van de laatste sheet (de Specialisten in dit geval) worden meegenomen. Het problem is nu dat in de formules voor mijn totalen het bereik niet klopt.

De formule die er zou moeten komen (voorbeeld voor kolom Y : =SUM($Y6:$Y342) en de formule die er staat : =SUM($Y104:$Y342) zijnde het bereik van enkel de specialisten. Lijkt me logisch omdat hij enkel de laatste 10 rijen van die specialisten heeft meegenomen.

Kan dat bereik nu voor al alle kolommen die een totaal berekenen automatisch aangepast worden naar het volledige bereik zijnde $Y6:$Y342

De lijnen die samengevat worden kunnen ook varieren. Soms worden in de verschillenede sheets lijnen verwijderd wegens einde contract. Uiteraard zijn het aantal rijen in de samenvattende sheet dus ook als dusdanig.

en telkens zou het bereik voor de formule voor de SUM(..:..) aan het aantal rijen moeten aangepast worden.


VEEL uitleg voor een klein vraagje.

Weet je misschien een oplossing? :(



Zeker bedankt voor het filterprobleem. :thumb::thumb:


Greetz

Pascal
 
Laatst bewerkt:
Pascal,

ik kan uit de code die je bedoelt niet opmaken dat alleen voor het laatste blad (Specialisten) de totalen meegenomen worden?!
 
Haije,

Toch is het dat eindresultaat zoals hierboven beschreven? Als ik bij uitvoering van de code zo een beetje meevolg dan zie ik hem sheet per sheet plakken in mijn samenvattende sheet.

Misschien kopieert Excel alle sheets met de 10 lijnen erbij in de samenvattende sheet maar begint hij de tweede sheet te plakken op die laatse lege lijn (zijnde die lege lijn tussen de gegevens en de totalen) van de vorige sheet enz en op die manier blijven enkel van de laatste sheet (in dit geval de specialisten) de laatste 10 rijen zichtbaar met dus inderdaad het bereik van de specialisten in de formules voor de totalen.

Klopt mijn redenering een beetje?


Pascal
 
Dat zou kunnen, ik kan het niet nagaan bij gebrek aan het bestand.

Je vraag zou opgelost kunnen worden door de totaalformules die er wel zijn door de code aan te laten passen.
Als je een vereenvoudigd voorbeeld kunt posten, dan wil ik wel eens kijken ....
 
Haije,

Niet zo simple om een gedeelte mee te sturen dat werkt ...

Ben je hier iets mee

de eerste foto zijn de resultaten en de tweede de formules, daar zie je dat excel het bereik van de laatste sheet hanteert.

Ik heb een print screen gedaan.


Blad 1.jpg

Blad 2.jpg

Greetz

Pascal
 
Haije,

Als dit niet lukt probeer ik straks thuis iets anders.

Greetz

Pascal
 
Pascal, dit lukt niet.
Is het mogelijk om een bestand te creëren waarin alle tabbladen voorkomen, en waar op elk tabblad maximaal 4 regels gegevens staan plus de koppen en de totalen.
Het aantal kolommen mag ook beperkt zijn, als er maar "optel"kolommen bij staan.
Het kan helpen om op te slaan als .xlsb (=binair).
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan