2012-02-06 219 views
0
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

即使这是一个老问题,我仍然想要调查它。我尝试了你的代码(Excel宏,增加了对Word对象库的引用),并且找不到任何问题。 您的代码按预期方式工作,第一个单元格内为正方形。

我正在使用Office 2010(意大利语言)。

相关问题