Export to .csv bestand

Status
Niet open voor verdere reacties.

test1000

Gebruiker
Lid geworden
7 jul 2017
Berichten
258
Hoi,

Een extract van de code.
Code:
Dim resultaat as string
dim nr as integer
dim nm as string
dim resul as string

resul = nr & nm

for i = 1 to 10
     if resul = "" then
            resultaat = result & i
    else
            resultaat = resultaat & ":" resul & i
end
Wanneer ik nu een export doe naar .csv bestand en de waarde van het veld "resultaat" bestaat uit vb 0012584A10 dan krijg je, wanneer je in Excel kijkt een rare waarde zoals vb 1,12E+4
Wanneer je met het programma 'kladblok' bekijkt is de waarde wel juist.
Maar soms moet men nog wijzigingen aanbrengen in de Excel, in een ander veld, maar dan wordt de waarde 1,12E+4 ipv 0012584A10
Wanneer de waarde 0012584A-10 is wordt de waarde wel goed weergegeven.
Het heeft te maken dat string veld dat begint met een numeriek cijfer. Als een vreemd teken in de string dan ook geen probleem. Zonder vreemd teken krijg je een 'onwettige' waarde.
Iemand enig hoe dit opgelost kan worden ?
Want als je string begint met vb B dan klopt de waarde. Vb B0012584A10

Alvast bedankt.
 
Laatst bewerkt:
De volledige code en een voorbeeld bestand werkt bij zulke vragen vaak beter. Excel heeft wat ingebakken intelligentie om van 'getallen' een wetenschappelijke notatie te maken. 0012584A10 kan als een hexadecimaal 'getal' gezien worden en dan kan je zulke rare uitkomsten verwachten. Met Cstr of een "'" is dit meestal wel op te lossen.
 
Laatst bewerkt:
Ook in Access? ;)
 
Oeps in het 8-poot forum:shocked:

Sorry TS, Ik dacht dat het om Excel ging. In deze sectie van het forum mag er maar 1 het laatste woord hebben.
 
Laatst bewerkt:
Sorry TS, Ik dacht dat het om Excel ging. In deze sectie van het forum mag er maar 1 het laatste woord hebben.
Wat fijn dat de kleutertjes af en toe ook wat nuttigs inbrengen. Maar laat die onzin je vooral niet weerhouden om af en toe ook iets bruikbaars te zeggen. zoals je eerste berichtje wat natuurlijk gewoon een correct antwoord is. Het 'probleem' ligt m.i. ook eerder in Excel dan in Access, want als je een csv bestand opent met dubbelklikken, kan het inderdaad voorkomen dat lange getallen in de verkeerde notatie binnenkomen. Het is dan ook beter om het csv bestand via een Tekstimport binnen te halen, zodat je de velden afzonderlijk kan instellen. Dat werkt dan meestal veel beter.
Overigens krijg je géén 'onwettige waarde', zoals TS veronderstelt, maar een (niet-gewenste) numerieke opmaak. Als je zo'n getal overigens wél met voorloopnullen binnenhaalt, en vervolgens iets doet met die cel, dan is de kans groot dat je alsnog een 'normale' getalweergave krijgt, en dus de voorloopnullen weer kwijt bent. Ook kun je niet rekenen met die getallen. Maar dat is aan TS uiteraard :).
 
Status
Niet open voor verdere reacties.
Steun Ons

Nieuwste berichten

Terug
Bovenaan Onderaan