• 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 bedragen sorteren, ook met nieuwe invoer

Status
Niet open voor verdere reacties.

Thijmen96

Nieuwe gebruiker
Lid geworden
2 jun 2016
Berichten
3
Hallo allemaal,

Ik ben nieuw op dit forum, en deze site heeft mij al meerdere malen geholpen met vragen over voornamelijk microsoft office. Ik heb nu echter een brandende vraag, en hoop dat jullie mij kunnen helpen. Ik hou mijn uitgaven bij in een excel-sheet. Ik heb dit onderverdeeld in meerdere categorieën, zoals boodschappen, kleding etc. Om het overzicht te hebben, vind ik het prettig om ingevulde bedragen van hoog naar laag te sorteren. Dit doe ik onder sorteren > kolom ("bedrag") > hoog naar laag. Maar als ik iets nieuws onderaan de lijst met huidige bedragen in voer, blijft deze onder de gesorteerde lijst staan. Ik wil juist dat deze automatisch op de juiste plek in de lijst springt met de al bestaande bedragen. Hoe zorg ik dat de nieuwe invoer automatisch op de juiste plek komt te staan? Ik hoop dat jullie mij kunnen helpen. Met vriendelijke groet,

Thijmen

Ik hoop dat deze afbeeldingen wat verduidelijken. Ik wil dus dat "Voorbeeld" bij mijn nieuwe invoer automatisch op de juiste plek komt te staan.

Schermafbeelding 2016-06-02 om 13.00.55.png

Schermafbeelding 2016-06-02 om 13.01.29.png
 
Is het bereik wel goed ingesteld?
Zet anders je bestandje even hier.
 
Hallo,

Ik zal mijn bestand even bijvoegen. Nogmaals, ik sorteer dus via Gegevens -> Sorteer. Is denk ik dus niet de goede oplossing. En Gerard2348 zijn oplossing komt goed in de buurt, maar ik vraag me af of het mogelijk is dat dit automatisch gebeurt nadat ik de cel van "bedrag" heb ingevuld, en dat de regel dan automatisch naar de goede regel springt. Ook weet ik niet hoe ik dit zou moeten realiseren in mijn eigen sheet. Hoop dat jullie me verder kunnen helpen.

Thijmen
Bekijk bijlage HelpMijBegroting.xlsx
 
Dit is exact zoals ik wil dat het werkt. Hartelijk dank. :thumb: In het bestand dat je gestuurd hebt werkt het alleen voor het kopje boodschappen. Hoe krijg ik het voor elkaar dat het voor alle kopjes werkt? Ook wil ik dat ik het zelfde sheet opnieuw kan gebruiken voor elke maand. Normaal kopieer ik dan het blad van de huidige maand, voeg ik een nieuw blad toe en plak ik dat weer, maar dat lijkt niet voldoende in dit geval. Kun je me misschien uitleggen hoe je dit gedaan hebt?
 
Druk op de knop F11, dan zit je in de VBA editor, kijk hoe het gemaakt is (met de Macrorecorder)
Probeer voor de andere die je wil doen z'n macro te maken.
Je kunt hem copyeren en het bereik en kolom nr aan te passen.

Het zal best wel beter kunnen maar ik ben hier geen specialist in.(vandaar de Macrorecorder)

Maak wel eerst een Back-up van je bestandje voordat het fout gaat.
Suc6
 
Ik weet niet of dit wenselijk is maar dit is een methode.

Bekijk bijlage HelpMijBegroting_1 (1).xlsm

het probleem wanneer je het op deze manier doet is dat je met een muisklik in de gewenste cel moet staan om het bedrag in te vullen. Ik weet niet hoe het anders moet. Dat is voor de echte specialisten.
 
Laatst bewerkt:
Thijmen96,

Ik heb in het bestandje van Gerard2348 Select Case gebruikt met de code van Gerard2348.
Nu pakt hij enkel de code van die kolom, dan is het niet nodig om al de code te laten lopen.
 

Bijlagen

Met draaitabel(len)

Thijmen,

in deze bijlage een oplossing met één tabel om gegevens in op te geven en 7 draaitabellen (voor elk item 1)
 

Bijlagen

Ook een mooie oplossing:thumb:
TS moet zelf maar kijken wat hij wil.
 
Volgens mij is dit wel voldoende.

Code:
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
If Not Intersect(Target, Range("B2:B25,D2:D25,F2:F25,H2:H25,J2:J25,L2:L25")) Is Nothing And Target.Count = 1 Then
    Cells(2, Target.Column).Offset(, -1).Resize(24, 2).Sort Cells(2, Target.Column), 2
End If
End Sub
 
Alle wegen naar Rome horen, binnen dit draadje, en in mijn optiek naar de oplossing van Haije te gaan.;)

VBA is leuk maar de ingebakken functies van excel zijn vaak sneller en makkelijker te onderhouden.
 
of:

Code:
Private Sub Worksheet_Change(ByVal Target As Range)
   If Target.Count = 1 And Not Intersect(Target, ListObjects(1).DataBodyRange.Rows(ListObjects(1).DataBodyRange.Rows.Count)) Is Nothing Then ListObjects(1).DataBodyRange.Columns(Target.Column).Sort Target, , , , , , , xlYes
End Sub
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan