どのようにテーブルのセルの中にテキストボックスを追加するには?

Sub t()

Dim File As String
File = "C:\Users\Tin\Desktop\a.docx"

Dim oWord As Word.Application
Set oWord = New Word.Application
Dim oDoc As Word.Document
Set oDoc = oWord.Documents.Open(File)
oWord.Visible = True

With oDoc

Dim Table1 As Word.Table
Set Table1 = .Tables.Add(Range:=.Range, NumRows:=2, NumColumns:=2)

Table1.Borders(wdBorderTop).LineStyle = wdLineStyleSingle
Table1.Borders(wdBorderRight).LineStyle = wdLineStyleSingle
Table1.Borders(wdBorderBottom).LineStyle = wdLineStyleSingle
Table1.Borders(wdBorderLeft).LineStyle = wdLineStyleSingle
Table1.Borders(wdBorderHorizontal).LineStyle = wdLineStyleSingle
Table1.Borders(wdBorderVertical).LineStyle = wdLineStyleSingle

Table1.Rows.Height = 50

Dim lLeft As Long
Dim lTop As Long
Dim Rng As Word.Range

Set Rng = .Tables(1).Cell(1, 1).Range

Dim Shp As Word.Shape
  lLeft = .Tables(1).Cell(1, 1).Range.Information(wdHorizontalPositionRelativeToPage) + 50
  lTop = .Tables(1).Cell(1, 1).Range.Information(wdVerticalPositionRelativeToPage) + 20
  Debug.Print (lLeft)
  Debug.Print (lTop)

Set Shp = .Shapes.AddTextbox(Orientation:=msoTextOrientationHorizontal, Left:=lLeft, _
    Top:=iTop, Width:=20, Height:=20, Anchor:=Rng)
End With

End Sub

私はExcelでWordを自動化しています。 私はテキストボックスの位置を調整しようとしましたが、失敗しました。それは常にテーブルの外にとどまります。 私はWord自体でそれを自動化することができますが、Wordを制御しているExcelでテキストボックスは、それが位置決めになると私には「理解できない」ようです。

0

1 答え

Even if this is an old question I wanted anyway to investigate it. I tried your code (Excel macro with an added reference to the Word Object Library) and couldn't find something wrong with it. Your code works as expected, a square shape inside the first cell.

私はOffice 2010(イタリア語)を使用しています。

0
追加された