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

Vba

Status
Niet open voor verdere reacties.

Hermans99

Gebruiker
Lid geworden
16 apr 2016
Berichten
31
Hallo excel specialisten,
Ik heb een bestand gemaakt van 10.000 regels met 6 kolommen, al deze kolommen kan ik sorteren met een knop aan de bovenkant.
Sorteren via een macro die ik aan de knop heb toegevoegd
Nu wil ik de kolommen uitbreiden naar beneden, dat heet volgens mij de range.
Ik wil de range uitbreiden van 10.000 naar 25.000
Dat moet toch in VBA niet zo moeilijk zijn, maar ik krijg het niet voor elkaar.
Kan iemand mij helpen.
 
Hermans99, welkom op dit forum. Waarom sorteer je via VBA terwijl al deze functionaliteiten al standaard in Excel zijn ingebouwd door MicroSoft?
Maar goed, als je het toch liever zélf doet, laat dan even zien hoe je code er uit ziet in een voorbeeldbijlage. We hoeven absoluut géén 10.000 regels, maar gewoon wel een stel om je verder te kunnen helpen.
 
Ik weet niet precies waar een voorbeeld van wil hebben, ik heb een stukje VBA gekopieerd.
Of wil je een stukje van excel zelf zien.

Range("E4:E2003").Select
Range("B3:H2003").Sort Key1:=Range("E4"), Order1:=xlAscending, Header:= _
xlGuess, OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
DataOption1:=xlSortNormal
With Selection
.HorizontalAlignment = xlLeft
.VerticalAlignment = xlBottom
.WrapText = False
.Orientation = 0
.AddIndent = False
.IndentLevel = 0
.ShrinkToFit = False
.ReadingOrder = xlContext
.MergeCells = False
End With
Range("E4").Select
End Sub
Sub Figuur1_BijKlikken()
'
' Figuur1_BijKlikken Macro
' De macro is opgenomen op 20-12-2014.
'

'
Range("D4:D2003").Select
Range("B3:H2003").Sort Key1:=Range("D4"), Order1:=xlAscending, Header:= _
 
Mogelijk dat dit voldoende is.
Code:
Sub VenA()
With Range("B3:H" & Cells(Rows.Count, 5).End(xlUp).Row)
    .Sort [E4]
    .HorizontalAlignment = xlLeft
    .VerticalAlignment = xlBottom
End With
End Sub
 
Is dit wat je bedoelt


Sub Figuur2_BijKlikken()
'
' Figuur2_BijKlikken Macro
' De macro is opgenomen op 20-12-2014.
'

'
Range("E4:E2003").Select
Range("B3:H2003").Sort Key1:=Range("E4"), Order1:=xlAscending, Header:= _
xlGuess, OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
DataOption1:=xlSortNormal
With Selection
.HorizontalAlignment = xlLeft
.VerticalAlignment = xlBottom
.WrapText = False
.Orientation = 0
.AddIndent = False
.IndentLevel = 0
.ShrinkToFit = False
.ReadingOrder = xlContext
.MergeCells = False
End With
Range("E4").Select
End Sub
Sub Figuur1_BijKlikken()
'
' Figuur1_BijKlikken Macro
' De macro is opgenomen op 20-12-2014.
'

'
Range("D4:D2003").Select
Range("B3:H2003").Sort Key1:=Range("D4"), Order1:=xlAscending, Header:= _
xlGuess, OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
DataOption1:=xlSortNormal
Range("D4").Select
End Sub
Sub Figuur3_BijKlikken()
'
' Figuur3_BijKlikken Macro
' De macro is opgenomen op 20-12-2014 door.
'

'
Range("F4:F2003").Select
Range("B3:H2003").Sort Key1:=Range("F4"), Order1:=xlAscending, Header:= _
xlGuess, OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
DataOption1:=xlSortNormal
Range("F4").Select
End Sub
 
Laatst bewerkt:
Ik denk dat de helpers liever het bestand zien zonder gevoelige info.
Ook graag je code tussen codetags plaatsen voor de leesbaarheid.
Je selecteert je geplaatste code en drukt op # in het scherm.
 
HSV.
Ik snap niet wat je bedoelt.
Welke code moet ik tussen de codetags plaatsen.
Lijkt wel chinees voor me.
Zal ik een stukje uit het bestand kopiëren.
3 regels van het bestand plaatsen.
Of zal ik wat meer uitleggen.
Het is een muziekdatabase, die ik wil sorteren op 6 kolommen, naam, titel etc.
Sorteren via een knop aan de bovenkant van het bestand op A1,B1 etc.
Dan wil ik uitbreiden van 10.000 naar 25.000 regels.
 
Hermans99, Stap 1) maak een kopie van je echte bestand dmv SaveAs (opslaan als)
Stap 1a) Selecteer in dit kopiebestand alle regels onder regel 100 en delete deze regels
Stap 1b) Sla het kopiebestand nu op met Save (opslaan)
Stap 2) Ga naar HelpMij en scroll helemaal naar onderen in je eigen vraag zodat je bij het venster "snel reageren" komt.
Stap 3) Druk op de button "Ga geavanceerd"
Nu wordt je doorgezet naar een berichtvenster met meer opties. In de knoppenbalk zie je een knopje met een paperclip. Als je hierop klikt wordt er een popup venster geopend waarmee je op je eigen computer het kopiebestand kan opzoeken en deze kan toevoegen als bijlage bij je nieuwe bericht. DAT wilden we graag hebben. ;)

Overigens zie je in dat geavanceerd berichtenvenster óók een knop je met het hekje #. Als je VBA-code plaatst op het forum is het de bedoeling dat je dat tussen code-tags (= HTML) doet. Als je je code in een bericht hebt geplaatst, deze daarna selecteert en als laatste op dat knopje (#) drukt, zal je zien dat er wat HTML code om je tekst wordt gezet. In je bericht wordt dat dan veel duidelijker getoond.
 
Ik snap nu wat je bedoelt, maar het is nu een bestand met allerlei foto`s (pictogrammen) erin van 17,1 MB groot. dat kan ik niet uploaden.
Alle foto`s moet ik 1 voor 1 verwijderen.
Misschien kan Ginger vertellen wat ze bedoelt dat Microsoft dit gewoon zelf kan.
Via de filter, de autofilter!!! denk ik dan
 
Code:
Sub Figuur1_BijKlikken()
    sorteren 4
End Sub

Sub Figuur2_BijKlikken()
    sorteren 5
End Sub

Sub Figuur3_BijKlikken()
    sorteren 6
End Sub

Sub sorteren(x)
    Range("B3:H" & ActiveSheet.UsedRange.Rows.Count).Sort Key1:=Cells(4, x), Order1:=xlAscending, Header:= _
        xlGuess, OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
        DataOption1:=xlSortNormal
    Cells(4, x).Select
End Sub

PS Voor zover ik weet is Ginger tot op heden nog steeds een "hij". :D:D:D
 
Laatst bewerkt:
Bekijk bijlage Map1.xls

Ik heb mijn bestand helemaal uitgekleed alle toeters en bellen zijn eraf, ik heb nu 10 regels maar dat bestand is nog 2.2 MB groot ik mag maar 1 MB toevoegen.
Zelfs als ik hem comprimeer is hij nog 1.1 MB over en te groot. De macro`s nemen waarschijnlijk veel ruimte in. Daarom een bestand gemaakt zonder macro die ik kan uploaden.
Dat weten jullie wat ik bedoel.

Moet in nu de VBA code nog invoeren.

En Ginger mag ik vragen wat je bedoelt met dat kan Microsoft toch zelf!!
 
Code:
Sub hsv()
 Cells(3, 1).CurrentRegion.Sort Cells(3, CLng(Right(Me.Shapes(Application.Caller).Name, 1))), , , , , , , 1
End Sub
 

Bijlagen

kan ook:

Code:
Cells(3, 1).CurrentRegion.Sort Cells(3, Val(Right(Application.Caller, 1))), , , , , , , 1
 
Ik zal het onthouden. :cool:
 
Hallo HSV en SNB dit ziet er goed uit en werkt ook nog, maar hoe krijg in deze macro in mijn bestand met 10.000 regels die ik wil uitbreiden naar 25.000.
Ik ben nu bezig geweest met de filters die in Excel zitten, maar ik heb veel liever een bestand met knoppen en macro`s
Mag ik mijn bestand opsturen HSV of SNB, dat een van jullie de macro erin maakt, volgens mij is dat een peulenschil voor jullie.
 
Sla het eens op als .xlsb extensie, en probeer het nog eens.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan