DarkValley
Gebruiker
- Lid geworden
- 11 jan 2007
- Berichten
- 59
Hoi Allemaal,
Het is al weer een tijdje geleden dat ik een beroep doe op jullie VBA goeroes. Normaliter kan ik het wel redelijk vinden binnen dit forum. Maar als het om de combi Excel naar TXT gaat ben ik het spoor nu toch helemaal bijster!
Ik probeer via VBA vanuit het tabblad <DATA> een opgemaakt TXT bestand te maken via VBA. De code moet daarbij rekening houden met de instellingen in het tabblad <Template>
Hierin staan de kolomkoppen met begin positie en het aantal posities die max gebruikt mogen worden (per kolom).
Als het aantal gebruikte posities (in een cel tabblad DATA) kleiner is, dan wat het template aangeeft moet dit worden aangevuld met spaties tot aan de maximale lengte.
Dus als voorbeeld <Gereserveerd> zijn dan de eerst 0 t/m 22 posities alleen maar spaties.
NB. Alle informatie over recordlengte heeft betrekking op de maximale recordlengte plus CR/LF. Een record kan korter zijn als de rest van de record alleen uit spaties bestaat. Records eindigen echter altijd met een CR/LF (Carriage Return (decimaal 13) / Line Feed (decimaal 10) combinatie.
Ideaal zou het zijn als de code per <Naam> kijkt in tabblad DATA wat de gegevens zijn en deze dan in een TXT bestand zet, rekening houdend met begin Pos en de Lengte.
De Header moet niet worden meegenomen in het TXT bestand
Tabblad: Template

Max record lengte 400 posities (komt dus CR/LF nog bij !)
Tabblad: DATA

Final TXT bestand:

Ik hoop dat jullie mij kunnen helpen.
Groet
Jeffrey
Voorbeeld bestanden:
Bekijk bijlage Voorbeeld bestand Dummy.xlsx
Bekijk bijlage 231.txt
Het is al weer een tijdje geleden dat ik een beroep doe op jullie VBA goeroes. Normaliter kan ik het wel redelijk vinden binnen dit forum. Maar als het om de combi Excel naar TXT gaat ben ik het spoor nu toch helemaal bijster!
Ik probeer via VBA vanuit het tabblad <DATA> een opgemaakt TXT bestand te maken via VBA. De code moet daarbij rekening houden met de instellingen in het tabblad <Template>
Hierin staan de kolomkoppen met begin positie en het aantal posities die max gebruikt mogen worden (per kolom).
Als het aantal gebruikte posities (in een cel tabblad DATA) kleiner is, dan wat het template aangeeft moet dit worden aangevuld met spaties tot aan de maximale lengte.
Dus als voorbeeld <Gereserveerd> zijn dan de eerst 0 t/m 22 posities alleen maar spaties.
NB. Alle informatie over recordlengte heeft betrekking op de maximale recordlengte plus CR/LF. Een record kan korter zijn als de rest van de record alleen uit spaties bestaat. Records eindigen echter altijd met een CR/LF (Carriage Return (decimaal 13) / Line Feed (decimaal 10) combinatie.
Ideaal zou het zijn als de code per <Naam> kijkt in tabblad DATA wat de gegevens zijn en deze dan in een TXT bestand zet, rekening houdend met begin Pos en de Lengte.
De Header moet niet worden meegenomen in het TXT bestand
Tabblad: Template

Max record lengte 400 posities (komt dus CR/LF nog bij !)
Tabblad: DATA

Final TXT bestand:

Ik hoop dat jullie mij kunnen helpen.
Groet
Jeffrey
Voorbeeld bestanden:
Bekijk bijlage Voorbeeld bestand Dummy.xlsx
Bekijk bijlage 231.txt