2017-02-14 86 views
1

我有一段代碼可以讀取記事本文件的前2個字符。下面是代碼:Excel VBA - 讀取第n個字符後的記事本文件

Public Sub extractInt() 

    Dim sText As String 

    Open "C:\ProgramData\regid.512-06.com.system.microsoft\regid.512-06.com.system.microsoft.12606768.dat" For Input As #1 

    sText = Input$(2, 1) 

    Close #1 

    Worksheets("ED").Range("C01").Value = sText 

End Sub 

它運作良好,但現在我想讀第6個字符後。

例如,如果在記事本文件中的字符串是:

"abcefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ" 

我想讀"hijkl"

希望你們能給點幫助。

回答

2

只是改變Input$的參數和使用Right

Input$(Number_of_Chars_To_Return, [#]NumFile)
Right(String,Number_of_Chars_From_the_Right)

Public Sub extractInt() 

    Dim sText As String 

    Open "C:\ProgramData\regid.512-06.com.system.microsoft\regid.512-06.com.system.microsoft.12606768.dat" For Input As #1 

    sText = Right(Input$(11, #1), 5) 

    Close #1 

    Worksheets("ED").Range("C01").Value = sText 

End Sub 
+1

這是偉大的。謝謝 – Jeeva

2

您可以使用Mid函數來處理這個問題,通過先讀字符串文本文件裏面sText變量。

之後,使用Mid函數:

sText = Mid(sText, 7, Len(sText) - 6) 

Mid功能說明:MSDN

代碼

Public Sub extractInt() 

    Dim sText As String 

    Open "C:\ProgramData\regid.512-06.com.system.microsoft\regid.512-06.com.system.microsoft.12606768.dat" For Input As #1 
    Input #1, sText 
    sText = Mid(sText, 7, Len(sText) - 6) 

    Close #1 
    Worksheets("ED").Range("C01").Value = sText 
End Sub 
+0

hi shai rado。它正在工作,但不是預期的結果。下面的答案按照預期給出了答案。謝謝(你的)信息。 – Jeeva

相關問題