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

Sorteren op verschillende werkbladen

Status
Niet open voor verdere reacties.

Judith80

Gebruiker
Lid geworden
28 jul 2010
Berichten
15
Hoi,

Hopelijk kan iemand mij helpen. Ik kan redelijk omgaan met excel, maar heb geen verstand van macro's en visual basic.

De situatie:
Ik heb een registratiebestand gemaakt in excel met daarin verschillende werkbladen. Ieder werkblad wordt beheerd door iemand anders en bevat andere info over een lijst van dezelfde medewerkers. Dus blad 1 = registratie interne opleiding, blad 2 = registratie externe opleidingen, etc.
De gegevens van de medewerkers staan op een apart blad waarin P&O soms medewerkers toevoegt of verwijdert. De cellen van dit blad zijn gekoppeld aan de andere bladen, zodat er overal dezelfde medewerkersgegevens staan.

De vraag:
Zodra er een medewerker wordt toegevoegd of verwijderd en vervolgens de lijst weer op alfabetische volgorde wordt gesorteerd, dan ontstaat het probleem. De namen worden door de koppeling 1 op 1 overgenomen naar de andere bladen, wat op zich goed is. Maar de overige gegevens op de andere bladen worden dan natuurlijk niet meegesorteerd en het gevolg is dat de gegevens niet meer achter de juiste namen staan.

Ik ben dus op zoek naar een mogelijkheid om ervoor te zorgen dat op de andere bladen ook de hele regels meteen worden meegesorteerd als ik 1 blad op naam sorteer. Kan iemand mij helpen??
 
Ik weet zeer weinig van macro's, heb dus geprobeerd om die code te kopiëren naar visual basic in een probeerbestandje, maar dan geeft hij bij het uitvoeren steeds aan dat er iets fout is.

Ook heb ik geprobeerd die macro te downloaden op die andere pagina (sorteren met geheugen), maar als ik op de link klik, dan kom ik op een andere pagina en niet bij dat bestand, hij gaat in ieder geval niks downloaden oid.

Nu wil ik misschien maar proberen om blad 1 te behouden als beheer voor de medewerkers, deze cellen te koppelen aan de andere bladen. Toevoegen van een nieuwe medewerker onderaan de lijst op blad 1, dan een macro aanmaken die ervoor zorgt dat blad 2, blad 3 , etc gesorteerd worden op naam.
Op blad 1 niet sorteren, zodat de namen daar helaas niet op alfabet staan.

Er ontstaat wel een nieuw probleem: als ik in de gekoppelde cellen op blad 2 deze formule zet: =ALS(blad 1!A16="";"";blad 1!A16), dan ziet hij de cellen zonder naam niet als lege cellen (zeker doordat er een formule in staat?) en zet hij ze bij sorteren boven de cellen met naam. Enig idee hoe ik de (voor het zicht) lege cellen onderaan krijg bij sorteren?
 
Judith80,

Hier is een voorbeeld van het sorteren op meerdere tabbladen.
Voor je eigen bestand zal je het bereik en de sleutel moeten aanpassen maar dat snap je wel.
 

Bijlagen

Hoi, heb het geprobeerd, maar hij gaat dan automatisch naar foutenopsporing en geeft aan dat er iets fout is in deze code.

Sub Sorteren()
For Each ws In ThisWorkbook.Worksheets
ws.Sort.SortFields.Clear
ws.Sort.SortFields.Add Key:=Range("A2"), _
SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
With ws.Sort
.SetRange Range("A2:A5")
.Apply
End With
Next
End Sub
 
Judith80
Hoi, heb het geprobeerd, maar hij gaat dan automatisch naar foutenopsporing en geeft aan dat er iets fout is in deze code.

Ik gebruik Excel 2007 en heb het nog even getest en het werkt perfect. (al zeg ik het zelf)

Misschien is het beter om anders hier een voorbeeld met wat je wil hier te plaatsen.
Haal dan wel de gevoelige info weg.
 
Heb een voorbeeldje gemaakt waarin er wel gesorteerd wordt op verschillende bladen. Maar wat ik wil is dat als ik op blad 'Medewerkers' achter nr 13 een nieuwe toevoeg en daarna klik op de knop sorteren, dat dan op de bladen 'Intern' en 'Extern' de voor het zicht lege cellen onder de cellen met naam komen te staan. Ipv dat ze steeds bovenaan komen.
 

Bijlagen

Judith80,

Sorry dat ik wat laat reageer maar mijn internet lag er even uit.
Hier is je bestandje terug en hoop dat dit is wat je bedoel.

Mijn macro heb ik aan de knop verbonden (Sorteer1)
 

Bijlagen

Ik vind al dat je super snel reageert! Tot nu toe in ieder geval heel erg bedankt!:)

Hij blijft naar de foutenopsporing toe gaan, hij zegt dat er iets niet klopt in het stukje macro wat je hebt toegevoegd. Kan het iets te maken hebben met de versie van excel die er gebruikt hier op mijn werk? In de bijlage kun je zien wat er gebeurt. Ik geen idee hoe dit opgelost kan worden...:confused:
 

Bijlagen

  • voorbeeld bijlage.jpg
    voorbeeld bijlage.jpg
    72,6 KB · Weergaven: 132
Judith80,

Hoe komen die ' op de 2 eerste regels ervoor?
In de file heb ik ze niet gezet.

Haal die ' eens weg en dan zou het moeten lukken.
 
Judith80,

Hoe komen die ' op de 2 eerste regels ervoor?
In de file heb ik ze niet gezet.

Haal die ' eens weg en dan zou het moeten lukken.

Heb ze weggehaald, maar lukt nog niet....
 

Bijlagen

  • voorbeeld bijlage.jpg
    voorbeeld bijlage.jpg
    95,1 KB · Weergaven: 102
Als je voor deze regel wel de ' plaatst?

Nogmaals ik gebruik Excel 2007 en denk dat jij Excel 97 gebruik misschien dat het daar aan ligt?
 
Als je voor deze regel wel de ' plaatst?

Nogmaals ik gebruik Excel 2007 en denk dat jij Excel 97 gebruik misschien dat het daar aan ligt?

Ik weet het ook niet meer, krijg het niet voor elkaar.

Is er geen bestaande mogelijkheid in excel om lege cellen met formule onderaan te laten plaatsen bij sorteren??
 
Ik weet het ook niet meer, krijg het niet voor elkaar.

Misschien heeft iemand nog een oudere versie?
Ik lees wel meer dat een macro van 2007 problemen geef in 97

Ik zal nog even verder zoeken.
 
Ik zal ook nog eens een en ander proberen. Ben al aan het kijken naar het aanpassen van sorteervolgorden in Extra --> Opties --> aangepaste lijst. Dit lukt ook nog niet...
 
Hallo,

Ik heb het ook eens bekeken.
Werkt deze code misschien in jou excel versie?
Code:
Sub Sorteren1()
  For Each ws In ThisWorkbook.Worksheets
    Range("A2:B20").Sort Range("B2")
  Next
End Sub
Met vr gr
Jack
 
heb deze geprobeerd, hij zet echte lege cellen wel onderaan, maar cellen met formule worden toch boven de cellen met inhoud geplaatst. Ook al is de uitkomst van de formule geen tekst of getal.
 
Judith80,

Ben bij iemand geweest die Excel 97 gebruikt en daar doet hij het inderdaad niet.

Als je de code van Jack Nouws laat sorteren op de eerste kolom?

Code:
.sort Range("B2") "A2" maakt?

Code:
Sub Sorteren1()
  For Each ws In ThisWorkbook.Worksheets
    Range("A2:B20").Sort Range("[COLOR="red"]A[/COLOR]2")
  Next
End Sub
 
@Jack Nouws

@ HoornVan
Heb je van Excel 97 geen macro opgenomen om wel aan het juiste resultaat te komen?

Ik was al blij dat hij het even geprobeerd heeft en ben het inderdaad vergeten, sorry
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan