我需要一遍又一遍地创建同一个表,所以我想使用VBA宏创建一个表。
到目前为止,我已经成功创建了表格并更改了单元格的宽度。 现在我想将表中的每个边框设置为wdLineStyleNone。
我怎么能做到这一点。
这是我到目前为止所做的代码。
Sub tabel_maken()
'
' tabel_maken Macro
'
'
ActiveDocument.Tables.Add Range:=Selection.Range, NumRows:=4, NumColumns:= _
2, DefaultTableBehavior:=wdWord9TableBehavior, AutoFitBehavior:= _
wdAutoFitFixed
With Selection.Tables(1)
If .Style <> "Tabelraster" Then
.Style = "Tabelraster"
End If
.ApplyStyleHeadingRows = True
.ApplyStyleLastRow = False
.ApplyStyleFirstColumn = True
.ApplyStyleLastColumn = False
.ApplyStyleRowBands = True
.ApplyStyleColumnBands = False
End With
Selection.Tables(1).Rows.SetLeftIndent LeftIndent:=3.75, RulerStyle:= _
wdAdjustNone
Selection.Tables(1).Columns(1).SetWidth ColumnWidth:=63.8, RulerStyle:= _
wdAdjustNone
Selection.Tables(1).Columns(2).SetWidth ColumnWidth:=297.7, RulerStyle:= _
wdAdjustNone
Selection.Tables(1).Range.Select
Selection.Borders(wdBorderTop).LineStyle = wdLineStyleNone
Selection.Borders(wdBorderLeft).LineStyle = wdLineStyleNone
Selection.Borders(wdBorderBottom).LineStyle = wdLineStyleNone
Selection.Borders(wdBorderRight).LineStyle = wdLineStyleNone
Selection.Borders(wdBorderDiagonalDown).LineStyle = wdLineStyleNone
Selection.Borders(wdBorderDiagonalUp).LineStyle = wdLineStyleNone
Selection.Borders(wdBorderTop).LineStyle = wdLineStyleNone
Selection.Borders(wdBorderLeft).LineStyle = wdLineStyleNone
Selection.Cells.Borders(wdBorderLeft) = wdLineStyleNone
End Sub
我想我正在寻找改变桌子内边界的东西。
当我离开Selections.Tables(1).Range.Select
时,只选择了第一个单元格。
当我保留此代码时,则选择表的外边框。
最后我尝试选择所有单元格并改变边框,但这也不起作用。 Selection.Cells.Borders(wdBorderLeft) = wdLineStyleNone)
我希望有人能帮助我解决这个问题。
答案 0 :(得分:0)
只需检查下面的行以了解您的要求
Set myTable = ActiveDocument.Tables(1)
With myTable.Borders
' Inner lines
.InsideLineStyle = wdLineStyleNone
' Outer lines
.OutsideLineStyle = wdLineStyleNone
End With