- ベストアンサー
Excel 宛名ラベル作成で、社名が変わったら改ページしたい。
宛名ラベル作成について質問させていただきます。 はじめはwordの差込印刷を使用していたのですが、 社名ごとに改ページを入れることが出来ず、各社ごとのデータを作り、会社数分(約300社)を1枚ずつ差込みしている状態です。 Exceiでマクロを使用してできるのではないかと思い、 調べてみたのですが、宛名ラベルの形式が、3列×8行の24枚シートなので、どうもうまくいきません。 …マクロ初心者なのに手を出してしまった浅はかな考えを反省しています。 データは社名、役職、氏名の3種類です。 それを左から右へ順番にデータが入っていき、 社名が変わると印刷され、 開始位置にもどり、 再び、データが入っていく…というようなことが、マクロで可能でしたら教えていただきたく、思います。 マクロでなく、ワードで可能!というご指摘も大歓迎です。 ちなみに、うちの会社ではアクセスが入っていません。 いままでこういったものは外注していたようで…。 どうぞよろしくお願いいたします。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
Word側で対応できると思いますよ。(Excelのデータも少し編集あり) 過去ログの 【 差込印刷で顧客別に複数行のデータを印刷する方法で困っています 】 http://oshiete1.goo.ne.jp/qa2844223.html にある説明がわかりやすいかと思います。 わかりにくかったら補足しますので、一度トライしてみてください。
その他の回答 (2)
- pam_sarai
- ベストアンサー率36% (4/11)
そんな面倒な事をしなくとも、それ専用の市販ソフトがあります。 http://www.vector.co.jp/soft/win95/writing/se417792.html 私のところでも利用していますが、大変便利でお勧めです。
お礼
ソフト購入に消極的な会社なので、購入は難しいかと思いますが、 このような便利なものがあるというのを教えていただいてありがとうございます。
- imogasi
- ベストアンサー率27% (4737/17069)
エクセルVBAではこうすれば出来るとおもう。 (1)現データ 会社別に(会社名列で)ソートしておく (2)印刷シートとシートセルの調節。 私はプログラム内で、数量的に指定して、ある特定の会社のラベルに3列8枚の位置に配置はようしない。(本式のラベル印刷などは、ヒサゴの何号と指定できっちり位置決めできているが。) それで実際に試行錯誤して、列幅、行高、余白、遊び列、遊び行、フォントサイズ、セル内配置や位置調節のための値の最初のスペースなどをどうしたらよいか、そういう(18個のミシン目で区切られたマスの中に、体裁よく収まる)シートを作ってください。 1ラベルシールが出来れば、ある程度3列にコピー、8箇所コピで出来ると思う (3)いつも、前の行の会社名(または会社コード)を保持する変数を1つ作ります (4)データ第1行から最終行まで、以下を繰り返す 1行のデータにつき、ラベルシールの1枚分の各セルに会社情報を溜め込む A.会社が同じで24枚以内なら、ラベルシートの1枚分の各セルに会社情報を溜め込む 右(または下。質問に書いてないよ)のラベルへ 1社分の情報を関係数セルに値をセット。横は3列だから4、7、10、・・には直下行に印刷情報のセット位置をずらす。(注) 縦は8個の列が B.同じ会社でシール25枚目(、49枚目・・)になったら、まず今まで溜め込んだ、そのラベルシート1枚の該当範囲を印刷する。 そして印刷後その範囲をクリアする。 第1ポジションに今の会社(25番目など)情報をセット 以下繰り返し。 C途中で会社が変わったら今まで溜め込んだ情報だけにして、(空白 シール部分はあってもやむをえない)ラベルシート1枚分を印刷する。 そしてその範囲をクリアする。 ラベルの第1ポジションに対応するセル範囲に、今の会社(新会社の)情報をセット。以下直下行について繰り返し。 ーーー (注)1ラベルの各18のラベルシールと対応するシートのセルが番号 (1-18)を指定するとうまく行くVBAコードが可能で、それを やるとコードがすっきりすると思う。ラベルシールポジションを示すポインタ変数は必要。 そのためにポジションと項目ごと(会社名、会社住所など)を対応させる列・行の対応表を作るのが良さそう。 以下内容はでたらめ ーーーーーーーーーー会社ーーー住所ーー代取 第1ポジション C3 C5 C6 第2ポジション E3 E5 E6 第3ポジション G3 G5 G6 第4ポジション C6 C8 C9
お礼
ポジションの対応表を作るとは眼から鱗でした。 imogasiさんの回答はいろいろなところで拝見し、参考にさせていただいています。 ありがとうございました。
お礼
ワードのフォームを使うと出来るんですね。 難しく考えすぎていたようでした。ありがとうございました。