• ベストアンサー

Excelで数字入力し例文を表示

こんにちは。 Excelで数字を入力すると別シートに例文を表示させたいのですが・・・ 使用目的。 ◎10数項目の診断結果に対し、悪い結果にのみ注意事項を述べたい。 ◎シート1に診断項目の結果を入力(悪いとこだけ) 項目 結果 1. OK(実際は入力なし) 2. 3 3. 1 という具合に入力し シート2に悪かった項目2および3の結果をそれぞれ3、1の例文を表示する。 項目1はOKなので表示しない。 ◎1項目に対しての評価は数十種類のコメントです。 単語ではなく文章なのですがCHOOSEがベストでしょうか? ◎これを100人単位で実施します。 わかりづらい説明でスイマセン。 ところでExcelで可能でしょうか。 アクセスは持ってません。

質問者が選んだベストアンサー

  • ベストアンサー
回答No.3

> >列ごとに名前を付けておいて、 > どのように? いえ、別に名前は付けなくてもいいんですが、付けた方がメンテナンスが楽なんです。 関数などで参照する時に「sheet3!$A$1:$A$40」の代わりに「評価」で済みますから。 前述の表でいうと、A列を「評価」、B列を「項目1」のように名前をつけておきますし、 ついでにSheet1の結果の列にも「結果」って名前を付けておきます。安直だなぁ… 名前を付けるのは範囲を選択して「挿入」メニューの「名前…」でできます。 > >=if(結果="","",lookup(結果,評価,項目1)) > どこに? ほんとにごめんなさい。 項目1のコメントを表示したいセルにです。ただしこれはsheet1で結果を入力している 行とSheet2でコメントを表示している行が同じである前提で書いてあります。ズレてい るなら「結果」という名前を使わず直接セルを指定して下さい。 ちゃんとデータベースソフトを使った方が256倍は楽ですよ。FileMakerProあたりなら 昔から医学系の人にも使われててコミュニティーが発達しているし、簡単に使いこなせま す。

D-onk
質問者

お礼

色々とほんとにありがとうございました。 参考にしてがんばります。

その他の回答 (2)

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

問題の意味が捉えにくかった。例えば下記で良いですか。 (1)1日100人程度診断する。 (2)1人当たり1枚の、診断結果入力書を作る。 (3)1枚の診断結果入力書には、15項目程度の診断項目がある。 (4)診断項目1項目に書きこむ診断結果のバラエティは、1-9、a、b、c・・等15種類以上の数字・記号のうちの1つが医者により書きこまれる。 (5)(4)の各診断項目をエクセルのシート(Sheet1)の決められたセルに入力者が入力する。 (6)診断結果シート(Sheet2)には、診断入力シート(Sheet1)に入力されたコードにより、対応した文字化されたコメントを表示する。   (例)1。即手術2.即再検査3.3ヶ月後再検査4.治療薬を処方  5.脂こい食物は控える6。食後安静に7.運動を適度に行う 対処法は、#1の方のご解答の通り、各診断項目1つに1つのコードとコメントの対応テーブル(表)を項目の数だけ作り、Vlookup関数を使えば良いと思う。 Chooseは()内が長くなって見通しが悪い。

D-onk
質問者

お礼

ありがとうございます。 ごめんなさい。えらそうにchooseなんて書きましたが、 たまたま見つけた関数で、そんなに詳しくありません。 そのため、lookup.vlookup等の関数を使ったことがない、 使い方がわかりません。 >列ごとに名前を付けておいて、 どのように? >=if(結果="","",lookup(結果,評価,項目1)) どこに? ほんとにごめんなさい。 >問題の意味が捉えにくかった。 ほぼそのとおりです。定期検診です。

回答No.1

私なら別シートに例文を並べた表を作っておいて、lookup関数で処理しますね。 評価   項目1       項目2 1    まあまあです    気にしない 2    要再診       食事に注意 3    要治療       要治療 4    専門病院へ     専門病院へ 列ごとに名前を付けておいて、 =if(結果="","",lookup(結果,評価,項目1)) という感じでやればいいわけです。chooseと違って評価が30種類以上あっても 大丈夫ですし、メンテナンスも楽ですよ。

D-onk
質問者

お礼

ありがとうございます。 ごめんなさい。えらそうにchooseなんて書きましたが、 たまたま見つけた関数で、そんなに詳しくありません。 そのため、lookup.vlookup等の関数を使ったことがない、 使い方がわかりません。 >列ごとに名前を付けておいて、 どのように? >=if(結果="","",lookup(結果,評価,項目1)) どこに? ほんとにごめんなさい。

関連するQ&A