簡體   English   中英

Word VBA:表格單元格范圍到文本文件

[英]Word VBA: Table cell range to text file

我想復制一個表像這樣在Word文檔中,只提取曲目標題和作曲家。 范圍的選擇按計划進行:

Dim myCells As Range
With ActiveDocument
    Set myCells = .Range(Start:=.Tables(1).Cell(2, 3).Range.Start, _
        End:=.Tables(1).Cell(.Tables(1).Rows.Count, 3).Range.End)
    myCells.Select
End With

現在,當我手動復制這個選擇並將其粘貼到記事本中時,我得到了我想要的東西:

Title
Composer
Title
Composer
etc.

但是,我想將此選擇自動寫入文本文件。 當我嘗試這樣做時,所有內容都填充在一行文本中,並且到處都會出現小方塊(段落符號?)。

如何才能使用VBA獲得手動復制的結果?

試試這個

Sub Allmusic()
    Dim filesize As Integer
    Dim FlName As String, tempStr As String
    Dim i As Long
    Dim MyAr() As String

    '~~> Name of Output File
    FlName = "C:\Sample.Txt"

    '~~> Get a free file handle
    filesize = FreeFile()

    '~~> Open your file
    Open FlName For Output As #filesize

    With ActiveDocument
        For i = 2 To .Tables(1).Rows.Count

            '~~> THIS LINE WILL NOT REFLECT CORRECTLY IN THE BROWSER
            '~~> PLEASE REFER TO THE SCREENSHOT OR THE ATTACHED FILE
            tempStr = Replace(.Tables(1).Cell(i, 3).Range.Text, "", "")

            If InStr(1, tempStr, Chr(13)) Then
                MyAr = Split(tempStr, Chr(13))
                Print #filesize, MyAr(0)
                Print #filesize, MyAr(1)
            Else
                Print #filesize, tempStr
            End If
            Print #filesize, ""
        Next i
    End With

    Close #filesize
End Sub

快照

在此輸入圖像描述

樣本文件

http://sdrv.ms/Mo7Xel

下載文件並運行Sub Allmusic()

OUTPUT

在此輸入圖像描述

HTH

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM