Word VBA 單元格處理


近期遇到一個office操作上十分棘手的問題:要實現對word中,幾千個相同格式的表格的某一個特定單元格的格式設置

例如:對於這樣的同格式的word中的表格,批量的將其第一行第二列單元格格式設置為居中並且加上灰色底紋

通過OfficeWord錄制宏的方法,難以解決選中問題,遂上手VBA編程,編寫如下代碼:

 1 Sub 宏5()
 2 '
 3 ' 宏5 宏
 4 '
 5 '
 6     For i = 1 To 500
 7     ' 從第1個表開始,到第500個表結束,500可以改成任意數字
 8         Set myCell = ActiveDocument.Tables(i).Cell(Row:=2, Column:=1)
 9         ' 對每個表選中第1行第1列,如Row:=3,Column:=2則是定位第3行第2列,這倆數可以任意改
10         myCell.Shading.Texture = wdTexture20Percent
11         ' 突出顯示的命令
12         myCell.Range.ParagraphFormat.Alignment = wdCellAlignVerticalCenter
13         ' 修改格式的命令
14     Next i
15 End Sub


定位cell十分簡單,但是修改cell的水平居中的屬性費了一番周折,Word官方文檔中的cell屬性里竟然只有VerticalAlignment而沒有horizontalAlignment,對於垂直居中只需要
 Cell.VerticalAlignment = wdAlignVerticalTop ,而水平居中則需要進一步查找文檔,通過 myCell.Range.ParagraphFormat.Alignment = wdCellAlignVerticalCenter 成功設置。
文檔地址如下:
https://docs.microsoft.com/zh-cn/office/vba/api/word.cell.verticalalignment

 

 

 目前已跟微軟office團隊反反映相關問題,希望其進一步完善VBA建設。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM