2016-08-23 2 views
1

私は毎週のレポート用のカスタムドキュメントを作成するコードを作成しています。新しい文書を作成し、テーブルを作成し、すべての書式を設定し、ロゴなどを挿入するように設定していましたが、VBAでロゴのサイズを変更しようとするたびにWordがクラッシュしたときに壁に当たった。とにかくこれを間違った方法でやっていたことが私にはありました。テンプレートを作成してそのテンプレートを開いて、その文書に直接変更を挿入する必要がありました。Word 2010 VBA:下にあるものをすべて削除せずにテンプレートにテキストを追加

必要な範囲にテキストを追加すると、以下のすべてが削除されます。私はヘッダーの3行を持っています。 3行目は可変で、毎週変更されます。その下に私は3つのテーブルがあり、そのうちのいくつかのセルは毎週更新されます。今は私が書類の3行目についているだけです。

ここに私が持っているものの例があります。私が新たに立ち上がり、すぐに死んでしまったので、それは非常に短いです。

Dim Template as Document 
Set Template = ThisDocument 
Dim InsertSpot as Range 
Set InsertSpot = Template.Range(46) 

InsertSpot.Text = "Hello" 

これを実行すると、すべてが「Hello」以下で削除されます。

私は、次のようないくつかの異なるもの、試してみました:動作しません

Set InsertSpot = Template.Range(46,50) 

InsertSpot.InsertAfter "Hello" 

を。最初のテーブルの最初のセルに "Hello"を追加するだけです。

このような小学生には馬鹿になってしまいましたが、ここで何をすべきかわかりません。私がオンラインで見たすべては、ブックマークを削除せずにブックマークにテキストを挿入する方法について話しました。私はちょうどテキストを入力したい、期間。

どのような考えですか?

答えて

0

回答が見つかりました。

Dim Template as Document 
Set Template = ThisDocument 
Dim InsertSpot as Range 
Set InsertSpot = Template.Range(46, 46) 

InsertSpot.Text = "Hello" 

私は挿入したテキストは、ページの残りの部分にオーバー出血ないように開始と終了の文字の両方を一覧表示しなければならなかった:私は次のようでした。私は似たような問題を抱えている誰かを助けてくれることを願っています残念ながら、Word VBAのサポートと明確な説明には欠けています。

0

他の選択肢があることができ

ThisDocument.Range(46).InsertBefore "Hello" 

ThisDocument.Tables(1).Range.InsertBefore "Hello" 

ThisDocument.Paragraphs(3).Range.InsertAfter "Hello" 
関連する問題