[[20140407152703]] 『別シートへ転記』(スコッティ) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『別シートへ転記』(スコッティ)

 お世話になります。

 [個別シート]
 	 A     B    C
  1	 番号      1
  2	・・・
  3	・・・
  4	・・・
  5	・・・   金額  20,000
  6	 番号      2
  7	・・・
  8	・・・
  9	・・・
 10	・・・   金額  48,000

 [参照シート]
 	 A     B
  1	 番号   金額
  2	 1    20,000
  3	 2    48,000
  4	 3    XX,XXX
  5	 4    XX,XXX

 個別シート(10シート程度)の金額が入力されたら、参照シートに自動的に転記される
 と言うような関数が御座いましたらご教示頂ければと思います。
 尚、個別シートの番号と金額の間の行数は不規則で、
 番号の数字は、B列とC列のセルを結合させています。

 どうぞ宜しくお願い致します。

< 使用 Excel:Excel2003、使用 OS:Windows7 >


 質問、わかりづらいです。
 もう少し詳細に説明をお願いします。
(ppp) 2014/04/08(火) 20:43

 ppp 様

 有難う御座います。
 解り辛い説明で申し訳ないです。

 個別シートと言うのはシート名ではなく、便宜上使っているだけで、
 実際は、1シートに10個ずつ番号を入れて、10シート作成してあります。
 今後増える可能性もあります。
 上記の表で言うと、シート名「個別シート」と言うシートに
 B1とC1、B6とC6を結合して1、2と言う番号を振ってあり、
 その番号の金額としてC5、C10に20,000、48,000と言う数字を手打ちすると、
 同ブック内にあるシート名「参照シート」のシートの当該番号行に、
 上記で提示させて頂いたように、当該金額を転記させたいのです。
 番号1つにつき1シートであればVLOOKUP関数やINDEX関数を使用すれば良いのですが、
 シート量が膨大になるので10個ずつまとめています。
 個別シートの2〜4行目、7〜9行目の行数自体が増える可能性もあります。

 詳細な説明を心掛けてみましたが、上記質問の繰り返しになっています、すみません。
 大変お手数おかけして申し訳ございませんが、
 解り辛い箇所をご指摘頂けましたら幸いです。

 どうぞ宜しくお願い致します。
 
(スコッティ) 2014/04/09(水) 11:46

こんにちは

《1シートに10個ずつ番号を入れて、10シート作成》
と、ありますが、
1シート目→1〜10
2シート目→11〜20
  ・
  ・
  ・
10シート目→91〜100
という感じで数字を振っているんでしょうか?

それとも各シート全て1〜10の番号なのでしょうか?
(とらら) 2014/04/09(水) 11:55


 とらら 様

 有難う御座います。

 前者の方法(1シート目→1〜10、2シート目→11〜20…)で番号を振っております。

 どうぞ宜しくお願い致します。
 
(スコッティ) 2014/04/09(水) 13:57

《(1シート目→1〜10、2シート目→11〜20…)で番号を振って》
《今後増える可能性もあります》
《個別シートの2〜4行目、7〜9行目の行数自体が増える可能性もあります》

↑を鑑みるにマクロを利用した方がいいと思います
当方マクロは微々たる修正等しかできないので他の先生方にお願いすることになりますが・・・
(とらら) 2014/04/09(水) 16:04


 とらら 様

 有難う御座います。

 やはり関数では無理ですか。
 マクロは初心者未満レベルなので諦めようと思います。

 この度は本当に有難う御座いました。
 またお世話になる事があるかもしれませんが、どうぞ宜しくお願い致します。
 
(スコッティ) 2014/04/09(水) 21:18

 シート毎に式の変更が必要ですが
 =IF(A1=10,LOOKUP(9^9,個別1!C:C),INDEX(個別1!C:C,MATCH(A1+1,個別1!B:B,0)-1))
 こんな式で、一つ下の番号から探すのはどうですか?

 番号が抜けている可能性がある場合は
 考えないといけない事が増えてくると思いますが。
  
(HANA) 2014/04/10(木) 10:51

 HANA 様

 有難う御座います。

 ご提案頂いた関数で無事金額の数値が取得出来ました。
 今まで「=個別1!C5」と言うように一々セルごとに指定していたので
 作業が大幅に楽になりそうです。感謝感謝です!
 もし宜しければ「LOOKUP(9^9,個別1!C:C)」の意味をお教え頂ければ幸いです。

 どうぞ宜しくお願い致します。
 
(スコッティ) 2014/04/11(金) 01:49

 「LOOKUP(9^9,個別1!C:C)」は、
 一番下の値を参照したいときの常套式です。

 LOOKUP関数の検査範囲の値は昇順で並んでいるお約束なので
 その範囲にある値より大きい値(9^9)を検索すると
 その数(9^9)より一つ小さい値→一番下の値 を返してくれます。
  
(HANA) 2014/04/11(金) 10:37

 HANA 様

 有難う御座います。

 常套式なのですね。勉強不足でお恥ずかしい限りです。
 分かり易いご説明有難う御座います。また一つ勉強になりました。

 この度は本当に有難う御座いました。
 またお世話になる事があるかもしれませんが、どうぞ宜しくお願い致します。
 
(スコッティ) 2014/04/11(金) 12:19

 >勉強不足でお恥ずかしい限りです。
 あぁ、そういった意味ではなく
 誰かがやってうまくいったのをみんなが踏襲している
 (と、私は認識している)ので
 マルっとそういうものだと思ってもらった方が良いと思い
 あのような書き方になりました。

 色々な所で使われていて、同じように色々な方が疑問に思い
 それに対して、色々な説明がされていますので
 探してみてもらうと良いかもしれません。

 先の様な説明がしてあるところもありますし
 「バグだ」と書いてあるところも見つかると思います。
  
(HANA) 2014/04/11(金) 13:35

 HANA 様

 有難う御座います。
 先ずは調べてみようと思います。

 繰り返しになりますが、この度は本当に有難う御座いました。
 またお世話になる事があるかもしれませんが、どうぞ宜しくお願い致します。
 
(スコッティ) 2014/04/11(金) 17:51

コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.