Jag behöver formatera text så att resultatet blir en text fil. Antingen använder du Space(50) eller kanske vbTab. Du kan även titta på replace-kommandot för att göra någon speciell rutin. Finns verkligen inte Print Using kvar? Hej Det jag skulle göra är att pilla lite med space()... Den är underbar när det gäller sånt! :D<br> Ni är underbara! Eftersom så få känner till LSet och RSet tänkte jag komplemntera tråden med dessa:Formatera text som skall sparas till fil
Jag har tre variabler med innehåll enl följande
A=1.25
B=2.75
C=3.75
Jag vill att resultatet skall bli:
1.75 2.75 3.75
A=13.00
B=14.00
C=15.00
1.75 2.75 3.75
13.00 14.00 15.00
I ärans och hjältarnas språk, Canon Basic (Hört om det?) fanns ett fiffigt
komando:
Print Using #1, [50] A,B,C
[50] Format #####.## ######.## #####.##
Jag har labbat med Format i Vb men får inte till det. Några bra förslag?
/BoSv: Formatera text som skall sparas till fil
Sedan kan du öppna filen som binary och därmed ha en fast recordlängd. Det finns en artikel i just denna teknik:
http://www.pellesoft.nu/learn/databas/index.htm
Hälsningar
/PelleSv: Formatera text som skall sparas till fil
Kommer ihåg att jag använde det som sjutton när jag proggade QB för några år sedan. Och då var det ändå den absolut sista versionen av QB.
/Niklas JanssonSv: Formatera text som skall sparas till fil
Blir väl samma svar som en fråga längre ner här i Forumet
Print #1, A,B,C
mvh
SvenSv: Formatera text som skall sparas till fil
<br>
<code>
Public Function PrintLine(ByVal A, ByVal B, ByVal C) As String
PrintLine = String(50 - Len(A), " ") & A
PrintLine = PrintLine & String(50 - Len(B), " ") & B
PrintLine = PrintLine & String(50 - Len(C), " ") & C
End Function
</code>
Dock är väl inte detta det snyggaste sättet att skriva det på.. Men du får dom iaf på samma ställen!<br>
<br>
//JonasSv: Formatera text som skall sparas till fil
Fråga och svar gives!
Jag hittde en variant på temat som jag postade i Tips & Tricks.Sv: Formatera text som skall sparas till fil
<code>
Private Sub Form_Load()
Dim FileNo As Long
Dim FileName As String
FileNo = FreeFile
FileName = App.Path & "\Test.txt"
Open FileName For Output Access Write Shared As #FileNo
PrintLine FileNo, 1.25, 2.75, 3.75
PrintLine FileNo, 13, 14, 15
Close FileNo
End Sub
Private Sub PrintLine(FileNo As Long, A As Single, B As Single, C As Single)
Dim Column1 As String * 10
Dim Column2 As String * 10
Dim Column3 As String * 10
RSet Column1 = FormatNumber(A, 2)
RSet Column2 = FormatNumber(B, 2)
RSet Column3 = FormatNumber(C, 2)
Print #FileNo, Column1, Column2, Column3
End Sub
</code>
10 kan ersättas med den kolumnbred man vill ha.<br>
<br>
LSet är default om du inte anger Set eller Rset framför din tilldelnings operation.