主要代碼如下:
On Error Resume Next '錯誤繼續執行下一行代碼
Set wordapp = New Word.Application '實體化
wordapp.Documents.open App.Path & "\資料\模板.doc"
wordapp.Visible = False '顯示 Office Word 界面
wordapp.DisplayAlerts = False '不提示保存對話框
wordapp.Selection.Find.ClearFormatting
wordapp.Selection.Find.Replacement.ClearFormatting
wordapp.ActiveDocument.Tables(14).Cell(2, 2).Range.InsertAfter "測驗結果"
*上一行代碼是給指定表格指定單元格插入內容*
With wordapp.Selection.Find
.Text = "《測驗》"
.Replacement.Text = ""
.Forward = True
.Wrap = wdFindContinue
.Format = False
.MatchCase = False
.MatchWholeWord = False
.MatchByte = True
.MatchWildcards = False
.MatchSoundsLike = False
.MatchAllWordForms = False
End With
wordapp.Selection.Find.Execute Replace:=wdReplaceAll
MsgBox ActiveDocument.Tables.Count '獲取檔案表格總數
ActiveDocument.SaveAs "c:\MyWord.doc" '保存最后生成的word文
On Error Resume Next
wordapp.Quit
Set wordapp = Nothing
MsgBox "生成成功", , ""
我的word里有很多個表 我怎么定位其中一個
那個表在第14個表 用數字定位我會了 有沒有別的辦法
預防之后word修改會影響到表格數量 每個表上面都有一個標題 可否根據這個進行判斷然后定位 或者有什么更好的方法 標簽或者什么 請各位指教
uj5u.com熱心網友回復:
在Word 2003中開始記錄宏,手動完成所需功能,結束記錄宏,按Alt+F11鍵,查看剛才記錄的宏對應的VBA代碼。uj5u.com熱心網友回復:
我想其實在表格的上面不是有這個表格的名稱嗎,各表格的名稱設定成書簽,這樣表格名稱不一樣,書簽內容就不一樣,檢測這個書簽,就可以定位到具體表格,注意的是各表格的書簽名稱應該是一樣的,例如書簽名稱都是:名稱
uj5u.com熱心網友回復:
這個錄制宏我會 主要問題就是定位的問題 因為模板是會變動的 所以表格的排序會變
我不想每次都要修改軟體 所以想找個辦法智能定位 或者判斷表格的排序數
uj5u.com熱心網友回復:
你的后半句的意思不太明白 書簽替換內容我會 但是書簽定位不太會 能給個實體研究一下嗎 謝謝
uj5u.com熱心網友回復:
人怎么判斷(表格內容,表格行列數,表格線格式,表格各單元格中使用的字體格式,……),代碼就怎么判斷。uj5u.com熱心網友回復:
表格附近前后的文字內容……
uj5u.com熱心網友回復:
等會,晚上給你做一個樣本。轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/76763.html
標籤:VB基礎類
