Вдохновленный комментарием Синди Мейстер (см. Выше), я нашел следующее решение (которое включает в себя сначала создание нового объекта документа Word, затем вставку в него содержимого буфера обмена, а затем считывание номера его абзаца):
Sub InsertAndProcessMultipleParagraphs()
'Declarations
Dim MyData As MSForms.DataObject
Dim intNumPara As Integer
Dim objDoc
'Fill them objects
Set MyData = New MSForms.DataObject
MyData.GetFromClipboard
Set objDoc = Application.Documents.Add
objDoc.ActiveWindow.Visible = False
'Put clipboard contents into the new document object
Documents(objDoc).Activate
Selection.PasteSpecial Link:=False, DataType:=wdPasteText, Placement:=wdInLine, DisplayAsIcon:=False
'Read out paragraph number in that document
intNumPara = Documents(objDoc).Paragraphs.Count
'Close that document (without nasty questions)
Documents(objDoc).Close SaveChanges:=wdDoNotSaveChanges
'By some miracle we should now be back in Word's original target window...
'Tests show that in practice this is the case.
'Paste the Clipboard content into target document at current cursor position
Selection.PasteSpecial Link:=False, DataType:=wdPasteText, Placement:=wdInLine, DisplayAsIcon:=False
'Expand selection to cover all the paragraphs inserted
Selection.MoveUp Unit:=wdParagraph, Count:=intNumPara, Extend:=wdExtend
'Do somethign nice and useful with these paragraphs
Application.Run MacroName:="Normal.MyMacros.Do-someting-nice-and-useful"
End Sub
Однако я немного разочарован тем, что мне приходится качать такой большой и тяжелый молоток, как создание целого нового объекта документа в Word только для того, чтобы сосчитать эти абзацы.Создание документа, переключение на него, вставка чего-либо, подсчет абзацев, закрытие документа ... это много операций для очень простой вещи.Нет ли еще доступного более легкого объекта, который мог бы взять содержимое буфера обмена и чей номер абзаца я мог бы тогда прочитать?
Возможно, я попробую и другой метод: подсчитать метки абзаца (возврат каретки или около того) в строке, которую можно извлечь из объекта MyData ...