ELLの足跡

人は最後は一人だという・・・でも、・・・今は妻が傍にいてくれる・・・

ELL-ヤマウチ

トーションレースの製造企画卸
梅肉エキス販売
和紙健康タオル
トーションレース&細幅テープの試作品の小売りコーナー



日々のパソコン案内板


【Excel関数】   No.1(A~I)   No.2(J~S)   No.3(T~Y)
【Excelの小技】  【HTMLタグ&小技】
【PDFの簡単セキュリティ】
【複数フォルダーを一括作成するんならExcelが超便利だよ!!】
【アップデートが終わらない!? Windowsの修復ツールを使ってみる方法】
【削除してしまったファイルやデータを復元する方法ー其の一(以前のバージョン)】
【削除ファイルやデータを復元する方法ー其の二(ファイル履歴)】
【Excel振替伝票の借方に入力したら貸方に対比する科目を自動記入】
【手書きで書くように分数表記する方法】
【Web上のリンクさせてある文字列を選択する方法】
【Excel2010以降は条件付き書式設定での文字色にも対応!】
【Windows10のWindows PowerShellでシステムスキャンの手順】

Excel関数・・・INDIRECT関数(文字列が入力されているセルへの参照)説明&応用

2011-01-12 | 日々のパソコン
今日はExcel関数でセルに入力したセル番地など文字列を介し、

間接的にセルの参照先の値を求めることが出来る関数を紹介しますね・・・

  •  =INDIRECT(参照文字列,参照形式)
     ※ 参照文字列
          参照形式と合う形式の文字列が入力されているセルへの参照、又は名前によるセル参照
       参照形式を論理値TRUE(省略可能)か論理値FALSEで指定します。
          TRUEか省略の場合・・・参照文字列にA1形式の文字列が入力されているとみなされます。
          FALSEの場合・・・参照文字列にR1C1形式の文字列が入力されているとみなされます。

例えば、下の図の場合・・・
  • セルA1にA1形式でセル番地B1が指定されてます
  • セルB1には山川と云う名前が記入されてます
  • ここでセルD1にセルA1を指定する事によってセルB1の山川を表示させてみます・・・=INDIRECT(A1)
  • ここでは参照形式はセルA1にはA1形式のB1が入力されてますので省略しました。
  • セルA6にR1C1形式でセル番地RC[-2]が指定されてます。
  • セルB6には関数と云う文字が入力されてます。
  • セルD6にセルA6を指定する事によってセルB6の関数と云う文字を表示させてみます・・・=INDIRECT(A1,FALSE)
  • ここでは、セルA6に入力されてるセル番地がR1C1形式の参照形式に成ってますのでFALSEを指定しました。
      ここでR1C1形式を少しだけ説明しておきます
    • この図の場合関数を入力するセルD6が基準に成ります
    • セルD6を基準に手前の行はマイナス表示。例えば一行上の場合・・・R[-1]
    • セルD6を基準に次の行は数字のみ表示。例えば一行下の場合・・・R[1]
    • セルD6を基準に手前の列はマイナス表示。例えば1列左の列の場合・・・C[-1]
    • セルD6を基準に数字のみの表示。例えば一列右の列の場合・・・C[1]


ここからは、実際の応用例を使い説明しますね・・・
下の図の場合・・・
  • AチームのデータがセルA3からセルC6に一覧表・・・A3:C6・・・Aチーム
  • BチームのデータがセルE3からセルG6一覧表・・・E3:G6・・・Bチーム
  • セルB9にチーム名を書き込むようにしています。
  • セルB10にコードを書き込むようにしています。
  • セルB11にセルB9・セルB10に書き込まれたら名前が表示されます。
    • VLOOKUP関数を使用して検索値をセルB10に記入されたコード・・・=VLOOKUP(B10,範囲,列数,検索の型)
    • 範囲はセルB9に記入されたチーム内とします。
      INDIRECTを使いますがこの式を組む時には名前の定義付けをしないと駄目です
      • 先ずAチームのデータ範囲A3:C6の範囲を選択
      • 左上の名前ボックスにAチームと名前を記入します
      • これでAチームの範囲が出来ました。
      • 次に、Bチームのデータ範囲E3:G6の範囲を選択
      • 左上の名前ボックスにBチームと名前を記入します。
      • これでBチームの範囲が出来ました。
      • チーム名を記入してるセルB9を指定してINDIRECT関数の当てはめます・・・INDIRECT(B9)
    • これをVLOOKUP関数にはめ込みます・・・=VLOOKUP(B10,INDIRECT(B9),列数,検索の型)
    • 列数は名前が表示させたいので一覧表の2列目を指定・・・=VLOOKUP(B10,INDIRECT(B9),2,検索の型)
    • 検索の型は完全に一致・・・=VLOOKUP(B10,INDIRECT(B9),2,FALSE)
    • これで名前が表示されました
  • セルB12には販売個数を表示させたいので列数を3列目を指定すれば良い訳です。


この関数を利用する時のポイントは“名前の定義”付けをする事です。

今日の小技は如何でしたか?

コメント
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする