- ベストアンサー
データを別BOOKの指定セルに流し込む方法
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
データが一度にどれくらい増えていくのかわかりませんが、増える量がそれほどでもないのでしたら、最初は手間がかかりますが、VBA使用しなくてもBook2の該当シートの該当のセルに式を書いておけばいいのではないでしょうか 手順としては Book1とBook2を開いておいて、Book2のシートQW-1セルA16に=と書いてBook1のA4セルを選択して確定すれば =[Book1.xls]流し込み用!$A$4 になるので4の前の$を取り除く 以降C16,D16、G16で同じように操作して、その後AからGまで選択してコピーしてC17からG25まで選択して形式を選択して貼り付けで「式」 シートQW-2にQW-1のA16からG16をコピーし、置換で 4 を 14 にしてから AからGまで選択して先ほどのコピー貼り付け手順を実施 このパターンを必要なだけ繰り返す。 データが増えたら増えたときに必要なだけ上記の手順を実施する。事前に式を含むシートを作成しておいてもOK。 こうしておくと、データのある流し込み用シートを別シートに分割した場合でも、Book2の該当シートで式のシート名の部分だけで置換を利用して変更するだけで対応できます。 また、QW-xのシート名が変更になっても何も手を加える必要がありません。 VBAの場合は、上記のような変更があればコードの変更やVBAそのものを変更する必要がでてきます。
その他の回答 (1)
- hallo-2007
- ベストアンサー率41% (888/2115)
<このデータを10行ずつ、BOOK2のシート名(QW-1)~(QW-100)の指定セル・・・ この構成自体が良くないです。 むやみにシートを増やしても使いにくだけですよ。 構成でいえば 1、全てのデータが縦方向に蓄積されているデータシート 2、希望の内容を抽出する抽出シート の2枚構成で考え直してみてください。 例ですが データをA~Dの4列に追加して行くようなVBAでも準備する。 抽出のシートの 上部分にセルに QW-1 とか現在のシート名にあたる項目を 入力するセルを配置 16行目から以下に、入力した内容に応じて希望のデータが表示される関数を考える。 シートを横へ探して移動するより、はるかに使いやすくなります。 一度、会社の担当者、上司(?)の方へ相談してみてください。 この手の間違ったやり方を続けていくとだんだん複雑になり、最後は破たんします。
お礼
とても参考になるコメントいただき有難うございます。
お礼
コメント頂き有難うございます。 VBAを使用しなくてもなんとかなりそうですね。早速教えていただいた作業を実行してみます。