2014年03月28日

表の不要な行を削除する

DTP作業者にとっての難易度 ★★☆☆☆(2)


データ結合機能を使って文字を表に読み込んだ場合や、Excelのデータをコピー&ペーストして表を作成した場合、不要な行(空のセルが存在する行)が発生してしまうことがあります。このような行を素早く削除するためのJavaScriptを書いてみました。
以下、動画をご覧ください。

※アクティブなレイヤーに存在する表のみが対象になります。

※グループに含まれる表は対象となっていません。お手数ですがグループを解除してから実行してください。

※表に結合セルが含まれている場合は正しく動作しません。


サンプルデータもありますので必要な方はお試しください。

サンプルデータはこちら《minimum_2014_0328b.zip》です(CS4以降)。

posted by 照山裕爾 at 03:50| Comment(7) | TrackBack(0) | InDesign-その他の機能 | このブログの読者になる | 更新情報をチェックする
この記事へのコメント
ちょうど探していたところ見つかりました。ありがとうございます。
一つ質問があります。

CSVデータを「データ結合」機能を使い、表の各セルに流し込みしました。不要な部分がありますので自動で削除したいのですが、うまくいきません。

表のセルには何も入っておらずテキストエディタで開いても特に改行などのコードは入っていないです。
対象の部分のセルを選択し、Deleteを押してスクリプトを実行するとうまくいきます。

何かご存じでしたら教えてください。

よろしくお願いします。
Posted by ゆ at 2014年05月21日 23:04
「ゆ」さん
コメントありがとうございます。

恥ずかしながら私はあまりプログラムなどに詳しくない人間で、お役に立てないかもしれません。
私の思いつくのは、市川せうぞーさんがお書きになった
「謎の制御文字を一括削除したい」がセルに含まれているのではないか……ということぐらいです。
http://dtp-bbs.com/mt/indesignbbs/archives/6595_20120308094655.html
(私の経験ではデータ結合でこの「謎の制御文字」がセルに読み込まれました。)
この「謎の制御文字」が存在すると、そのセルは空だと認識されないかもしれません。

試しにInDesignの「検索と置換」ダイアログ→「テキスト」で「検索文字列」欄に「<FEFF>」と入力、「置換文字列」欄は空白のままで置換を実行してみてください。

余談ですが、この「謎の制御文字」は、タブを含む行の行揃えを乱すなど、得体のしれない悪さをすることがあるように思います。
私は、Wordのテキストを読み込んだ際なども
念のために「謎の制御文字」を削除する検索/置換を実行することにしています。
Posted by 照山裕爾 at 2014年05月24日 01:38
ありがとうございます!
>試しにInDesignの「検索と置換」ダイアログ→「テキスト」で「検索文字列」欄に「<FEFF>」と入力、「置換文字列」欄は空白のままで置換を実行してみてください。

上記手順で不要な表削除まで動きました。
ありがとうございます^^
Posted by ゆ at 2014年05月26日 12:47
セル削除について教えてください。
表のセルの列で一部だけ空がある場合、削除を実行したくないのですが可能でしょうか?

よろしくお願いします。

1 りんご もも なし ←OK
2 りんご    なし ←これも残したい
3           ←これは消したい
Posted by どん at 2015年02月18日 22:13
「どん」さん、
コメントに気付かず失礼しました。

サンプルファイルの中の
「B-すべてが空セルなら行ごと削除.jsx」は
そのような動作を目指したつもりですが、
うまくいきませんでしょうか?
Posted by 照山裕爾 at 2015年03月03日 19:33
このスクリプトに非常に助けられました。
製作者様ありがとうございます。


表に結合したセルが混じっているとエラー45が返ってきます。
他にも同じく悩んでいる人がいるかもしれないので足跡を残しておきます。

作業環境はCCです。
失礼しました。
Posted by ぺん at 2019年08月27日 17:36
ぺんさま
コメントをありがとうございます。

ご指摘の通り、このスクリプトはセル結合を想定したものではありませんでした。
本文中に注釈を追加しておきます。
Posted by 照山裕爾 at 2019年08月27日 18:43
コメントを書く
お名前:

メールアドレス:

ホームページアドレス:

コメント: [必須入力]


この記事へのトラックバック