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

kolom a splitsen naar kolom b&c (alleen getal)

Status
Niet open voor verdere reacties.

ThatsMeTo

Gebruiker
Lid geworden
18 mei 2017
Berichten
31
Bekijk bijlage Voorbeeld te splitsen getallen.xlsm

Beste Forumleden,

In het bijgevoegde bestandje staan wat er moet gebeuren.
De bedoeling is dat de getallen in kolom A gesplitst worden naar kolom B & C, in kolom B komen de eerste twee getallen van het getal in kolom a, in kolom C komt de rest.

Dit dient te gebeuren met een VBA code (dit is maar een onderdeel van het totaal aan VBA).

Nu heb ik gekeken of ik iets kon vinden aan een code die ik kan verbouwen naar mijn specifieke wensen, die heb ik helaas niet kunnen vinden of ik snap de code niet goed genoeg om deze aan te passen.
Deze code heb ik gevonden en iets aangepast, maar deze code kopieert alleen maar en splitst helemaal niet.

[XML]Sub splitsen()
Dim RE As Object
Dim MC As Object
Dim M As Object
Dim cell As Range
Dim doel As Range

Set RE = CreateObject("vbscript.regexp")
RE.Pattern = "([^0-9]+) (\d+) (\d+)"
RE.Global = True

For Each cell In Range([a1], [a60000].End(xlUp))
Set MC = RE.Execute(cell.Value)
If MC.Count Then
Set M = MC(0)
Set doel = Sheets("Blad1").[a60000].End(xlUp).Offset(1)
doel = M.submatches(0)
doel.Offset(0, 1) = M.submatches(1)
doel.Offset(0, 2) = M.submatches(2)
Else
Set doel = Sheets("Blad1").[b60000].End(xlUp).Offset(1)
doel = cell
End If
Next cell
End Sub[/XML]

Kan iemand mij helpen met dit probleem?
 
Kijk eens naar left, mid en right in VBA en/of Excelformules

Beter zelf maken dan iets 'vinden' (waarvan je niet begrijpt hoe het werkt).
 
Laatst bewerkt:
Ik denk dat dit voldoende is:
Code:
Sub cobbe()
 For Each cl In Range("A1:A" & Range("A" & Rows.Count).End(xlUp).Row)
  cl.Offset(, 1) = "0" & Left(cl, 2)
  cl.Offset(, 2) = Right(cl, Len(cl) - 2)
 Next
End Sub

Je kan er nog wel wat code omheen breien maar......
 
Cobbe, bedankt voor je voorstel, snb, bedankt voor je tip!

na even zoeken is het gelukt om met behulp left/right gelukt om een VBA code te maken.
en deze snap ik nu ook, dus dat helpt :)
 
Status
Niet open voor verdere reacties.
Steun Ons

Nieuwste berichten

Terug
Bovenaan Onderaan