Helpmij.nl
Helpmij.nl
Helpmij.nl

Quote

Weergeven resultaten 1 tot 14 van 14

Onderwerp: Velden cq kolommen in een csv bestand anders rangschikken.

  1. #1
    Mega Senior
    Verenigingslid
    anton44's avatar
    Geregistreerd
    20 mei 2005
    Locatie
    ergens in Midden Limburg
    Vraag is opgelost

    Velden cq kolommen in een csv bestand anders rangschikken.

    Ik gebruik momenteel Advanced CSV Converter v7.19 om van een .csv bestand de veldvolgorde aan te passen en te converteren naar een .txt
    Hierbij gebruik ik het batch bestand:
    Code:
    Set path="C:\Program Files (x86)\Advanced CSV Converter\"
    "csvcnv.exe" C:\Downloads\Input.csv C:\Downloads\Output.txt /columns:field2,field3,field4,field1,field8,field11,field15,field18,field17/SRCSEP;
    Exit
    Er is behoefte om tijdens het converteren lege kolommen tussen te voegen, zoals bv
    Code:
    Set path="C:\Program Files (x86)\Advanced CSV Converter\"
    "csvcnv.exe" C:\Downloads\Input.csv C:\Downloads\Output.txt /columns:field2,field3,field4,field1,empty1,empty2,field8,field11,field15,empty3,field18,field17/SRCSEP;
    Exit
    Uiteraard kan dat na het inladen in Excel en daarin kolommen toevoegen maar dat is niet de oplossing die ik zoek.
    Laatst aangepast door anton44 : 24 september 2021 om 18:08
    Met dank en vriendelijke groet,
    Ton

  2. #2
    Tera Honourable Senior Member edmoor's avatar
    Geregistreerd
    8 september 2000
    Locatie
    Zuid-Holland
    Plaats eens een voorbeeld van zo'n CSV bestand en een TXT bestand zoals je die uiteindelijk wilt hebben.

    N.B.:
    Een CSV bestand is ook gewoon een teskt bestand.
    "It's hardware that makes a machine fast. It's software that makes a fast machine slow. "
    Op rechtstreekse vragen via email of privébericht reageer ik niet. Daar is het forum voor.
    Lees ook: http://www.helpmij.nl/forum/announcement.php?f=5

  3. #3
    Mega Senior
    Verenigingslid
    anton44's avatar
    Geregistreerd
    20 mei 2005
    Locatie
    ergens in Midden Limburg
    Ik had het kunnen weten

    met schermafdrukken hoe de output voor en na omzetting uitziet.

    De originele bestanden hebben geen kolomnamen
    Bijgevoegde kleine afbeeldingen Bijgevoegde kleine afbeeldingen Klik op afbeelding voor grotere versie

Naam:  Input2.jpg‎
Bekeken: 7
Grootte:  101,2 KB   Klik op afbeelding voor grotere versie

Naam:  Output2.jpg‎
Bekeken: 7
Grootte:  114,9 KB  
    Bijgevoegde bestanden Bijgevoegde bestanden
    Laatst aangepast door anton44 : 24 september 2021 om 19:51
    Met dank en vriendelijke groet,
    Ton

  4. #4
    Giga Honourable Senior Member
    Geregistreerd
    2 maart 2013
    De originele bestanden hebben geen kolomnamen
    Waarom dan wel in het voorbeeldbestand?
    Je kan een paard naar het water leiden, maar je kan het niet dwingen te drinken.

  5. #5
    Mega Senior
    Verenigingslid
    anton44's avatar
    Geregistreerd
    20 mei 2005
    Locatie
    ergens in Midden Limburg
    Om de verplaatsingen beter zichtbaar te maken voor de forumbezoekers.
    Met dank en vriendelijke groet,
    Ton

  6. #6
    Tera Honourable Senior Member edmoor's avatar
    Geregistreerd
    8 september 2000
    Locatie
    Zuid-Holland
    Zet dit in een bestandje met de naam CSV2TXT.vbs in de map C:\Downloads:
    Code:
    Dim of(9)
    
    fileIN = WScript.Arguments.Item(0)
    fileOUT= WScript.Arguments.Item(1)
    
    Set fso = CreateObject("Scripting.FileSystemObject")
    Set fi = fso.OpenTextFile(fileIN)
    Set fo = fso.CreateTextFile(fileOUT,True)
    
    Do Until fi.AtEndOfStream
        rgl = Split(fi.ReadLine, ";")
        of(0) = rgl(5) 'Code 
        of(1) = rgl(2) 'Datum 3
        of(2) = ""     'LEEG 1
        of(3) = rgl(0) 'Datum 1
        of(4) = rgl(1) 'Datum 2
        of(5) = rgl(3) 'Kenmerk
        of(6) = ""     'LEEG 2
        of(7) = ""     'LEEG 3
        of(8) = rgl(4) 'opm
        of(9) = ""     'LEEG 4
        fo.Write Join(of, ";")
        fo.Write vbCrLf
    Loop
    
    fi.Close
    fo.Close
    En dit in dezelfde map in een bestandje met de naam CNV.bat:
    Code:
    CSV2TXT C:\Downloads\Input.csv C:\Downloads\Output.txt
    Zorg dat in de map C:\Downloads dat bestandje Input.csv aanwezig is en dubbelklik dan op dat .bat bestandje.
    Het bestandje Output.txt wordt dan gemaakt.
    Laatst aangepast door edmoor : 24 september 2021 om 20:36
    "It's hardware that makes a machine fast. It's software that makes a fast machine slow. "
    Op rechtstreekse vragen via email of privébericht reageer ik niet. Daar is het forum voor.
    Lees ook: http://www.helpmij.nl/forum/announcement.php?f=5

  7. #7
    Mega Senior
    Verenigingslid
    anton44's avatar
    Geregistreerd
    20 mei 2005
    Locatie
    ergens in Midden Limburg
    Top !
    Werkt prima. Hier kan ik mee verder (denk ik)

    De rij met kolomnamen kan ik in een verdere bewerking negeren of verwijderen.

    Kan in elke map geplaatst worden als in de .bat de mapnamen niet vermeld staan en beide bestanden (.vbs en .bat ) in dezelfde map staan.
    Code:
    CSV2TXT Input2.csv Output5.txt
    Met dank en vriendelijke groet,
    Ton

  8. #8
    Tera Honourable Senior Member edmoor's avatar
    Geregistreerd
    8 september 2000
    Locatie
    Zuid-Holland
    Veel plezier er mee
    "It's hardware that makes a machine fast. It's software that makes a fast machine slow. "
    Op rechtstreekse vragen via email of privébericht reageer ik niet. Daar is het forum voor.
    Lees ook: http://www.helpmij.nl/forum/announcement.php?f=5

  9. #9
    Mega Senior
    Verenigingslid
    anton44's avatar
    Geregistreerd
    20 mei 2005
    Locatie
    ergens in Midden Limburg
    Quote Origineel gepost door edmoor Bekijk Bericht
    Veel plezier er mee
    Zal ik zeker hebben. Bedankt !
    Met dank en vriendelijke groet,
    Ton

  10. #10
    Mega Senior
    Verenigingslid
    anton44's avatar
    Geregistreerd
    20 mei 2005
    Locatie
    ergens in Midden Limburg
    Quote Origineel gepost door anton44 Bekijk Bericht
    Zal ik zeker hebben. Bedankt !
    Alles werkt nu naar wens met in totaal 29 velden/kolommen.

    Heb wel moeten stoeien met padnamen en zonder succes.
    Als oplossing gekozen om in de CNV.bat het .vbs bestand te kopiëren naar de downloadmap en aan het einde van het script van cnv.bat deze weer te verwijderen uit de downloadmap.
    Achtergrond: de downloadmap is niet bedoeld om programma's definitief te herbergen.
    Met dank en vriendelijke groet,
    Ton

  11. #11
    Tera Honourable Senior Member edmoor's avatar
    Geregistreerd
    8 september 2000
    Locatie
    Zuid-Holland
    Als die padnamen spaties bevatten moet je ze in het .bat bestand tussen quotes zeten:
    Code:
    CSV2TXT "C:\Een map naam\Input.csv" "C:\Een map naam\Output.txt"
    Laatst aangepast door edmoor : 26 september 2021 om 09:27
    "It's hardware that makes a machine fast. It's software that makes a fast machine slow. "
    Op rechtstreekse vragen via email of privébericht reageer ik niet. Daar is het forum voor.
    Lees ook: http://www.helpmij.nl/forum/announcement.php?f=5

  12. #12
    Mega Senior
    Verenigingslid
    anton44's avatar
    Geregistreerd
    20 mei 2005
    Locatie
    ergens in Midden Limburg
    Quote Origineel gepost door edmoor Bekijk Bericht
    Als die padnamen spaties bevatten moet je ze in het .bat bestand tussen quotes zeten:
    Code:
    CSV2TXT "C:\Een map naam\Input.csv" "C:\Een map naam\Output.txt"
    Klopt. Is bekend.
    Het zijn relatief lange padnamen in .bat
    Code:
    padnaam1\CSV2TXT padnaam2\Input2.csv padnaam2\Output5.txt
    Vooral padnaam 1 is lang.
    padnaam2 is d:\downloads
    Met dank en vriendelijke groet,
    Ton

  13. #13
    Mega Senior
    Verenigingslid
    anton44's avatar
    Geregistreerd
    20 mei 2005
    Locatie
    ergens in Midden Limburg
    De aanhouder wint.
    Had een typefoutje in het script. Werkt nu wel direct vanuit de "diepe" plaats.
    Met dank en vriendelijke groet,
    Ton

  14. #14
    Tera Honourable Senior Member edmoor's avatar
    Geregistreerd
    8 september 2000
    Locatie
    Zuid-Holland
    Een typefoutje is gauw gemaaakt
    "It's hardware that makes a machine fast. It's software that makes a fast machine slow. "
    Op rechtstreekse vragen via email of privébericht reageer ik niet. Daar is het forum voor.
    Lees ook: http://www.helpmij.nl/forum/announcement.php?f=5

Berichtenregels

  • U mag geen nieuwe vragen starten.
  • U mag niet reageren op berichten.
  • U mag geen bijlagen versturen.
  • U mag uw berichten niet bewerken.
  •  
Helpmij.nl
Helpmij.nl

Helpmij.nl

Regels
Help

Helpmij.nl en business

Partners
Sponsoren