Avatar billede kualle Juniormester
28. januar 2013 - 08:34 Der er 1 kommentar og
2 løsninger

Hjælp til at transformere besværligt data om til lettilgængelig data

Hej!

Jeg sidder med et problem, som jeg meget ofte er stødt ind i.

Jeg har data, der ser ud på følgende måde:

SUB - Samtlige Udvalgte Boligområder    201205    0,4985
SUB - Samtlige Udvalgte Boligområder    201206    0,4973
SUB - Samtlige Udvalgte Boligområder    201207    0,49
SUB - Samtlige Udvalgte Boligområder    201208    0,4903
SUB - Samtlige Udvalgte Boligområder    201209    0,4824
SUB - Samtlige Udvalgte Boligområder    201210    0,484
SAB - Samtlige Almene boligområder    201205    0,4277
SAB - Samtlige Almene boligområder    201206    0,4286
SAB - Samtlige Almene boligområder    201207    0,4255
SAB - Samtlige Almene boligområder    201208    0,4244
SAB - Samtlige Almene boligområder    201209    0,4143
SAB - Samtlige Almene boligområder    201210    0,416

Jeg kunne godt tænke mig at få disse data transformeret om til følgende format på en smart måde:

    201205    201206    201207    201208    201209    201210
SUB    0,4985    0,4973    0,49    0,4903    0,4824    0,484
SAB    0,4277    0,4286    0,4255    0,4244    0,4143    0,416


M.A.O. vil jeg gerne have, at i stedet for at stå under hinanden, så skal observationerne stå efter hinanden, og der skal kun være eet navn per område.


Jeg har aldrig arbejdet i VBA, men må vel snart se mig nødsaget til at få det lært - her kunne det sikkert gøres i en håndevending. Mine datasæt er meget ofte meget store, og det er ekstremt tungt at gøre denne transformering manuelt.

Ved nogen, om det er muligt at gøre smart i excel?
Avatar billede anton_dk Nybegynder
28. januar 2013 - 09:27 #1
Hej
Prøv at kigge på Pivot i Excel.
Der kan du transformere dine data så de passer til ovenstående beskrivelse.
Det nemmeste er at prøve sig frem på det område.

Du kan så undgå VBA.

Med venlig hilsen
Anton
Avatar billede tballe Nybegynder
28. januar 2013 - 09:28 #2
Hej

Jeg ved ikke hvilket operativsystem du bruger. Hvis det er windows 7
kan du anvende powershell der findes default på din pc.

Der findes også andre metoder, ved andre OS

Her kan du bruge den indbyggede split funktion. Eks.

$line = "SUB - Samtlige Udvalgte Boligområder    201205    0,4985"

$result = $line.split(" ") //splitter på mellemrum

efterfølgende kan du udprinte på denne her måde eks:
echo $result[0] .........$result[6] | out-file c:\res.txt

resultatet i din fil vil være SUB ........ 201205   

Hilsen tballe
Avatar billede kualle Juniormester
28. januar 2013 - 09:41 #3
Tak for jeres svar.
@tballe: Det er meget spændende at udforske powershell - det har jeg aldrig stiftet bekendtskab med.

@Anton_dk: Jeg kender godt pivottabellerne, men havde pudsigt nok ikke tænkt dem ind i denne sammenhæng. Tak for en nem løsning.
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

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