Tec*_*ard 5 python vba ms-word pywin32 word-vba
我正在寻找一种从Word文件中提取/抓取数据到数据库的方法.我们的公司程序与MS Word文件中记录的客户会议记录,主要是由于历史和惯性.
我希望能够从这些会议纪要行动项目拉进一个数据库,以便我们可以从一个Web界面访问它们,把它们变成任务,因为他们完成了更新.
这是最好的方法:
最后一个是我的吸引力,因为网络界面正在使用Django建成的,但我从来没有使用win32com或蟒蛇试图脚本字.
编辑:我已经开始提取与VBA的文本,因为它使得它更容易一些处理Word对象模型.我遇到了一个问题 - 所有文本都在表格中,当我将字符串拉出我想要的CELLS时,我会在每个字符串的末尾得到一个奇怪的小方框字符.我的代码看起来像:
sFile = "D:\temp\output.txt"
fnum = FreeFile
Open sFile For Output As #fnum
num_rows = Application.ActiveDocument.Tables(2).Rows.Count
For n = 1 To num_rows
Descr = Application.ActiveDocument.Tables(2).Cell(n, 2).Range.Text
Assign = Application.ActiveDocument.Tables(2).Cell(n, 3).Range.Text
Target = Application.ActiveDocument.Tables(2).Cell(n, 4).Range.Text
If Target = "" Then
ExportText = ""
Else
ExportText = Descr & Chr(44) & Assign & Chr(44) & _
Target & Chr(13) & Chr(10)
Print #fnum, ExportText
End If
Next n
Close #fnum
Run Code Online (Sandbox Code Playgroud)
小控制字符框有什么用?是什么类型的字符代码来自Word?
Word 有一个小标记,它放置在表格中每个文本单元格的末尾。
它的使用就像段落中的段落结束标记一样:存储整个段落的格式。
只需使用 Left() 函数将其删除即可,即
Left(Target, Len(Target)-1))
Run Code Online (Sandbox Code Playgroud)
顺便说一句,而不是
num_rows = Application.ActiveDocument.Tables(2).Rows.Count
For n = 1 To num_rows
Descr = Application.ActiveDocument.Tables(2).Cell(n, 2).Range.Text
Run Code Online (Sandbox Code Playgroud)
尝试这个:
For Each row in Application.ActiveDocument.Tables(2).Rows
Descr = row.Cells(2).Range.Text
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
6729 次 |
| 最近记录: |