• 締切済み

エクセルでの三択について

エクセルでA1のセルに1と入力すると10を2を入力すると15を3を入力すると33をA1のセルに表示したいです。 LOOKUP関数を使えばできるのでしょうか。 また、表示した数値を計算式で使用したいのですが、どのようにしたらよいのでしょうか。

みんなの回答

  • imogasi
  • ベストアンサー率27% (4737/17068)
回答No.7

関数の基礎的なことがわかっていないよ。A1セルに関数式を入れても、Aに1と入力すると式は消えてしまうのはエクセルの仕組みで常識。 エクセルの基礎を、少し判っている人に対面で聞くか、スクールでも行って勉強のこと。質問や本を読むレベル以前のレベルなようだ。 ーー ただし、その値を別セルの計算式の中で使いたいなら、1に対する10の10の代わりに、10を出す関数を式のセルの値代わりに置き変えれば仕舞い。 こう言うことも、エクセルを使っているうちに、自然に皆さん会得しているのだろうが。 A1に1と入れてB1セルにその結果の10に10を足したいなら =VLOOKUP(A1,{1,10;2,15;3,33},2,FALSE)+10 のようにする・ A1ーA3に対しB1ーB3は 1-20(+10四手イル) 2-25 3-43 正確には、A1セルなどが未入力の場合の手当ての組み込みが必要だが略。

  • keithin
  • ベストアンサー率66% (5278/7940)
回答No.6

>エクセルでA1のセルに…を入力すると,……をA1のセルに表示したいです エクセルの関数では,計算結果を数字を記入したセルに表示することはできない,のはエクセルの常識です。 出来ないことを出来ないかなと,ムダなあがきでご相談を投稿する初心者さんは少なくありませんが,出来ないモノは出来ません。 >表示した数値を計算式で使用したい ワザワザこういう注釈を入れているというのは,表示で示す方法は知ってるのかもしれませんね。 それなら最初からそうしておいて,「下流側の計算式」で「1,2,3が記入されていたときには10,15,33と読み替えて計算する」ように仕込めば良いだけのことです。 #できる方法 シート名タブを右クリックしてコードの表示を選ぶ 現れたシートに下記をコピー貼り付ける private sub worksheet_change(byval Target as excel.range)  if target.address <> "$A$1" then exit sub  if target = 1 then target = 10  if target = 2 then target = 15  if target = 3 then target = 33 end sub ファイルメニューから終了してエクセルに戻る A1セルに1や2や3を記入する。 #「やればできる」を示すためのサンプルですので,追加ご質問は無しで。 「実際にはこうしたかったんです」をご自分で応用できないときは,ヤリタイ事の事実を添えて別途新しいご相談を投稿してみて下さい。

  • mar00
  • ベストアンサー率36% (158/430)
回答No.5

ANo.3さんの言う通りA1に入力して別の数値を関数を使って表示するのは無理だと思います。 マクロを使えば可能です。 シート名の上で右クリック → コードの表示を選択 → VBE画面が出てきますので下記のコードをコピーして貼り付けて下さい。 Private Sub Worksheet_Change(ByVal Target As Range) If Target.Address() = "$A$1" Then Select Case Target Case 1 Target = 10 Case 2 Target = 15 Case 3 Target = 33 Case Else Target = "" End Select End If End Sub 1から3以外の数値を入力した場合は空白になります。

  • mu2011
  • ベストアンサー率38% (1910/4994)
回答No.4

>エクセルでA1のセルに1と入力すると10を2を入力すると15を3を入力すると33を >A1のセルに表示  ⇒数式とデータ入力を同一セルでできない事はエクセルの常識です。   どうしても1セルで実現したい場合はマクロ(VBA)を学習して下さい。   通常はA1をデータ入力として、参照する数式セル側でLOOKUP,CHOOSE等の関数を   組み合わせて使用します。   例えば、データの妥当性チェックは無視するとIF(CHOOSE(A1,10,15,33)=15,~)、   又は、IF(LOOKUP(A1,{1,2,3},{10,15,33})=33,~)の様な使い方になります。    

  • Turbo415
  • ベストアンサー率26% (2631/9774)
回答No.3

A1に入力してA1に入力したものと別の数値を出すと言うのは、私の知識からすると出来ないはずです。 A1に入力してA2に出すと言うなら、Lookup関数でも、普通にIfを使ってでも出来ますけど。 この条件ならA2に=IF(A1=1,10,IF(A1=2,15,IF(A1=3,33)))といれればでます。 もし、A1に数値が入っていないときとか、1,2,3以外の数値が入ったときの条件があるならそれを足す事も出来ます。上の式を入れたばあい、1,2,3以外の数値が入ったらA2にはFALSEとでます。

  • KURUMITO
  • ベストアンサー率42% (1835/4283)
回答No.2

A1セルにデータを入力するとしてB1セルには次の式を入力します。 =IF(A1=1,10,IF(A1=2,15,IF(A1=3,33,""))) または =IF(OR(A1=1,A1=2,A1=3),CHOOSE(A1,{10,15,33}),"") あるいは C1セルに1、C2セルに2、C3セルに3と入力し、D1セルには10、D2セルには15、D3セルには33のようにデータベースとしての表を作ります。C列とD列にはさらに条件を追加することができます。 そこでB1セルには次の式を入力します。 =IF(COUNTIF(C:C,A1),VLOOKUP(A1,C:D,2,FALSE),"")

  • aokii
  • ベストアンサー率23% (5210/22062)
回答No.1

VLOOKUP関数を使えばできます。 C1~C3セルに1,2,3 D1~D3セルに10,15,33 と入力し、 B1セルに、 =VLOOKUP(A1,C:D,2,FALSE) と入力してみて下さい。 表示した数値を計算式で使用する場合、例えば100倍するには、 使いたいセル(例えばE1セル)に、 =A1*100 と入力してみて下さい。

関連するQ&A

  • エクセル2002

    いつもお世話になります。エクセル2002で例えばA1のセルに10,000~20,000の数値を入力すると15,000、21,000~30,000の数値を入力すると23,000のように表示するにはどのような関数を使用すればよいでしょうか。 教えてください。よろしくお願いします。

  • エクセル DATE関数について

    初歩的な質問です。エクセル2002のDATE関数で =date(2008,a1,b1) の計算値が参照セルを未入力ですと2007/11/30になります。例えばa1に8,b1に15と入力すれば、2008/8/15 のようにちゃんと表示されるのですが。未入力でもシリアル関数に2008の数値でこのように表示されてしまうのでしょうか。セル未入力の場合、計算値が表示されないようにする方法はあるのでしょうか。

  • Excelの計算式または関数について

    Excel2007を使用しています。  次のようなことをやりたいのですが、計算式または関数、または関数と計算式の組み合わせを教えていただきたくお願いいたします。 問題  例えばA列にA1からA10まで何らかの数値は入っていて、次にA11に何らかの数値を入力した場合、A11に入力した数値がA1からA10までのいずれかのセル入力されている数値と同じ場合にはB11のセルに「重複」と表示する。以下A12セルへの入力された数値はA1からA11までのいずれかのセルに入力されている数値と同じ場合にはB12のセルに「重複」と表示する。以下セルA13以下へ入力する数値についてもすでに入力済みのセルの数値と同様な比較を行って対応のB列のセルに「重複」と表示をする処理を行う。  以上のような処理を行いたいのです。よろしくお願いいたします。

  • エクセル関数で・・・

    エクセル表についての質問です。 A1セルに数値で“180”、B1セルに同じく“200”と入力したとします。 これは180時間、200時間を意味する数字で、以後のエクセル表では “180:00”、“200:00”と認識させる必要があります。 以前はA2セルに手打ちで“180:00”、B2セルに“200:00”と入力して この数値を元に以後の計算をしておりました。 ここで質問です! A1セルに“180”と入力して、A2セルに“180:00”と表示され、以後の 計算式に活用させるためにはどのような関数をA2セルに使えばよろしいですか? 未熟者をお助け下さい。

  • エクセル 関数 2008_12_12

    エクセル関数に詳しい方、教えてください。 どのセルに、どうゆう関数を入れればいいか教えていただきたいです。 1、A1に直接入力されていたら、A2を関数式計算させる(入力済み)  A2に関数式を無視して直接入力したら、A1は空白になる。  A2が空白なら、A1も空白。 2、あるセルに数値が無ければ(空白)、その列を非表示にする関数式。 3、これは関数ではないですが、マクロを使用してないのにセキュリテ ィー警告(開いたときに出るやつ)が出てくるので出ないようにした い。*セキュリティーレベルを下げないやり方。 以上、分かる方教えてください。

  • エクセルで####とか「FALSE」を表示しないように出来ますか?

    エクセル2000を使用しております。 関数のセルに「####」とか「FALSE」とかが表示されています。 計算上は問題ないみたいですが、見た目がわるいので、これを表示しないようにするか、数値を入力しない場合に「0」を表示しするなどは出来ないでしょうか? 宜しくお願いします

  • エクセルの関数LOOKUPなどについて

    Office2007のエクセルに関して質問です。 関数の挿入のfxを押してLOOKUP関数を入れたときに 検査値をセル指定をし、そのセルの中の数字で検索したいのですが、なぜかできません。 直接数字を入れればできるのですが、それでは関数を使う意味がないので・・・。 fxでのLOOKUPのダイアログで検査値を セル指定をした場合="数値" 直接数値を入力した場合=数値 となるので、「""」がおかしいのかと思うのですが「""」を外すこともできず困っております。 初心者の質問で恐縮ですが、お答えいただければと思います。

  • エクセルでの、関数を教えてください。

    エクセルでの、関数を教えてください。 A1セルの数値の条件に応じた計算結果をB2セルに自動表示させたいです。 A1セルの数値が0~499の時は、B2セルに「7500」と表示 A1セルの数値が500~1999の時は、B2セルに「A1*15」の計算結果を表示 A1セルの数値が2000~3999の時は、B2セルに「A1*14」の計算結果を表示 A1セルの数値が4000~4999の時は、B2セルに「A1*13」の計算結果を表示 A1セルの数値が5000~7888の時は、B2セルに「A1*11」の計算結果を表示 A1セルの数値が8000~9999の時は、「A1*9」の計算結果を表示 A1セルの数値が10000以上の時は、「A1*8」の計算結果を表示 詳しく教えていただけると助かります。 よろしくお願いします。

  • エクセル2003・プラスをマイナスにしたい

    エクセルで、セルにプラスの値を入力するとマイナスになり、それは表示だけでなく実際に数値としてマイナスにしたいのです。つまり、そのセルを計算したり関数を使用した場合、マイナス扱いとなるようにしたいのです。 できれば、セルの書式設定でできないでしょうか?よろしくお願いします。

  • エクセル 検索

    Microsoft Excel 2007を使用しています。 条件を選んでマッチするデーターを表示する方法をお尋ねします。 A列、A1に「1」以下セルA10に「10」までの数字が昇順で入力されています。 セルB1からセルB10まで果物の名前が入力されています。名前の重複はありません。 セルC1に果物の名前を入力したらセルD1に関数を用いてそれに対応するA列の数値が表示されるようにできませんでしょうか。 エクセルのヘルプを見ましたが、旨く当てはまる関数を探し出せませんでした。 宜しくお願い致します。 例)  セルA5に「5」という数値があり、B5に「柿」が入力されている。 セルC1に「柿」と入力すると、セルD1に「5」が表示される。

専門家に質問してみよう