[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『数式の意味をおしえてください』(めぉ)
前任者が作ったエクセルの数式意味がわかりません。引継ぎがなかったため
教えてもらえる人がいないので焦っています。
IF(ISNA(VLOOKUP(H7,リスト!$AS$2:$AV$165,3,0))," ",VLOOKUP(H7,リスト!$AS$2:$AV$165,3,0))
これはどういったことをしている数式でしょうか。
使用方法としては、請求書を作る際に、違うシートから
金額を引っ張ってきて、請求書に記載する、ということをやっています。
同じようなものを別エクセルファイルで作りたいと思っているのですが
意味が分からないので応用できないでいます。
< 使用 Excel:Excel2010、使用 OS:Windows10 >
まずISNA関数は対象が#N/Aエラーかどうかを見る。 この場合はVLOOKUP関数でH7で検索をかけたが見るからなかった場合になる。 で、もし#N/Aエラーだった場合は""、エラーでなかった場合はVLOOKUP関数の結果を返すようになっている。 (ねむねむ) 2019/07/16(火) 17:14
VLOOKUPの部分だけを取り出したら、理解できますか?
そこからだと、ちょっと大変ですが、VLOOKUPが理解できているなら、
以下になります
前半のVLOOKUPはは対象データが存在するかどうかを確認しています
存在しなければNAエラーが返りますので それを ISNA関数で判断しています。(NAなら真です)
でISNAが真なら、該当データがないことになりますので " " をセットし、
ISNAが偽(該当データがある)なら、再度VLOOKUP関数で該当データを取得してセット
ということを行っています。
(渡辺ひかる) 2019/07/16(火) 17:17
で、EXCEL2007からはIFERROR関数というものが追加されていて =IFERROR(関数,エラーの場合の値) で、エラーの場合はエラーの場合の値、エラー出ない場合は関数の値を返す。 それを使って =IFERROR(VLOOKUP(H7,リスト!$AS$2:$AV$165,3,0),"") とできる。 (ねむねむ) 2019/07/16(火) 17:18
ぶつかりまくり・・・。 書いちゃったので
H7の値が、リスト!AS2から、リスト!AS165の間に無かったら(#N/Aエラー)、半角スペースを表示。 あれば、その行と同じ、AS列からAS列を1として右に3つ目のセルを表示。
(BJ) 2019/07/16(火) 17:20
IFERRORが短くて私にも分かりやすいので
この関数プラスVLOOJUPを使って
数式を作ってみたいと思います!
スペシャリストの方々、素早いご回答をありがとうございました。
(めぉ) 2019/07/16(火) 18:06
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.