Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


5856 / 13646 ツリー ←次へ | 前へ→

【48352】複数シートに一度に入力 ラフテー 07/4/13(金) 17:01 質問[未読]
【48354】Re:複数シートに一度に入力 ですよ 07/4/13(金) 18:32 回答[未読]
【48537】Re:複数シートに一度に入力 ラフテー 07/4/21(土) 10:30 お礼[未読]

【48352】複数シートに一度に入力
質問  ラフテー  - 07/4/13(金) 17:01 -

引用なし
パスワード
   このサイトは重宝させてもらっています。
質問ですが、以下のような事をVBAでするにはどうすればいいでしょうか。

Wordの差込み印刷のようなことをExcelでしたいのです。
番号が振ってあるシートが複数あって、そこに別シートにあるデータベースから
名前や数値をリンクさせたいのですが、一枚一枚ではなく、
"1"のシートには番号1の人の値、"2"のシートには番号2の人の値という
風にいっぺんで入力したいのです。
名前や数値を入れるセルは全てのシートで同じセルです。
シートの番号を扱える関数があればいいのですがVBAではないと
難しいような気がします。

お手数でしょうが、ご指導よろしくお願いします。

【48354】Re:複数シートに一度に入力
回答  ですよ  - 07/4/13(金) 18:32 -

引用なし
パスワード
   ▼ラフテー さん:
1.まず、基準となるシートを用意します。
  基準シートは、印刷範囲を指定しておきます。

2.印刷範囲外のセル(例えばA1セル)にデータ(を入れた)シートの
  印刷したいデータの行番号を入れます。

3.基準シートの該当セルに、
  =OFFSET(データシートの基準セル, A1(±行数補正), 列番号)
  と入れます。


4.VBAにて、行番号セル(A1)の値を変更していくと、
  差込印刷のように、値が変わっていきます。

5.値が変わった基準シートをコピーして、
  式を外す(コピー --> 形式を選択して貼り付け --> 値)

6.シートの名前を変更する。


これで可能かと思います。

シートのコピーではなく、印刷をVBAにて行えば、より差込印刷っぽくなるでしょう。

3のOFFSET関数は、ヘルプ等を参照してください。
5,6は「マクロの記録」にて出来るかと思います。
(シートの増設では無く、印刷する場合も「マクロの記録」で出来ます)
4はDo〜Loopを使えば出来ます。

【48537】Re:複数シートに一度に入力
お礼  ラフテー  - 07/4/21(土) 10:30 -

引用なし
パスワード
   ▼ですよ さん:
返事遅くなりましたが、ありがとうございました。
参考にさせてもらって作ってみます。

5856 / 13646 ツリー ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free