-2

私のシナリオは、2 列のテーブルが 1 つあるドキュメントです。データベースから読み取り、各行/列にデータを入力していますが、一部のレコードでは、2 つの列を 1 つのセルにマージして行として入力し、その後、2 列のシナリオを続行したいと考えています。2 つのセルを結合して行全体に 1 つのセルを作成する VBA ステートメントを発行したいと考えています。これを新しいマクロとして「記録」することはできません。実行時の行番号はわかりません。列番号しかわかりません。私の検索文字列は「"Word 2013" VBA テーブル マージ セル」ですが、VBA コードではなく手動で行う方法を示すサイトがたくさんあります。

私の現在のコード:

With ActiveDocument.Tables(1)
.Cell(Row:=1, Column:=1).merge _
MergeTo:=.Cell(Row:=1, Column:=2)
.Borders.Enable = True
End With

ドキュメントには、1 行 2 列の小さなテーブルがあります。しかし、列を任意に組み合わせた 3 行のテーブルを作成できるはずですよね? 任意の 2 つの列を選択し、それらを結合して 1 つのスペースを作成したいだけですが、実行時にどの行番号を指定すればよいかわかりません。

4

1 に答える 1

0

やっと解決できました。またお世話になりました。これが私の現在のコードです。文書全体は 1 つの 2 列の表で、細身で、iPhone で読んだりナビゲートしたりできるようにハイパーリンクが含まれています。データの単位値が変更された場合、1) 下に新しい行を挿入して 1 つの列に結合し、[ホームに移動] リンクを追加してから、2 列の行を追加し続けます。

ドキュメントは最終的に .PDF に変換され、iOS ユーザーがアクセスします。

    'Add a row for a 'back to home' link 
    If (intUnitOrder > intCurrentUnit) Then
       Selection.InsertRowsBelow (1)
       rowno = Selection.Information(wdEndOfRangeRowNumber) - 1
       With ActiveDocument.Tables(1)
         .Cell(Row:=rowno, Column:=1).Merge MergeTo:=.Cell(Row:=rowno, _ 
         Column:=2)
       End With

       Selection.Tables(1).Rows(rowno).Range.ParagraphFormat. _
         Alignment = wdAlignParagraphRight
       Selection.Shading.BackgroundPatternColor = RGB(230, 230, 230)
       Selection.Font.ColorIndex = wdBlue
       Selection.Font.Italic = True

       ActiveDocument.Hyperlinks.Add Anchor:=Selection.Range, _
         Address:="#Home", SubAddress:="", _
         ScreenTip:="Go back to the top", _
         TextToDisplay:="back to Home"

       Selection.MoveDown wdLine, 1
       intCurrentUnit = intUnitOrder
    End If
于 2016-04-13T22:43:25.480 に答える