下面一段是写入一个数另起一行,如果我想每10个数一行呢
例如:1,2,3,4,5,6,7,8,9,10
11,...........
这样
Private Sub Command1_Click()
Dim str As String
Command1.Visible = False
Randomize Timer
str = ""
Open "c:\vb.txt" For Output As #1
While j < 10
q = Int(Rnd(1) * 369 + 1)
Label1.Caption = q: DoEvents
If n(q) = 0 And bStop = True Then
str = str & q & Chr(13) & Chr(10)
n(q) = 1
j = j + 1
bStop = False
End If
Wend
If str <> "" Then
Print #1, str
End If
Close #1
End Sub
例如:1,2,3,4,5,6,7,8,9,10
11,...........
这样
Private Sub Command1_Click()
Dim str As String
Command1.Visible = False
Randomize Timer
str = ""
Open "c:\vb.txt" For Output As #1
While j < 10
q = Int(Rnd(1) * 369 + 1)
Label1.Caption = q: DoEvents
If n(q) = 0 And bStop = True Then
str = str & q & Chr(13) & Chr(10)
n(q) = 1
j = j + 1
bStop = False
End If
Wend
If str <> "" Then
Print #1, str
End If
Close #1
End Sub
str = str & q & Chr(13) & Chr(10)
改为
str = str & q & ","将这句改了
If str <> "" Then
Print #1, str
End If
改为
If len(str) = 0 Then
Print #1, left(str, len(str) - 1) & vbCrlf
End If
If len(str) > 0 Then
Dim str As String
Command1.Enabled = False
Randomize Timer
str = ""
Open "c:\vb.txt" For Output As #1
While j < 10
q = Int(Rnd(1) * 369 + 1)
Label1.Caption = q: DoEvents
If n(q) = 0 And bStop = True Then
str = str & q & IIf((j mod 10) = 9, vbNewLine, ",")
n(q) = 1
j = j + 1
bStop = False
End If
Wend
If str <> "" Then
Print #1, str
End If
Close #1
End Sub
Dim oTextStream As TextStream
Dim lIndex As Long
Dim sLine As String
On Error GoTo ErrHnd
Set oFileSysObject = New FileSystemObject
Set oTextStream = oFileSysObject.OpenTextFile("c:\test.txt", ForWriting, True)
For lIndex = 1 To 100
If sLine = "" Then
sLine = CStr(lIndex)
Else
sLine = sLine & "," & CStr(lIndex)
End If
If lIndex Mod 10 = 0 Then
oTextStream.WriteLine (sLine)
sLine = ""
End If
Next
oTextStream.Close
Set oFileSysObject = Nothing
Exit Sub
ErrHnd:
MsgBox (Err.Description)