Avatar billede rabitjosph Novice
06. oktober 2012 - 07:44 Der er 14 kommentarer og
1 løsning

CVS fil

Hej

Vil importer følgende data fra en CVS fil og ind i excel via macro

Følgende kommer ind i excel
A1 39054a
A2 0 B2 40
Men jeg vil gerne der står 0,40 i A2

Så når der er komma i min cvs fil spitter den det op i 2 kolonner
Det skal den ikke !
Hvordan kan jeg gøre dette i VBA

Se cvs fil
https://picasaweb.google.com/lh/photo/TpZP3vxODSRF2WyQtSA7WJM3uVa7E_1l21Phg3X1Rtk?feat=directlink
Avatar billede stalle Nybegynder
06. oktober 2012 - 08:27 #1
Der er tilsyneladende ikke HELT hul igennem her fra Kina til din CSV-fil, men jeg har da et bud på hvad problemet er.

Noget kunne tyde på, at der er brugt samme seperatorer for decimal-tal og som adskildelse af data.
Det er ikke ret nemt og gøre noget ved, med mindre data ligger på en helt bestemt og ens måde.

Altså, at du ved at første kolonne indeholder et navn.
Anden kolonne indeholder en værdi (decimaltal)
Tredie kolonne en ny værdi - også decimaltal.
Fjerde kolonne en værdi....osv osv...

Så kan du "tælle" dig ud af det, ellers bliver det ret svært og fikse.
Avatar billede NCG Novice
06. oktober 2012 - 10:06 #2
Excel vil normalt altid have komma sat som standard adskiller ved csv filer.
Din fil ser dog ud til at være adskilt med tabulator-tegn, så sørg for at kommaet er fravalgt ved import. Ellers har du netop problemet med decimalerne.
Avatar billede supertekst Ekspert
06. oktober 2012 - 10:19 #3
Du er velkommen til at sende filen - @-adresse under min profil.
Avatar billede rabitjosph Novice
06. oktober 2012 - 10:24 #4
Hej

Men hvordan skal vba komando ud i min makro ?
Avatar billede supertekst Ekspert
06. oktober 2012 - 10:54 #5
Jeg skal nok prøve at skrive VBA-en - men jeg skal prøve at finde ud af, hvilke separatortegn, der anvendes.
Avatar billede supertekst Ekspert
08. oktober 2012 - 13:15 #6
Ville du sende filen?
Avatar billede rabitjosph Novice
09. oktober 2012 - 19:12 #7
Hej
Hvis jeg bruger excel til at åbne CVS filen, gør den sådan og det er rigtigt

39054a
0,4
2,27
412
445
25
15
14
Reflow
5220
1218

Men hvis jeg bruger
Workbooks.Open Filename:="C:\Users\Desktop\39054a.csv"
Kolonne A  og B

39054a   
0    40
2    27
412   
445   
25   
15   
14   
Reflow   
5220   
1218   

Så der er en lille detalje i Open File man skal have sat for at den kan finde ud af at de skal stå i en kolonne

Men det er mærkelig at når jeg gør det ud VBA så kan den godt finde ud af det ?
Avatar billede NCG Novice
17. oktober 2012 - 08:25 #8
Prøv med:
Workbooks.OpenText Filename:="C:\Users\Desktop\39054a.csv", Tab:=True
Avatar billede rabitjosph Novice
18. oktober 2012 - 18:09 #9
Hej NCG

Nu står det i en kolonne men ikke helt ok
39054a;
0;40
2;27
412;
445;
25;
15;
14;
Reflow;
5220;
1218;
Avatar billede NCG Novice
19. oktober 2012 - 08:10 #10
Hov, hvor kommer ";" pludselig fra.
Det har du ikke stående i den oprindelige fil, så du må have noget mere i din makro/vba ?
Avatar billede rabitjosph Novice
19. oktober 2012 - 17:12 #11
Hej

Det er nogle som kommer når jeg bruger
Workbooks.OpenText Filename:="C:\Users\Desktop\39054a.csv", Tab:=True

Det der driller er måske at der er en new line for hver information i CVS filen, jeg bare ikke hvordan den ser ud eller hvad man gør
Avatar billede rabitjosph Novice
20. oktober 2012 - 08:02 #12
Hej NCG

Undskyld jeg roder lidt rundt i det, med din kode ser det sådan ud kommer i 2 kolonner så det efter kommaet står i B kolonne
39054a   
0    40
2    27
412   
445   
25   
15   
14   
Reflow   
5220   
1218
Jeg tror at seprator er new line, kan det håndteres
Avatar billede NCG Novice
24. oktober 2012 - 09:39 #13
Du bliver nødt til at være helt sikker på hvad der er decimal-tegn og hvilke separatorer der er anvendt!
Evt. sende filen som supertekst foreslog..
Avatar billede rabitjosph Novice
04. november 2012 - 06:44 #14
Hej Supertekst og NCG

Jeg har fået lavet CSV så det står kolonne vis og så kan jeg få det til at køre.

Supertekst du var hurtigste ude og jeg kunne også sende filen til dig men dette gjorde jeg ikke brug af. Du NCG var lige så behjælpelig, så Jeres indsats var begge meget tilfredsstillende.
Så stor tak til begge.
Supertekst vil du oprette svar ?
Avatar billede supertekst Ekspert
04. november 2012 - 13:35 #15
Selv tak - og et svar
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester