WordVBA中读取Excel表格中的数据
Word VBA中读取Excel表格中的数据
前天有⼀个项⽬需要写详细设计报告,其中有⼀块重要内容是把Excel中的每⼀⾏数据做成⼀个Word中的表格。⼀共将近100⾏数据,如果我⼀⾏⼀⾏地⼿动去做,估计⼿就废了,于是采⽤Word VBA。
基本编程思路
1. 创建⼀个空word⽂档
2. word⽂档中,编辑好⼀个⽰例表格,作为⼀个母表,后续所有的表格程序都是复制这张表,然后修改复制后的新表格的数据
3. 打开Excel,遍历每⼀⾏数据
4. 取这⼀⾏关键数据,复制母表,改变复制后的表格数据有多少次挥汗如雨
代码⽚段
Dim wb As Document
Set doc = Application.ActiveDocument
Set xlapp = CreateObject("excel.application")
Set wkBook = xlapp.Workbooks.Open("C:\Users\shenh\Desktop\VBA处理Excel表格\⼏何拓扑检查项.xlsx")
For rowNum = 1 To 63
CheckName = wkBook.Worksheets(1).Cells(rowNum, 3)
meaning = wkBook.Worksheets(1).Cells(rowNum, 4)
CheckName = CheckName & "项"
paraCount = doc.Paragraphs.Count
许晴片场玩亲亲
doc.Paragraphs(paraCount).Range.Text = CheckName & vbCrLf            '写标题
paraCount = doc.Paragraphs.Count
doc.Paragraphs(paraCount).Range.Text = CheckName & "详细定义见表" & rowNum + 75 & "所⽰" & vbCrLf        '写标题
paraCount = doc.Paragraphs.Count
扫描照片
熊小玥微博doc.Paragraphs(paraCount).Range.Text = "表 " & rowNum + 75 & " " & CheckName & "定义表" & vbCrLf
doc.Tables(1).Range.Copy
Set endRange = ActiveDocument.Content
潘晓婷的老公
赵丽颖公司endRange.Collapse Direction:=wdCollapseEnd
endRange.Paste
doc.Tables(rowNum + 1).Cell(1, 3).Range.Text = CheckName
doc.Tables(rowNum + 1).Cell(1, 3).Range.Text = meaning
Next
MsgBox wkBook.Sheets(1).Cells(1, 5)
wkBook.Close
xlapp.Quit