表組@空のセルを結合する

[992]表組@空のセルを結合する | 投稿者:wahsy | 投稿日:2008/04/11(Fri) 17:33:39
はじめて書き込みさせていただきます。

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等、自分なりに調べたつもりで色々試してみたのですが、上手くいきません。

どなたか御教授いただけたら幸甚です。
よろしくお願いします。
attached image
» 1
[993]補足 | 投稿者:wahsy | 投稿日:2008/04/11(Fri) 17:37:21
上記添付画像のように、「表内の任意の2列を選択し、空セルがあったら連結する」といった事がしたいのです。
» 2
[994]Re: 表組@空のセルを結合する | 投稿者:匿名A | 投稿日:2008/04/11(Fri) 20:01:50
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]);}
       }
   }

こんなんで動きませんか?
» 3
[995]Re: 表組@空のセルを結合する | 投稿者:wahsy | 投稿日:2008/04/14(Mon) 10:25:26
バッチリ稼動しました。
2万行以上ある表組みを前に途方にくれていたところ大変助かりました。
ありがとうございました!
この記事の書き込み元へのリンク (コメントや質問などはこちらへどうぞ)

このページをシェア