austor Skrevet 9. oktober 2005 Skrevet 9. oktober 2005 Jeg har en *.txt fil med en masser av data, disse har 5 kolonner og 8900 rader. min case er at jeg skal ha første kolonne delt opp med et komma og resten med semikolon. Den nest siste kolonnen skal være delt opp med to semikolon. Hvordan kan jeg gjøre dette? Det bør vel være en mulighet å endre disse en plass? Håper jeg. Takker for all hjelp!
kakkle Skrevet 10. oktober 2005 Skrevet 10. oktober 2005 Skjønner jeg det riktig dersom *.txt filen ser noe ala dette ut: felt1, felt2, felt3, felt4, felt5 data11;data12;data13;data14;data15 data21;data22;data23;data24;data25 osv... Er det slik den er, eller er det slik du vil at den skal bli ? Også vil du ha dette inn i et excel ark vha copy paste ? Flere muligheter: 1. Marker først den første linjen, og kopier den. Velg der den skal inn i excelarket, og trykk paste. Du vil da kunne velge text-imoprt wizard, og kan velge seperator, som skal skille mellom celler (,) i dette tilfellet. Gjør så det samme med resten av filen, bare med annen separator. 2. Bruk en replace i f.eks notepad, og erstatt f.eks "," med ";". Kopier hele txt filen (ctrl-a) og lim inn i excel, og velg ";" som separator. Mulig jeg har misforstått hele problemet. Mener du kanskje at filen skal være slik: felt1,felt2;felt3;felt4;;felt5 ?
austor Skrevet 10. oktober 2005 Forfatter Skrevet 10. oktober 2005 Hei Kakkle! Takk for svar. Filen er slik: felt1;felt2;felt3;felt4;felt5 felt21;felt22;felt23;felt24;felt25 ... felt80001;felt80002;felt80003;felt80004;felt80005 Denne importerer jeg til Excel og får derfor opp disse separat i hver sin kolonne. Når jeg lagrer den i txt format igjen vil jeg ha den slik: felt1,felt2;felt3;felt4;;felt5 felt21,felt22;felt23;felt24;;felt25 ... felt80001,felt80002;felt80003;felt80004;;felt80005 Her ser du forskjellen at felt 1 og 2 er separert med komma istedet for semikolon, mens felt 4 og 5 er separert med 2x semikolon.
kakkle Skrevet 10. oktober 2005 Skrevet 10. oktober 2005 (endret) Da misforsto jeg litt i det forrige innlegget mitt... Eneste løsning her er å lage en macro i Visual Basic som gjør jobben for deg. Her er en liten macrosnutt som skal gjøre det du trenger: Basert på kode fra: http://www.cpearson.com/excel/imptext.htm#Export) Public Sub ExportToTextFile() Dim FName As String Dim Sep As String Dim WholeLine As String Dim FNum As Integer Dim RowNdx As Long Dim ColNdx As Integer Dim StartRow As Long Dim EndRow As Long Dim StartCol As Integer Dim EndCol As Integer Dim CellValue As String FName = InputBox("Please enter text filename: ", "Save as text file") Application.ScreenUpdating = False On Error GoTo EndMacro: FNum = FreeFile With ActiveSheet.UsedRange StartRow = .Cells(1).Row StartCol = .Cells(1).Column EndRow = .Cells(.Cells.Count).Row EndCol = .Cells(.Cells.Count).Column End With Open FName For Output Access Write As #FNum ' Sep er separatoren som skal brukes mest Sep = ";" For RowNdx = StartRow To EndRow ' Legger inn første felt pluss komma etter dette WholeLine = Cells(RowNdx, StartCol).Text & "," For ColNdx = StartCol + 1 To EndCol - 1 ' Her går den igjennom alle kollonnene, og sjekker verdien If Cells(RowNdx, ColNdx).Value = "" Then ' Dersom det er et tomt felt, kan du legge inn ønsket verdi her CellValue = " " Else CellValue = Cells(RowNdx, ColNdx).Text End If ' Her legges ";" inn som separator WholeLine = WholeLine & CellValue & Sep Next ColNdx ' Her vil det bli to; før siste felt, i og med at det er en; på slutten av nest siste felt WholeLine = WholeLine & ";" & Cells(RowNdx, EndCol).Text Print #FNum, WholeLine Next RowNdx EndMacro: On Error GoTo 0 Application.ScreenUpdating = True Close #FNum End Sub Har testet det, og det virker som om det skal funke greit. Håper dette løser det for deg. Du må skrive inn full path til hvor filen skal lagres i boksen som kommer opp... Evt så er det fort gjort å legge en default path inn i scriptet. EDIT: Litt tekst og kommenterte scriptet litt. Endret 10. oktober 2005 av kakkle
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå