- ベストアンサー
エクセルで他のブックを参照(列⇒行にコピー)
エクセルで、他のブックにあるデータを参照したいのですが、 ブックAで縦方向にならんでいるデータをブックBの横方向にコピーを簡単に行う方法はありますか? 「ブックA」 A1~A12に名前(結合しています) B1~B12に月(1月~12月) C1~C12に勤務時間 D1~D12に残業時間 Aさん 1月 190 10 2月 150 12 ・ ・ ・ ・ ・ ・ ・ ・ ・ 12月 200 30 Bさん 1月 170 13 ・ ・ ・ ・ ・ ・ 「ブックB」 勤務時間 横方向に1月~12月まで 残業時間 横方向に1月~12月まで 1月 ・・・ 12月 Aさん 勤務時間 190 残業時間 10 Bさん 勤務時間 170 残業時間 13 「ブックA」に勤務時間と残業時間を入力すると「ブックB」に反映されるようにしたいです。 INDIRECT関数を使ってみたのですが、「ブックA」を常に開いていないとエラーになってしまいます。 「ブックA」を閉じた状態でも「ブックB」に値を反映させる方法はありますか? よろしくお願いします。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
閉じた状態では、値は反映されません。 ファイルの全体が分からないので質問しますが、ブックを分けるのはなぜでしょうか。問題がなければ、ブック内で処理された方が、楽だと思います。(ファイルサイズが大きくなるのと、再計算で処理が重くなるのが我慢できれば。)
その他の回答 (1)
- snoopy64
- ベストアンサー率42% (337/793)
ピボットテーブルはいかが? ブックAの1行目にタイトルをつける。 「名前」「月」「勤務時間」「残業時間」 ブックAのA列からD列まで選択し、挿入→名前→定義 名前欄に「勤務表」と入れ「追加」を押す。 ブックAを保存して閉じる。 ブックBの空白のシートで、データ→ピボットテーブル 外部データソース→「次へ」 データの取り出し Excel Files* を選び「OK」 ブックAを選び「OK」 勤務表を選び、「>」を押し「次へ」「次へ」「次へ」「完了」 フィールドが取り出されました、となるので「次へ」 既存のワークシート、=$A$3 レイアウト 行に名前、列に月、データに勤務時間と残業時間をドラッグ データの個数:勤務時間となっていたら、それをダブルクリックし、合計を選び「OK」 残業時間も同様 「OK」「完了」 以上でほぼご希望の結果が出ていると思います。 合計とか空白とかは、不要なら消せます。 やってみてください。簡単ですから。 頑張ってくださいヽ(^。^)ノ
お礼
ご回答ありがとうございます。 ピボットテーブルを試してみたのですが、外部データの取り出しのところで、「この機能はインストールされていません」と出てきてしまいました。 インストール用のCDを探してみたのですが、見つかりません(>_<) せっかくアドバイス頂いたのにすみません。 今回は、ブックAの勤務時間の表をブックBに移して、同じブック内で処理する方法を取りたいと思います。 ありがとうございました。
お礼
ご回答ありがとうございます。 ブックAには、他のデータも入っていたので そのままブックを分けた状態で反映できないかな~と思い質問させたいただきました。 おっしゃるとおり同じブックで処理したほうが楽ですね。 ブックAの勤務時間の表だけ、ブックBに移してみたら、 ちゃんと表示されました(^^) ありがとうございます。