TextToColumns datum probleem

Status
Niet open voor verdere reacties.

wilbert1967

Gebruiker
Lid geworden
19 jun 2004
Berichten
629
hallo

ik heb de volgende data regels
7,"10.0.0.9","8-12-2011 20:55","8-12-2011 20:55","nl","Huurbetaling","6","2"
8,"10.0.0.9","8-12-2011 21:01","8-12-2011 21:01","nl","Inschrijving als woningzoekende","2","2"
als ik deze code met macrorecorder weer afdraait

Code:
Selection.TextToColumns Destination:=Range("A10"), DataType:=xlDelimited, _
        TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=False, _
        Semicolon:=False, Comma:=True, Space:=False, Other:=False, FieldInfo _
        :=Array(Array(1, 1), Array(2, 1), Array(3, 4), Array(4, 4), Array(5, 1), Array(6, 1), _
        Array(7, 1), Array(8, 1)), TrailingMinusNumbers:=True

dan komt de datum omgekeerd in de cel.
hoe op te lossen?

mvg wilbert
 
dat zit hem wsk in de format van de cel. De volgorde van de dag maand jaar is een keuze in de cel format, daar kan je veel mogelijkheden kiezen, als je daar diegene kiest die je wil (en je neemt dit op) dan kan je die regelcode toevoegen aan je oorspronkelijke macro
 
Scylla zit denk ik op het goede spoor. Kijk ook eens bij de countrysetting van Windows. Misschien staat daar ook nog iets, amerikaans formaat wellicht?
 
hallo

dank voor antwoord

countrysetting heb ik gekeken en die staat op nederlands

voor uitvoer van de macro is de datum 8-12-2011 en erna 12-8-2011 en daar helpt de format aanpassing niet meer aan.

ik zoek verder.
ik denk dat het te maken heeft dat er " om de datum staat.

mvg
 
In VBA wordt een datum gezien volgens de Amerikaanse datumnotatie. En dat veroorzaakt de omzetting.
 
hoi

leuk om te weten maar hoe op te lossen zodat het geen Amerikaanse datumnotatie is



groeten
 
Bij het maken van de macro kun je in de wizard per veld aangeven hoe de notatie van het betreffende veld moet zijn; als je daar de juiste datumnotatie kiest, worden de datums (bij mij althans) goed omgezet. Heb je de instellingen ook aangepast?
 
Beste wilbert,

Ik denk dat je eerst even goed de functie "tekst naar kolommen" moet bekijken.

Je kunt namelijk zelf per kolom bepalen wat er met de data gebeurt, bijvoorbeeld standaard, tekst, getal of datum. Als je standaard kiest gaat er voor je gekozen worden. als een veld dan op datum lijkt, word een standaard datumnotatie gekozen.

Je kunt echter zelf ook de volgorde kiezen van DMY. (tip: klik op volgende, niet meteen op voltooien)

Mocht het nog steeds niet lukken, dan kun je als laatste redmiddel de kolommen waar de datum komt instellen als "tekst". stel dan ook de kolommen met data uit het csvbestand in als tekst.

nog even over je code (xl 2007):

Code:
Selection.TextToColumns Destination:=Range("A10"), DataType:=xlDelimited, _
        TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=False, _
        Semicolon:=False, Comma:=True, Space:=False, Other:=False, FieldInfo _
        :=Array(Array(1, 1), Array(2, 1), [b]Array(3, 4), Array(4, 4)[/b], Array(5, 1), Array(6, 1), _
        Array(7, 1), Array(8, 1)), TrailingMinusNumbers:=True

het vetgedrukte laat zien dat kolom 3 en 4 worden geimporteerd als datatype 4. dat is een constante van de enumeratie xlColumnDataType. je kunt de definitie hiervan vinden in de hulpfunctie van de vba. daar staat ook per waarde de notatie.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan