イメージはこんな感じでです。
Excel
なまえ 番号 評点 備考
AAA 01 ◎ 大変反応がよい。……
BBB 02 × とても厄介。……
CCC 03 ○ 特に問題はないが……
※評点はwordには印字しないものとします。
word
-----------------1ページ目
【名前】AAA
【番号】01
【備考】
大変反応がよい。……
……
……
【名前】BBB
【番号】02
【備考】
とても厄介。……
……
-----------------2ページ目
……
……
【名前】CCC
【番号】03
【備考】
特に問題はないが……
……
……
長ければ複数ページ、短ければ1ページに数件(途中で次ページにまたがってもいい)という、書籍の流し込みのイメージです。
こういう設定は可能でしょうか。
VBAはわかりませんので、設定の範囲でお願いします。
関数使っていいですか?
&で文字列つなげるだけなので、簡単ですが。
■STEP1
別のシート(Sheet2とします)に以下のようにデータを作ります。
なまえ 番号 備考
【名前】AAA 【番号】01 【備考】大変反応がよい。……
【名前】BBB 【番号】02 【備考】とても厄介。……
【名前】CCC 【番号】03 【備考】特に問題はないが……
元データがSheet1だとして、Sheet2のA2セルに ="【名前】"&Sheet1!A2 と入れる感じです。
■STEP2
Sheet2全体をコピーして、Wordに「形式を選択して貼り付け>形式:テキスト」をする。
そうすると、EXCELの内容が全てWordに貼り付けられます。
■Step3
置換で改行コードを入れる。
「【」を「改行コード+【」に置き換える。
・Control+Hでワードの「置換」ダイアログを起動。
・「オプション」をクリック
・「あいまい検索」にチェックが入っている場合は外す。
・「検索する文字」に「【」を、置換後の文字」に「^p【」を入れて「すべて置換」をクリック。
同様に
「【名」→「^p【名」に置き換えると、Excel1行のデータの境にWordで1行改行を入れられます。
「考】」→「考】^p」に置き換えると、【備考】のあとを改行できます。
もしかしたら、余計な空白(スペース)が残る場合もあるかもしれませんが、この場合も置換で対処可能です。
ほぼ回答1のままですが、
(文字列を関数で別セルに作り、Wordで置き換える)
#Excel CHAR(10) で #セル内改行 させ Wordにテキスト貼り付けしてみた【 #三流君 】 - YouTube
1.セル内で文字列をCHAR(10)で改行させた式を作成する
CHAR(10) が 改行コードなので、
どこか隣のセルなどに
="【名前】" &A2&CHAR(10)&"【番号】" &B2&CHAR(10)&"【備考】" &D2&CHAR(10)
みたいにして、
改行コード付きの文字列を作成します。
2.Wordにテキスト形式で貼り付ける
Excelで列コピーをしてから、
Wordに形式を選択して貼り付け
の
テキストで貼り付けます
3.最後に" 不要なダブルコーテーションを置き換える
Wordに""付きで張り付くので、
置換で"を消します。
回答1の内容を少しいじっただけですが、
処理・作業の参考となれば。。。
ありがとうございます。
2018/06/07 11:05:42関数まではOKです。
Excelの方は随時データが追加されていくので、できれば最新版を印刷するたびに作業が発生するのは避けたいです。
思い出しました。
2018/06/07 13:06:44「^m」が「改ページ」のコードです。
ですから、
・普通に差し込み印刷
・Excelの1行がWord1ページになったWordのファイルに対して、置換をする。
元:^m→後:^p
これで改ページが改行になるので、ご希望どおりの形になると思います。