[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『数式の入っているA2をもとにまた式を』(ともこ)
[教えてください。]
セルA2にシート名を反映させる関数が入っているます。↓ MID(CELL("FILENAME"),FIND("]",CELL("FILENAME"))+1,100) セルB2はセルA2の数値を元にVLOOKUPの式が入っています。↓ IF(A2="","",VLOOKUP(A2,シート名,14,0)) こうすると、セルB2がエラーになってしまうのですが、 数式の入っているA2をもとにまた式をくむことはできないのでしょうか? わかりにくい説明になってしまい申し訳ないのですが、 どなたか教えてください。
できると思いますよ〜♪
範囲や、シート名が正しいか確認してみてください。 ちなみにどんなエラーでしょう?
(キリキ)(〃⌒o⌒)b
>ちなみにA2が数値だとB2にちゃんと値がかえります。 なるほど〜 わかりました! 数値「1」と、文字「1」は別物です。 CELL関数でシート名を出した際、MID関数で「文字」扱いになっているのが原因だと思います。 上記数式を下記に変えてみてください。 =--MID(CELL("FILENAME"),FIND("]",CELL("FILENAME"))+1,100)
(キリキ)(〃⌒o⌒)b
はいはい。 試しに、こんな感じの表を作ってみてください。
A B 1 1 TRUE 2 1 FALSE 3 1 FALSE 4 1 TRUE
A1 には、数字の「1」 A2 には、書式設定を文字列にして「1」 A3 =A2 A4 =--A2 B1 =ISNUMBER(A1) B4までコピペ
ISNUMBER関数は、数字かどうか判断する関数です。 「TRUE」なら、数値 「FALSE」なら、数値以外 を調べることが出来ます。 A3 =A2 は、そのままですから、「FALSE」になりますね。 A4 =--A2 は、文字の「1」に、 「-」(マイナス)掛ける「-」(マイナス) ← - * - = + 上記でプラスにさせています。 よって内容は変わりませんが、「文字」を「数字」にしています。
別方法として、「*1」を後ろにつける方法もあります。
=MID(CELL("FILENAME"),FIND("]",CELL("FILENAME"))+1,100)*1
こんな説明でわかります? (キリキ)(〃⌒o⌒)b
こちらに統合しました。 (kazu)
先ほどの問題は解決したのですが、またまた問題発生なので
どなたかお教え下さい。
下記のように処理をしています。
セルA2にシート名を反映させる関数が入っているます。↓
複数シートがあって、それぞれのシート名をそのシートの中のセルA2に
反映させたいのですが、ひとつのシート名をかえると、連動して全ての
シートの中のセルA2が一番あたらしく入力したシート名になってしまいます。
これはどのようにすれば解決できますでしょうか?
=--MID(CELL("FILENAME",A1),FIND("]",CELL("FILENAME",A1))+1,100) と して下さい。 (純丸)(o^-')b
純丸さん
解決しました。ありがとうございました!!
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.