Я пытаюсь переместить курсор в самый конец слова документа и вставить диаграмму. Но я получаю сообщение об ошибке «Bad Parameter» в этой строке «objSelection.EndKey Unit: = wdStory»
Dim objWord As Object
Set objWord = CreateObject("Word.Application")
objWord.Documents.Open "N:\Template\Template.docx"
objWord.Visible = True
ThisWorkbook.Activate
...
тогда у меня было это в цикле:
Do While IsEmpty(Range("A1").Value) = False
...
Range("D:D,F:F").Select 'select date and value
Range("F1").Activate
ActiveSheet.Shapes.AddChart2(227, xlLine).Select
ActiveChart.ChartTitle.Text = subregion & " " & typ & " " & cate
ActiveChart.Axes(xlValue).Select
ActiveChart.Axes(xlCategory).Select
ActiveChart.PlotArea.Select
ActiveChart.FullSeriesCollection(1).Select
ActiveChart.FullSeriesCollection(1).ApplyDataLabels
ActiveChart.Axes(xlCategory).Select
Selection.TickLabels.NumberFormat = "m/yyyy"
ActiveChart.Parent.Copy
objWord.Activate
objWord.Visible = True
Set objSelection = objWord.Selection
objSelection.EndKey Unit:=wdStory
objWord.Selection.Paste
...
loop
Тот же код работал в меньшем примере без цикла while. Теперь я пытаюсь включить код в цикл while, а строка oibjSelection.EndKey уничтожает макрос
мой меньший образец, который работал:
Sub Macro1()
'
' Macro1 Macro
'
'
Dim objWord As Object
Set objWord = CreateObject("Word.Application")
'Change the directory path and file name to the location'of the document you want to open from Excel
objWord.Documents.Open "N:\Template\Template.docx"
objWord.Visible = True
ThisWorkbook.Activate
Range("A:A,C:C").Select
Range("C1").Activate
ActiveSheet.Shapes.AddChart2(227, xlLine).Select
ActiveChart.SetSourceData Source:=Range("Sheet1!$A:$A,Sheet1!$C:$C")
ActiveChart.Axes(xlCategory).Select
Selection.TickLabels.NumberFormat = "m/yyyy"
ActiveChart.Parent.Copy
objWord.Activate
objWord.Visible = True
Set objSelection = objWord.Selection
objSelection.EndKey Unit:=wdStory
objWord.Selection.Paste
End Sub