Word表导入到Access - 添加其他字符

时间:2017-02-09 11:02:58

标签: ms-access import ms-word word-vba

我有一个VBA脚本,它将表数据从word导入到access。工作正常,但在我的AccessTable中,每个字段@每列,脚本在我导入的数据末尾添加一个“黑点”。当表字段为空时。

我的数据如下:Word中的“31.12.2106”和Access中的“31.12.2016 *”。

任何想法?

For i = 5 To CountTables
 With doc.Tables(i)
         With rst
             .AddNew 'Neuen Eintrag in die Tabelle schreiben
                 ![xx1] = xx
                 ![xx2] = xx1
                 ![xx3] = xx2
                 ![SystemNr] = SystemNr
                 ![xx4] = xx4
                 ![xx5] = xx5
                 ![Scope] = doc.Tables(i).Cell(1, 2).Range.Text
                 ![Action] = doc.Tables(i).Cell(2, 1).Range.Text
                 ![xx6] = doc.Tables(i).Cell(5, 1).Range.Text
                 ![ActionReference] = doc.Tables(i).Cell(7, 1).Range.Text
                 ![RelatedDatabases] = doc.Tables(i).Cell(9, 1).Range.Text
                 ![xx7] = doc.Tables(i).Cell(11, 1).Range.Text
                 ![xx8] = doc.Tables(1).Cell(13, 1).Range.Text
                 ![Result] = doc.Tables(i).Cell(15, 1).Range.Text
                 ![xx9-Nr] = doc.Tables(i).Cell(17, 1).Range.Text
             .Update 'Tabelle updaten
         End With
 End With
Next

1 个答案:

答案 0 :(得分:1)

Word单元格区域的Text以Chr(7)结尾,BEL字符作为单元格结束字符。 替换所有出现的情况:

doc.Tables(i).Cell(x, y).Range.Text

用这个:

Replace(doc.Tables(i).Cell(x, y).Range.Text, Chr(7),"")

这应该足够了。