表のセル部分を選択し、五行目に境界線を付ける

[9413]表のセル部分を選択し、五行目に境界線を付ける 投稿者:りるこ 投稿日:2018/03/22 13:20:25
お知恵をかしていただければと思います。
表のセル部分を選択した状態で、
画像のように、五行ごとに境界線を付けることができるのかというものです。

こういうことは、インデザインに実装されている機能でできるものなのでしょうか?
お教えいただければ幸いです。よろしくお願いします。

attached image
[9417]Re: 表のセル部分を選択し、五行目に境界線を付ける 投稿者:えむ 投稿日:2018/03/23 15:33:11
ひとつのセルの中に5行目がいくつ出てくるかで手間がかかったりしますが、[次のスタイル]機能で出来ない事はないです。
「スタイル1行目」から「スタイル6行目」まで6つの段落スタイル作成します。
「スタイル5行目」は[段落境界線]を設定しておきます。それ以外のスタイルは設定内容は同じです。
「スタイル1行目」は[次のスタイル]は「スタイル2行目」にします。
以下「スタイル2から6」まで[次のスタイル]は次の「スタイル●行目」を設定。
セルを選択して「スタイル1行目」を選択して[“スタイル1行目”を適用して次のスタイルへ]を実行。
[9418]Re: 表のセル部分を選択し、五行目に境界線を付ける 投稿者:りるこ 投稿日:2018/03/24 10:21:33
ご返信ありがとうございます。
えむさまの方法を試してみたのですが、セルは一つ一つ個別になっていまして、「次のスタイル」機能が反映されませんでした…。
結合すると修正がしづらくなってしまうので、できれば表はいじらず(先方からもらうエクセルデータなので)使いたいのですが、
スクリプトを自分で作るのが、一番手っ取り早いということですかね…。
スクリプトを使うなら…

mySel = app.activeDocument.selection[0];
for (i=0; i<mySel.cells.length; i=i+5) {
mySel.cells[i].bottomEdgeStrokeWeight = 1;
mySel.cells[i].bottomEdgeStrokeType = ("ベタ");
mySel.cells[i].bottomEdgeStrokeColor = ("Black");
}

こんな感じ、ですかね?
[9420]Re: 表のセル部分を選択し、五行目に境界線を付ける 投稿者:りるこ 投稿日:2018/03/26 12:09:18
(dot)様

スクリプト、ありがとうございます!
お時間をいただき恐縮です…。

早速試してみたところ、画像のような形になりました。
ので、スクリプトはド素人なのですが、勝手ながらdot様のスクリプトの

for (i=0; i<mySel.cells.length; i=i+5) {

部分を

for (i=4; i<mySel.cells.length; i=i+5) {

に変更したところ、選択したセルの5行目に線が付くようになりました!
本当に助かりました。
これでいちいち、5行目を数えて線を付けなくても良くなりました。
ありがとうございました!

attached image
この記事の書き込み元へのリンク (コメントや質問などはこちらへどうぞ)

このページをシェア