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

excel bestand omzetten naar tekstbestand met vaste veldlengtes

Status
Niet open voor verdere reacties.

keesfilius

Gebruiker
Lid geworden
5 jan 2007
Berichten
293
Ik wil een excel bestand omzetten naar een tekstbestand met vaste veldlengtes. Getallen korter dan de veldlengte moeten aangevuld worden met voorloopnullen.
Hoe doe ik dat?

Groeten,
Kees
 
Laatst bewerkt:
In bijlage een macro en verwijzing naar website voor meer uitleg betreffende het omzetten naar tekstbestand
 

Bijlagen

Bedankt voor de moeite, maar te ingewikkeld voor mij. Ik probeer te snappen wat de macro doet, maar kom er zeker door het Engels niet uit. Bestaat er niet een eenvoudige handleiding of is het inderdaad ingewikkeld.

Groeten,
Kees
 
keesfilius, Waarom wil je er een vaste veldlengte van maken? Als ik zo je voorbeeld .txt-bestandje zie, kan je volgens mij zo klaar zijn door je adreslijst gewoon als .csv-bestand op te slaan. Dit is óók een tekstbestand maar dan komma gescheiden. Als je zoiets aanmaakt kan je dat in vele databases (maar uiteraard ook weer in Excel) inlezen. Deze manier van opslaan vind je gewoon bij de 'Save As' file types (Opslaan Als - bestandstypen) van Excel.

Maar als je echt een specifieke reden voor je vraag hebt, zou ik die graag vernemen.

Groet, Leo
 
Het tekstbestand wordt ingelezen in een bepaald programma. Vaste veldlengtes zijn een voorwaarde. Ik wil dus echt weten hoe dit werkt.

Groeten,
Kees
 
Vaste veldlengtes zijn een voorwaarde

Voor ons ook, het zou dus handig zijn als je per veld kan aangeven hoe lang deze dan zijn.
Ik heb al een gokje gewaagd met een klein stukkie code...
Code:
Sub Veldlengte()

    q1 = Split([A1], ";")

    For i = LBound(q1) To UBound(q1)
        q2 = q2 & Len(q1(i)) & "; "
    Next i
    
    [A2].Value = q2
    
End Sub
Waarbij de string...
Code:
001041;Filius                             ;K.        ;          ;Jansen                             ;Molenweg                ;    10;A;    ;4334BW;Amsterdam                     ;                        ;      ;    ;      ;                              ;0112-375431    ;V;06/04/1928;          ;19/06/2008;19/06/2011;W  ;                                                  ;
...deze uitkomst geeft...
Code:
6; 35; 10; 10; 35; 24; 6; 1; 4; 6; 30; 24; 6; 4; 6; 30; 15; 1; 10; 10; 10; 10; 3; 50; 0;
...kan jij aangeven of dit klopt?

Groet, Leo
 
Laatst bewerkt:
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan