WORDで作成したTableのセルの結合 – プログラミング – Home

WORDで作成したTableのセルの結...
 
通知
すべてクリア

[解決済] WORDで作成したTableのセルの結合


mac
 mac
(@mac)
ゲスト
結合: 22年前
投稿: 37
Topic starter  

いつもお世話になっております、macです。

VC++で作成したプロジェクトにmsword9をインクルードして、
ワードの.doc形式で保存するプログラムを作成しています。

縦横4X4のテーブルを作成し、2行目から4行目の左端の3つのカラムを
結合させたいのですが、うまく動作しません。
(結合したいのは下図の①、②と③)

** 現状のテーブル **
+---+---+---+---+
| | | | |
+---+---+---+---+
|① | | | |
+---+---+---+---+
|② | | | |
+---+---+---+---+
|③ | | | |
+---+---+---+---+

* 行いたい結合 **
+---+---+---+---+
| | | | |
+---+---+---+---+
| | | | |
| +---+---+---+
| | | | |
| +---+---+---+
| | | | |
+---+---+---+---+

* ここからコード *
// ①のセルを選択
Row cRow = cRows.Item(2);
Cells cCells = cRow.GetCells();
Cell cCell = cCells.Item(1);
cCell.Select();

// 結合する全てのセルを選択
m_cSelection.EndOf(COleVariant((long)wdColumn), COleVariant((long)wdExtend));

// 結合
m_cSelection.MoveEnd(COleVariant((long)wdCell), COleVariant((long)1));

* ここまでコード *

ウェブで検索したところ、結合にはMoveEndを使用すると記述してありましたが、
その辺りが怪しいようです。
分割には、「split」という関数が用意されていますが、結合する関数も
あるのでしょうか?

どなたかご教授お願いします。

開発環境
WindowsXP VC++6.0 Office2000


引用未解決
トピックタグ
dairygoods
 dairygoods
(@dairygoods)
ゲスト
結合: 23年前
投稿: 1421
 

結合するのは Cells.Marge のような気がします。

使うメソッドが分からないときは、
Word のマクロ記録でやりたい操作を記録して、
生成されるVBスクリプトを見ればよいです。

あと、ヘルプはご覧になってますでしょうか?
http://msdn2.microsoft.com/en-us/library/ms254954(en-us,VS.80).aspx


返信引用
mac
 mac
(@mac)
ゲスト
結合: 22年前
投稿: 37
Topic starter  

dairygoods様、回答ありがとうございます。

Cells.Margeで結合できました。

ちなみに、VBスクリプトはどのようにすれば見れるのでしょうか?


返信引用
Blue
 Blue
(@Blue)
ゲスト
結合: 20年前
投稿: 1467
 

MS-Word開いて メニュー の マクロ -> Visual Basic Editer でみれます。

文法はVBですが、オブジェクトの使われ方は同じですので参考になります。
(VBのエディタ機能を使えば結構楽チンです。)


返信引用
YuO
 YuO
(@YuO)
ゲスト
結合: 22年前
投稿: 320
 

ちなみに,Word VBAのヘルプをちゃんとインストールしていれば,
ヘルプは
オフィスをインストールしたディレクトリ\1041\VBAWRD9.CHM
になります。
# Office 2000の場合。

Office 2000とOffice 2003ではメソッド引数等に違いがあるので,
自分のバージョンのヘルプを見た方がよいでしょう。


返信引用
mac
 mac
(@mac)
ゲスト
結合: 22年前
投稿: 37
Topic starter  

Blue様、YuO様回答ありがとうございます。

ヘルプに関することまでありがとうございました。


返信引用

返信する

投稿者名

投稿者メールアドレス

タイトル *

プレビュー 0リビジョン 保存しました
共有:
タイトルとURLをコピーしました