2017-02-09 5 views
1

WordからAccessへテーブルデータをインポートするVBAスクリプトがあります。正常に動作しますが、私のAccessTableでは、すべてのフィールド@すべての列で、スクリプトはインポートされたデータの最後に「ブラックドット」を追加します。また、テーブルフィールドが空の場合。WordテーブルからAccessへのインポート - 追加の文字の追加

私のデータは、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

Textはchrです(7)、セル端の文字として機能BEL文字で終わります。こののすべての出現箇所を置き換え :これで

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

を:

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

これで十分です。

関連する問題