English Deutsch Français Italiano Español Português 繁體中文 Bahasa Indonesia Tiếng Việt ภาษาไทย
所有分類

比如有個1.txt文件
裡面有下面六筆資料
951252634512
632598741256
564645231879
654321312589
987978978987
132132132165
我該如何把第三筆資料刪除而整個文件內容變成下面的五筆?
951252634512
632598741256
654321312589
987978978987
132132132165

我有想法是
1.從第幾筆去改
2.遇到我想要改的 \"564645231879\" 就把他刪除...

2006-05-30 21:57:28 · 1 個解答 · 發問者 O.oa 5 in 電腦與網際網路 程式設計

補充一問...
要怎樣知道form2是使用中或開啟中?

通常要用form2.show才能把他給喚醒
那我怎麼知道他已經在使用中?
用form2.enable判斷嗎?
或者我要如何關閉開啟中的form2呢?

2006-05-30 22:08:57 · update #1

為什麼你的IF xxx > xxx THEN xxxx
之後不用end if?
是符合就做thne之後
不符合就做下一行嗎?
所以把then後面加敘述就可以不用end if?

2006-06-01 11:57:36 · update #2

1 個解答

Private Sub Command1_Click()    Dim S() As String, N%, F&, I%        On Error GoTo Er '發生錯誤跳至Er        '輸入欲刪除記錄之行數    Do       N = Int(Val(InputBox("請輸入欲刪除記錄之行數", , 3)))       If N = 0 Then Exit Sub    Loop Until N > 0    N = N - 1    '將C:\1.txt讀入A陣列(用Binary方式,比用Input快)    F = FreeFile    ReDim A(FileLen("C:\1.txt") - 1) As Byte    Open "C:\1.txt" For Binary As #F    Get #F, , A    Close #F    '若最後1個字是換行字元則刪除    Do While A(UBound(A)) = 10       ReDim Preserve A(UBound(A) - 1)    Loop    '轉成Unicode並以換行字元為記號,分割至S陣列    S = Split(StrConv(A, vbUnicode), vbCrLf)    '若欲刪除記錄之行數>總行數就跳至Er    If N > UBound(S) Then GoTo Er    '除了N行以外,重新寫到C:\1.txt    F = FreeFile    Open "C:\1.txt" For Output As #F    For I = 0 To UBound(S)        If I <> N Then Print #F, S(I)    Next    Close #F    MsgBox "刪除完畢!!"    Exit Sub    Er:    MsgBox "刪除失敗!!"End Sub'檢查Form2是否開啟Private Sub Command2_Click()    Dim F As Form        For Each F In Forms        If F.Name = "Form2" Then '表示Form2是開啟           Unload Form2 '關閉Form2           Exit For        End If    NextEnd Sub

2006-06-01 23:20:38 補充:
If A=1 Then A=2跟If A=1 ThenA=2End If是一樣的

2006-05-31 11:39:31 · answer #1 · answered by W.J.S. 7 · 0 0

fedest.com, questions and answers