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

Cellen splitsen: macro

  • Onderwerp starter Onderwerp starter estut
  • Startdatum Startdatum
Status
Niet open voor verdere reacties.

estut

Gebruiker
Lid geworden
5 mrt 2008
Berichten
52
Besturingssysteem
MacOS Sonoma 14.16.1
Office versie
Excel for Mac 2019 en Google Sheets voor XLookup gebruik
Beste deskundigen,

Mijn eerste vraag op deze site....ik wil een macro bouwen om een lange kolom, die namen en nummers bevat, netjes te splitsen. Ik ben al een eind gekomen, kan zelfs het aantal rijen vooraf tellen, maar kan een (waarschijnlijk simpel) detail niet gedaan krijgen, n.l. dat de cursor naar de volgende cel (naar beneden) gaat, als die de bovenliggende cel heeft gesplitst. Bijgaand een Excelbestandje met een voorbeeld, gezipt omdat .xls niet wordt geaccepteerd. Ik ben dankbaar voor een goede suggestie.
Met groet!
 

Bijlagen

Het eerste statement in de For loop selecteert Cel A1. Zet deze selectie een voor de For.

Ron
 
Het eerste statement in de For loop selecteert Cel A1. Zet deze selectie een voor de For.

Ron
Dank voor de snelle reactie. In: Selection.TextToColumns Destination:=Range("B1"), wordt aangegeven dat steeds alles in B1 wordt geplaatst. Dus de cursor verplaatst wel, maar de (geknipte) inhoud overschrijft zich.
 
Hallo,

Je heeft x gedefinieerd om de rijnummers te bepalen. Dit kan je gebruiken om steeds de volgende rij te selecteren.
Code:
Sub cellen_splitsen()
'
' cellen_splitsen Macro
' De macro is opgenomen op 6-3-2008
    
    Dim X As Integer
    ' Set numrows = number of rows of data.
    NumRows = Range("A1", Range("A1").End(xlDown)).Rows.Count
    ' Select cell a1.
    Range("A1").Select
    ' Establish "For" loop to loop "numrows" number of times.
    
    For X = 1 To NumRows

    [B]Cells(X, "A")[/B].Select
    Selection.TextToColumns Destination:=[B]Cells(X, "B")[/B], DataType:=xlDelimited, _
        TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=True, Tab:=True, _
        Semicolon:=False, Comma:=False, Space:=True, Other:=False, FieldInfo _
        :=Array(Array(1, 1), Array(2, 1), Array(3, 1), Array(4, 1)), TrailingMinusNumbers:= _
        True
    ActiveCell.Offset(1, 0).Select
    Next
   
    
End Sub

Ik heb alleen het vette gedeelte aangepast maar voor de volledigheid de hele macro weergegeven.

Met vriendelijke groet,


Roncancio
 
Hallo,

Je heeft x gedefinieerd om de rijnummers te bepalen. Dit kan je gebruiken om steeds de volgende rij te selecteren.
Code:
Sub cellen_splitsen()
'
' cellen_splitsen Macro
' De macro is opgenomen op 6-3-2008
    
    Dim X As Integer
    ' Set numrows = number of rows of data.
    NumRows = Range("A1", Range("A1").End(xlDown)).Rows.Count
    ' Select cell a1.
    Range("A1").Select
    ' Establish "For" loop to loop "numrows" number of times.
    
    For X = 1 To NumRows

    [B]Cells(X, "A")[/B].Select
    Selection.TextToColumns Destination:=[B]Cells(X, "B")[/B], DataType:=xlDelimited, _
        TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=True, Tab:=True, _
        Semicolon:=False, Comma:=False, Space:=True, Other:=False, FieldInfo _
        :=Array(Array(1, 1), Array(2, 1), Array(3, 1), Array(4, 1)), TrailingMinusNumbers:= _
        True
    ActiveCell.Offset(1, 0).Select
    Next
   
    
End Sub

Ik heb alleen het vette gedeelte aangepast maar voor de volledigheid de hele macro weergegeven.

Met vriendelijke groet,


Roncancio
 
Fantastisch Roncancio. Zeer bedankt!
Met groet.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan