[[20070604111436]] 『#REF! エラー』(MI) ページの最後に飛ぶ

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

 

『#REF! エラー』(MI)

 下記の関数に対するエラーです。
=IF(E5="","",IF(B5>1,"",IF(COUNTIF(D5,"5*F*")=1,"PAIRS","PCS.")))

 シートAの品名をコピーしてシートBのD列(品名)10行目以降に貼り付けます。
ケース数や重量を入力する時マウスで商品を入力する行まで持ってきたら
シートBのF5にPCS.と表示されず、#REF! のエラーがでます。
数式のところをチェックしてみたら次のようになってました。
=IF(E5="","",IF(B5>1,"",IF(COUNTIF(#REF,"5*F*")=1,"PAIRS","PCS.")))

 今は、4行目からデータを入力して後に3行目の関数をコピーし直して、
エラーを直すようにしてますが、コピーし直さなくでも
正しい表示をさせる方法はありませんか?
よろしくお願いします。

 シートA
品名                     数量
5005                   500PCS.
500FDSG         800PCS.
6205SSZ                 200PCS.
786SUB                 1000PCS.
766FSD                  750PCS.
5002FDS                900PCS.

 シートB 
     A    B C     D        E   F         G   H    I         
1         梱包明細書 
2 ケースNo. 箱数   品   名   入数    重量    
3  
4  1-2     2C/T     50005        @200        @4.2               
5                                 400#REF!    8.4KGS.    
6  3       1C/T                   100PCS.    10.0KGS. 
7
8 4       1C/T    500FDSG     8003#REF!    4.5KGS.     
9
10 5       1C/T     6205SSZ       200#REF!    3.6KGS.
11
12          
13         6205SSZ 
14          786SUB  
15                   766FSD 
16                   5002FDS


 E列が「空白」、B列が「1より大きい」場合は、「空白」
 と、最初に定義されているので必要行(16行目?)まで
 一気に貼り付けても支障無いのではないでしょうか?

 先頭行(3行目)をコピー→次行(4行目)選択→Ctrl+Shift+↓→Ctrl+V
 で、式が連続して入力されている場所までコピーペースト出来ます

 (Ohagi)

Ohagi様

こんにちは、
うまくできましたよ。
ただやり方がまずかったようで,
数式バーをい見る限りでは何も変わってなかったので、
COUNTIF(D3 の後ろにD100を手入力で試してみたら、
何故かは分かりませんが、エラは出なくなりました。
F3=IF(E3="","",IF(B3>1,"",IF(COUNTIF(D3:D100,"5*F*")=1,"PAIRS","PCS.")))

質問で〜す
普通にドラッグして式をコピーし直すのと、
Ctrl+Shift+↓→Ctrl+Vのとは何が違うのでしょうか?
よろしくお願いします。


 >Ctrl+Shift+↓→Ctrl+Vのとは何が違うのでしょうか?
 ショートカットキーで行うだけで、やっている事は同じですよ

 >COUNTIF(D3:D100,"5*F*")=1
 では、3行目から100行目までの中に「"5*F*"」に当てはまるものが一つあったら「"PAIRS"」無かったら「"PCS."」
 それで、ご希望の結果でいいのでしょうか?
 「D3」にしないと意味が無いのでは…?

 (Ohagi)

 「#REF!」と言うエラー値は、エクセルが
 「何処を見れば良いか分からない!!」と主張しているエラー値です。

 同じ操作を簡単なサンプルでやってみますと
表1	[A]	[B]	
[1]	1	1	=A1
[2]	2	2	=A2
[3]	3	3	=A3
[4]			
[5]			
[6]	6		
 A1:B3とA6には 数字「1,2,3,6」を入力し
 B1:B3には、A列の同行を参照する数式を入力します。
 (B列の隣に表示している「=A1」等の式が各行に入力されています。)

 この状態で、A1セルを選択し
 マウスでA4セルへ移動します。

 B1の数式を確認すると「=A4」に変わります。
表2	[A]	[B]	
[1]		1	=A4
[2]	2	2	=A2
[3]	3	3	=A3
[4]	1		
[5]			
[6]	6		
 エクセルは「見ていたセルを見る」ので
 A1→A4に移動で、B1の数式もA1→A4に変更されます。

 これをふまえて・・・。
 今回(MI)さんが行った作業は
 ●A6セルを選択し、マウスでA2セルへ移動
  (A2の理由は、B2がA2を見ているからです。)
 「置き換えますか?」と言う確認に [ OK ]と答えます。

 B2の数式を確認すると「=#REF!」に変わります。
表3	[A]	[B]	
[1]		1	=A4
[2]	6	#REF!	=#REF!
[3]	3	3	=A3
[4]	1		
[5]			
[6]			
 これは、元からあったA2セルが無くなってしまったためです。

 もしかすると、
 >●A6セルを選択し、マウスでA2セルへ移動
 と言う試行ではなく、
 ○A3セルを選択し、マウスでA2セルへ移動
 の方が分かりやすいかもしれません。
 表2の状態から「○」の操作を行うと結果は
表4	[A]	[B]			表2	[A]	[B]	
[1]		1	=A4		[1]		1	=A4
[2]	3	#REF!	=#REF!		[2]	2	2	=A2
[3]		3	=A2		[3]	3	3	=A3
[4]	1				[4]	1		
[5]					[5]			
[6]	6				[6]	6		
 このようになります。
 つまり、
 A3→A2に移動で、B3の数式はA3→A2に変更されるのですが
 元からあったA2は無くなってしまうので、
 B2が見ていたA2が無くなり、B2セルは「何処を見れば良いか分からない!!」
 と言う主張を行います。

 セルを移動させるのが一番簡単な方法ですが
 既に数式が参照しているセルで行うと、この様な結果
 (数式が自動的に変更される)になります。
 マウスで移動させるのではなく、コピー&貼り付けで
 値を入力してください。
 例えば、表2の状態からエラーが出ない表3の状態にしたければ
 ◎A6セルをコピーし、A2セルへ貼り付け。

 数式のエラーは出なくなると思います。

 (HANA)


HANA 様

おはようございます。
遅くなって、すみません。

A3をコピーしてA2に貼り付けをしてしまうと、A3に元のデータが残ってしまいますので
コピーでわなく切り取りすることにしました。

どうもありがとうございました。

MI


コメント返信:

[ 一覧(最新更新順) ]


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