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

Inlezen CSV bestand

Status
Niet open voor verdere reacties.

Lampie173

Gebruiker
Lid geworden
21 jan 2012
Berichten
154
Goedemorgen allen,

Ik zit met het volgende:
Vanuit een CSV bestand wil ik bepaalde bedragen filteren.
Als ik in het uitgepakte bestand kijk dan is alles, netjes gescheiden door een komma, zoals het hoort.
Alleen valt het mij op dat de bedragen met een decimaalpunt vermeld staan : € 70.10 i.p.v. € 70,10

Ik lees het als een tekst bestand
Lees ik het bestand in, dan is de punt weg en staat er 7010

Hoe kan ik er voor zorgen dat er een komma in de bedragen komt?

Zie voorbeeldbestand.

Al vast bedankt voor de geboden hulp.

Mvg.

Toon.
 

Bijlagen

  • Voorbeeld CSV.xlsx
    8,9 KB · Weergaven: 15
Plaats eens een klein deel van die csv met fictieve data.
 
De volgende formules in de cellen plaatsen:
I6 --> =H6/100
I7 --> =H7/100
 
Kan, maar dat is achteraf corrigeren. Ideale situatie lijkt me de gegevens meteen goed te importeren.
 
@ Alexcel,
Zie voorbeeld met fictieve data.

Het gaat in dit voorbeeldje om -62.72 en -16.22

@ JAP3600 en jkpieterse

Dit zijn natuurlijk ook opties.

Voor een alle mijn dank.
 

Bijlagen

  • Voorbeeld CSV 1.xlsx
    8,7 KB · Weergaven: 22
Kortste klap lijkt me omzetten met "tekst naar kolommen" en dan de "." vervangen door een "," met zoeken en vervangen (ctrl+H).
 
Kortste klap lijkt mij het openen van de CSV bestand in Kladblok.
Vervang dan komma door puntkomma en dan punt door komma.
Dan kan je hem gewoon in Excel openen.
 
Ik sloeg jouw bestand op als c00
Ik veronderstel dat jij puntkomma als lijstscheidingsteken in Excel hebt ingesteld.

Code:
Sub M_snb()
  c00 = "G:\OF\SNSB_001.csv"
  c01 = "G:\OF\SNSB_002.csv"
   
  With CreateObject("scripting.filesystemobject")
    .createtextfile(c01).write Replace(Replace(.opentextfile(c00).readall, ",", ";"), ".", ",")
  End With
    
  Workbooks.Open c01, local:=True
End Sub
 
@ Alexcel,
Zie voorbeeld met fictieve data.
Het gaat in dit voorbeeldje om -62.72 en -16.22

De vraag in post 2 is: "Plaats eens een klein deel van die csv met fictieve data".
 
Laatst bewerkt:
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan