Avatar billede rosenj Nybegynder
27. marts 2004 - 14:08 Der er 13 kommentarer og
1 løsning

Mellemrumssepareret textfil (.prn) ombrydning af tegn over 240

Når man bruger gem som til at konvertere en excell fil til en mellemrumssepareret tekstfil (.prn), er der en begrænsning på 240 tegn, som gør at tegnene ombrydes ud over 240 til en ny linie ved slutningen af den konverterede fil. Jeg har behov for at filen kan vise 800 tegn på een linie. Jeg bruger notepad til at vise filen. Men der sker det at hvis f.eks. rækkerne 1 til 10 indeholder mere end 240 tegn, indsættes den resterende tekst fra række 1 til række 11, den resterende tekst fra række 2 i række 12 osv. Jeg har prøvet at downloade et konverteringsprogram fra converterzone.com, men det giver samme resultat. Softinterface.com har også et konverteringsprogram, men der findes formatet space delimited ikke. Er der nogen der ved, hvordan man kommer ud over den begrænsning? Jeg er lige startet med at bruge eksperten, men det ser ud som om jeg alligevel har 200 point at give.
27. marts 2004 - 14:29 #1
Man kan f.eks. lave sin egen lille makro, som kan løse problematikken.

Public Sub WriteToFile()
    Dim sFileName As String
    Dim sLine As String
    Dim lFileNum As Long
    Dim lCol As Long
    Dim lRow As Long
   
    sFileName = "C:\WriteToFile.prn"
   
    With ActiveSheet
        lFileNum = FreeFile
        ' Create new file to write into
        Open sFileName For Output As #lFileNum
       
            For lRow = 1 To ActiveSheet.UsedRange.Rows.Count
                ' Create sLine
                For lCol = 1 To ActiveSheet.UsedRange.Columns.Count
                    sLine = .Cells(lRow, lCol).Value & " "
                Next lCol
                ' Removes the last space
                sLine = RTrim(sLine)
                ' Write line into sFileName
                Print #lFileNum, sLine
            Next lRow
       
        Close #lFileNum
    End With
End Sub
Avatar billede rosenj Nybegynder
27. marts 2004 - 14:38 #2
Hej Flemming, Tak. Det tager lige lidt tid inden jeg får afprøvet din macro. Er ikke så velbevandret i Excell macroer. Jeg vender tilbage.
Avatar billede rosenj Nybegynder
27. marts 2004 - 14:58 #3
Flemming, jeg må erkende, at jeg ikke er så skrap til dette. Jeg har prøvet at oprette en ny macro, hvor jeg har kopieret din macro tekst ind. Når jeg kører denne macro, laver den en .prn fil, men kun den sidste kolonne er med. Der er en 26 kolonner og 8200 rækker i min excel fil. Kan du ikke guide mig stille og roligt? Jeg vil godt give dig flere points, hvis du mener det løser problemet?
27. marts 2004 - 17:32 #4
Point har aldrig løst noget problem. Der var en fejl i dannelsen af linien prøv denne her istedet. Du har iøvrigt gjort det rigtigt med at få den kopieret ind. Prøv igen.

Public Sub WriteToFile()
    Dim sFileName As String
    Dim sLine As String
    Dim lFileNum As Long
    Dim lCol As Long
    Dim lRow As Long
   
    sFileName = "C:\WriteToFile.prn"
   
    With ActiveSheet
        lFileNum = FreeFile
        ' Create new file to write into
        Open sFileName For Output As #lFileNum
       
            For lRow = 1 To .UsedRange.Rows.Count
                sLine = ""
                ' Create sLine
                For lCol = 1 To .UsedRange.Columns.Count
                    sLine = sLine & .Cells(lRow, lCol).Value & " "
                Next lCol
                ' Removes the last space
                sLine = RTrim(sLine)
                ' Write line into sFileName
                Print #lFileNum, sLine
            Next lRow
       
        Close #lFileNum
    End With
End Sub
Avatar billede rosenj Nybegynder
27. marts 2004 - 18:25 #5
Flemming, Tak for din tillid til mine macroevner! Desværre kommer prn filen stadig ikke ud som den gerne skulle. Nu bliver tekststrengen ikke ombrudt, men feltlængden er ikke fast. Det skulle gerne se sådan ud:
nummer    data1        feltdato        fornavn          efternavn
00000234000000001      00023032004    jane              musen

Jeg er i øvrigt glad for din respons. Jeg har brugt hele eftermiddagen til at søge over Internettet og læser i øjeblikket spørgsmål på MREXCELL.COM. Der er mange spørgsmål, men ingen kompetente svar. Hej Jane
27. marts 2004 - 19:02 #6
Mon ikke længden er 255 og ikke 256, men den bliver afbrudt ved 240, fordi det næste felt i rækken er mere end 16 karakterer.

Hvis du vil sende mig dit ark, så laver jeg lige en makro, som løser din problematik.

Klik på mit navn og Vis brugerinfo for at finde med mail adresse.
Avatar billede rosenj Nybegynder
27. marts 2004 - 19:21 #7
Kære Flemming, ja tak, jeg ville sætte meget pris på hvis du ville hjælpe mig. Jeg sender dig en fil med 5 rækker. Men det kan være at jeg ikke kan komme til min mailbox i aften. Der bliver sommetider arbejdet med serveren i week-enden. I mellemtiden har jeg fundet noget interessant, her er linket. Jeg har ikke tid eller rettere kræfter til at arbejede med det før i morgen.
http://support.microsoft.com/default.aspx?scid=kb;en-us;249885
Mange hilsner og ha' en god aften. Jane
27. marts 2004 - 19:25 #8
Fint - der er jo en makro på den side, som du kan bruge - prøv lige den
Avatar billede rosenj Nybegynder
27. marts 2004 - 19:38 #9
OK. Det vil jeg gøre i morgen. Vender lige tilbage til dig om det virker!
27. marts 2004 - 19:44 #10
OK
Avatar billede rosenj Nybegynder
28. marts 2004 - 12:27 #11
Har afprøvet macro fra ovenstående microsoft link. Det kører udmærket og teksten bliver konverteret til en lang streng. Men der er der 2 mellemrum imellem hver celletekst. Jeg har prøvet at fjerne "space" i "select case" afsnittet, men der er stadig et mellemrum tilbage. Jeg er ikke dygtig nok til macroer. Hvordan fjerner jeg det sidste mellemrum?
28. marts 2004 - 19:02 #12
Den linie der hedder    delimiter = " "  ændre du til    delimiter = ""

Det er det eneste ekstra mellemrum der laves, sådan som jeg ser det.....
Avatar billede rosenj Nybegynder
28. marts 2004 - 19:22 #13
Kære Flemming, Det hjalp at lave delimiter om til "". Nu virker det bare. Du får de 200 points - og et stort knus! Mange hilsner Jane og Thomas
28. marts 2004 - 19:24 #14
Takker og god fornøjelse :-)
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
Excel kurser for alle niveauer og behov – find det kursus, der passer til dig

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