• 締切済み

Excelの機能について

次のようなことをやりたいのですが、excelにあるどの機能(関数など)を使えばよいかご教授いただければと思います 「G‐グリシン」「W‐トリプトファン」のように、Sheet1に予めルールを入力しておき、 Sheet2で、例えばA1に「G」と打てばB1に「グリシン」と表示する よろしくお願いします

みんなの回答

  • kagakusuki
  • ベストアンサー率51% (2610/5101)
回答No.3

 まず初めに、記号と名称の関係を表した一覧表を、適当な所に作って置きます。  ここでは仮にSheet1のC2セルからD21セルまでの範囲を使う場合に関しての話とさせて頂きます。  Sheet1のC列には、 C2セルに  A C3セルに  C C4セルに  D (中略) C20セルに W C21セルに Y と入力し、  Sheet1のD列には、 D2セルに  アラニン D3セルに  システィン D4セルに  アスパラギン酸 (中略) D20セルに トリプトファン D21セルに チロシン と入力して下さい。  次に、Sheet2のB1セルに =VLOOKUP(A1,Sheet1!C2:D21,2,FASE) という数式を入力して下さい。 以上で完了ですから、後はSheet2のA1セルに記号を入力するだけです。  尚、上記の数式では、記号を入力するセルに、何も入力されていない場合や、リストに無い記号が入力された場合には、エラーとなりますから、この点を改善した数式を、以下に記させて頂きます。 =IF(ISNA(VLOOKUP(A1,Sheet1!C2:D21,2,FASE)),IF(A1="","","(該当無し)"),VLOOKUP(A1,Sheet1!C2:D21,2,FASE))  こちらの数式では、記号を入力するセルに、何も入力されていない場合には、何も表示されず、リストに無いコードが入力された場合には、 (該当無し) と表示されます。 【参考URL】  エクセルで、基シートのデータを別シートに自動表示 | ANo.2 | OKWave   http://okwave.jp/answer/detail/q5664384/a16352125.html

noname#192382
noname#192382
回答No.2

マクロならば次のプログラムで目的が達成されます。 Sub Macro1() ' ' Macro1 Macro ' マクロ記録日 : 2010/2/14 ユーザー名 : ' Dim i As Integer, mymyword As String '検索語 Dim myword As String Worksheets("sheet2").Activate myword = Cells(1, 1) 'MsgBox myword '検索 Worksheets("sheet1").Activate For i = 1 To 10 'MsgBox (Left(Cells(i, 1), 1)) If Left(Cells(i, 1), 1) = myword Then 'MsgBox Cells(i, 1) mymyword = Mid(Cells(i, 1), 3, 10) Exit For Else 'MsgBox "NO" End If Next Worksheets("sheet2").Activate Cells(1, 2) = mymyword ' End Sub

  • soixante
  • ベストアンサー率32% (401/1245)
回答No.1

関数の VLOOKUP で解決でしょう。

関連するQ&A