[ 掲示板に戻る ]

記事No.992に関するスレッドです

表組@空のセルを結合する / wahsy URL
はじめて書き込みさせていただきます。

2列のセルを選択しておきます。実行すると、2列めにテキストが入っていないセルを1列めと結合します。テキストが入っていれば結合しません。
というApple Scriptがリンク先にあります。

因みにこんな感じです。
*****以下スクリプト*****
tell application "InDesign 2.0.2J"
set Num1 to 1
set CountRow to count row of selection
--表の段数分繰り返し
repeat with myRows from 1 to CountRow
set Num2 to Num1 + 1
--表の右側のテキストを取得
set CellText to (contents of cell Num2 of selection)
--テキストがなければマージを実行
if (CellText = "") then
set TableColumn1 to (cell Num1 of selection)
set TableColumn2 to (cell Num2 of selection)
merge TableColumn1 with TableColumn2
set Num1 to Num1 - 1
end if
set Num1 to Num1 + 2
end repeat
end tell
*****以上スクリプト*****

これをwin-CS2環境で使いたく、JavaScriptやVBS等、自分なりに調べたつもりで色々試してみたのですが、上手くいきません。

どなたか御教授いただけたら幸甚です。
よろしくお願いします。

No.992 2008/04/11(Fri) 17:33:39
Mozilla/5.0 (Windows; U; Windows NT 5.1; ja; rv:1.8.1.13) Gecko/20080311 Firefox/2.0.0.13

補足 / wahsy
上記添付画像のように、「表内の任意の2列を選択し、空セルがあったら連結する」といった事がしたいのです。
No.993 2008/04/11(Fri) 17:37:21
Mozilla/5.0 (Windows; U; Windows NT 5.1; ja; rv:1.8.1.13) Gecko/20080311 Firefox/2.0.0.13

Re: 表組@空のセルを結合する / 匿名A
sel = app.activeDocument.selection;
col_count = sel[0].columns.length;
if(col_count == 2){
cel_count = sel[0].cells.length-2;
for(r = cel_count ; r>=0 ; r-=2){
if(sel[0].cells[r+1].contents == ""){
sel[0].cells[r+1].merge(sel[0].cells[r]);}
}
}

こんなんで動きませんか?

No.994 2008/04/11(Fri) 20:01:50
Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 2.0.50727; .NET CLR 3.0.04506.30)

Re: 表組@空のセルを結合する / wahsy
バッチリ稼動しました。
2万行以上ある表組みを前に途方にくれていたところ大変助かりました。
ありがとうございました!

No.995 2008/04/14(Mon) 10:25:26
Mozilla/5.0 (Windows; U; Windows NT 5.1; ja; rv:1.8.1.13) Gecko/20080311 Firefox/2.0.0.13