1

ドキュメントの画像

ブックマーク名としてヘッダー名を使用して、プログラムでWord2010でブックマークを生成する必要があります。

単語をブックマークにする次のコードがありますが、ブックマーク名は同じままです。文字列Heading 1はname変数でのみ使用できます。

Sub bookmarking()
    Selection.EndKey Unit:=wdLine, Extend:=wdExtend
    With ActiveDocument.Bookmarks
        .Add Range:=Selection.Range, Name:=" Heading 1"
        .DefaultSorting = wdSortByName
        .ShowHidden = False
    End With
End Sub

name変数の代わりにHeading 1、クリップボードのコンテンツが必要です。Heading 1それをクリップボードのコンテンツに置き換えるのを手伝ってください。

4

1 に答える 1

1

からを使用しDataObjectますMicrosoft Forms 2.0 Object Library

Private Function GetClipboardData()
    Dim objDataObject As MSForms.DataObject ''need to add reference in Tools |References
    Set objDataObject = New MSForms.DataObject

    objDataObject.GetFromClipboard
    On Error Resume Next
    GetClipboardData = objDataObject.GetText
    If Err.Number = -2147221404 Then
       MsgBox "Error: current clipboard data is either empty or is not text. Clibpoard must contain text."
    End If
End Function

次に、メイン コードに戻り、ブックマーク名を次のクリップボード データにします。

...
.Add Range:=Selection.Range, Name:=GetClipboardData()
...

これはあなたにとって良いスタートですか?ニーズに応じて、より堅牢な方法が他にもあります。ただし、これは優れた概念実証として役立つはずです。

于 2012-07-04T22:01:31.907 に答える