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

kolommen zoeken en sorteren

Status
Niet open voor verdere reacties.

Humadgen

Gebruiker
Lid geworden
16 aug 2006
Berichten
251
Hoi

Ik krijg iedere maand een spreadsheet aangeleverd waarvan ik niet zeker kan zijn dat de kolom volgorde iedere keer hetzelfde is.
Uit totaal 30 kolommen wil ik 6 kolommen op een vooraf gedefinieerde volgorde, vooraan in het spreadsheet hebben staan (kolom A t/m F)
De Kolom Headers zijn wel altijd hetzelfde.

Kan iemand me helpen hoe ik deze kolommen kan identificeren, knippen en vooraan kan wegzetten in het spreadsheet?

Ik heb een voobeeld van de headers + de volgorde bijgevoegd

Alvast bedankt
HumadgenBekijk bijlage Headers.xls
 
Via horizontaal zoeken is het geen probleem.
 

Bijlagen

  • Copy of Headers.xls
    18 KB · Weergaven: 21
Hoi Popipipo

Dank je wel voor je snelle antwoord. Je sheet: Zo wil ik het, geeft inderdaad het juiste eindresultaat. en via horizontaal zoeken kan ik ook die kolommen vinden. Maar ik denk dat ik mijn vraag niet duidelijk genoeg heb gesteld.

Ik ben op zoek naar de CODE die ik in een Macro kan gebruiken om ervoor te zorgen dat een kolom wordt gevonden en daarna geknipt en geplakt op de juiste plek.

Als de kolommen altijd op de juiste plek staan dan zou de onderstaande code het werk voor me kunnen doen, maar ik wil de HORIZNTAAL ZOEKEN functie gebruiken om er zeler van te zijn dat altijd de juiste kolommen geknipt en geplakt worden.
Code:
    Columns("G:G").Select
    Selection.Cut
    Columns("A:A").Select
    Selection.Insert Shift:=xlToRight
    
    Columns("H:H").Select
    Selection.Cut
    Columns("B:B").Select
    Selection.Insert Shift:=xlToRight
    
    Columns("H:H").Select
    Selection.Cut
    Columns("C:C").Select
    Selection.Insert Shift:=xlToRight
    
    Columns("I:I").Select
    Selection.Cut
    Columns("D:D").Select
    Selection.Insert Shift:=xlToRight
    
    Columns("I:I").Select
    Selection.Cut
    Columns("E:E").Select
    Selection.Insert Shift:=xlToRight
    
    Columns("M:M").Select
    Selection.Cut
    Columns("F:F").Select
    Selection.Insert Shift:=xlToRight
    
    Columns("G:AF").Select
    Selection.Delete Shift:=xlToLeft
Maar mijn probleem is dat ik niet weet hoe ik de HOR.ZOEKEN functie kan gebruiken en vervolgens de kolom kan oppakken die bij de waarde van de HOR.ZOEKEN functie hoort.

Ik hoop dat het nu duidelijker is wat ik bedoel.
Grtnx
Humadgen
 
VBA is niet mijn sterkste kant dus dan zal ik hier moeten passen en de specialisten op dat gebeid het stokje moeten overgeven.
 
Hoi

Ben ik weer.
Ik heb het zelf op kunnen lossen.
Het HOR.ZOEKEN levert (mij) totaal geen resultaat op. De zoekfunctie in EXCEL wel
De code die wel werkt staat hieronder. (Voor wie geinteresseerd is)
Code:
Sub sorteer()

    Sheets("Sheet2").Select
    Rows("1:1").Select
    Selection.Find(What:="Full /Part", After:=ActiveCell, LookIn:=xlFormulas, _
        LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, _
        MatchCase:=False, SearchFormat:=False).Activate
    ActiveCell.Offset(0, 0).Select
    Range(Selection, Selection.End(xlDown)).Select
    Selection.Cut
    Columns("A:A").Select
    Selection.Insert Shift:=xlToRight

    Rows("1:1").Select
    Selection.Find(What:="DeptID", After:=ActiveCell, LookIn:=xlFormulas, _
        LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, _
        MatchCase:=False, SearchFormat:=False).Activate
    ActiveCell.Offset(0, 0).Select
    Range(Selection, Selection.End(xlDown)).Select
    Selection.Cut
    Columns("A:A").Select
    Selection.Insert Shift:=xlToRight
    
    Rows("1:1").Select
    Selection.Find(What:="City", After:=ActiveCell, LookIn:=xlFormulas, _
        LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, _
        MatchCase:=False, SearchFormat:=False).Activate
    ActiveCell.Offset(0, 0).Select
    Range(Selection, Selection.End(xlDown)).Select
    Selection.Cut
    Columns("A:A").Select
    Selection.Insert Shift:=xlToRight
    
    Rows("1:1").Select
    Selection.Find(What:="Department", After:=ActiveCell, LookIn:=xlFormulas, _
        LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, _
        MatchCase:=False, SearchFormat:=False).Activate
    ActiveCell.Offset(0, 0).Select
    Range(Selection, Selection.End(xlDown)).Select
    Selection.Cut
    Columns("A:A").Select
    Selection.Insert Shift:=xlToRight

    Rows("1:1").Select
    Selection.Find(What:="Employee Name", After:=ActiveCell, LookIn:=xlFormulas, _
        LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, _
        MatchCase:=False, SearchFormat:=False).Activate
    ActiveCell.Offset(0, 0).Select
    Range(Selection, Selection.End(xlDown)).Select
    Selection.Cut
    Columns("A:A").Select
    Selection.Insert Shift:=xlToRight
    
    Rows("1:1").Select
    Selection.Find(What:="Employee ID", After:=ActiveCell, LookIn:=xlFormulas, _
        LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, _
        MatchCase:=False, SearchFormat:=False).Activate
    ActiveCell.Offset(0, 0).Select
    Range(Selection, Selection.End(xlDown)).Select
    Selection.Cut
    Columns("A:A").Select
    Selection.Insert Shift:=xlToRight


End Sub

Misschien dat de code eenvoudiger kan, maar hij werkt.
Grtnx
Humadgen
 
Laatst bewerkt:
Status
Niet open voor verdere reacties.
Steun Ons

Nieuwste berichten

Terug
Bovenaan Onderaan