Я новичок в VBA и пытаюсь напечатать массив, который мне удалось создать (в основном, копируя из другого поста) в VBA сегодня.Я поместил перерыв в скрипт и проверил массив на странице местных жителей, чтобы увидеть, что массив захватывает то, что я хочу (и некоторые дополнительные данные, которые я отфильтрую).Я провел день, читая о печати массивов на переполнение стека и других сайтах, и я немного потерял.Моя цель - экспортировать массив в виде таблицы в Excel.
Скрипт ищет подчеркнутые предложения в документе из 400 страниц и помещает их в массив.Все, что действительно необходимо для печати, это подчеркнутые предложения, так что, возможно, массив был не лучшим подходом?Как я могу экспортировать массив «myWords» в новый документ Excel или в документ, который я обозначил?
Большое спасибо за вашу помощь!
Sub addUnderlinedWordsToArray()
On Error GoTo errhand:
Dim myWords() As String
Dim i As Long
Dim myDoc As Document: Set myDoc = ActiveDocument ' Change as needed
Dim aRange As Range: Set aRange = myDoc.Content
Dim sRanges As StoryRanges: Set sRanges = myDoc.StoryRanges
Dim ArrayCounter As Long: ArrayCounter = 0 ' counter for items added to the array
Dim Sentence As Range
Dim w As Variant
Application.ScreenUpdating = False
ReDim myWords(aRange.Words.Count) ' set a array as large as the
' number of words in the doc
For Each Sentence In ActiveDocument.StoryRanges
For Each w In ActiveDocument.Sentences
If w.Font.Underline <> wdUnderlineNone Then
myWords(ArrayCounter) = w
ArrayCounter = ArrayCounter + 1
End If
Next
Next
Set myDoc = Nothing
Set aRange = Nothing
Set sRange = Nothing
Application.ScreenUpdating = True
Exit Sub
errhand:
Application.ScreenUpdating = True
MsgBox "An unexpected error has occurred." _
& vbCrLf & "Please note and report the following information." _
& vbCrLf & "Subroutine Name: addUnderlinedWordsToArray" _
& vbCrLf & "Error Number: " & Err.Number _
& vbCrLf & "Error Description: " & Err.Description _
, vbCritical, "Error!"
End Sub