【あるあるbot連動企画】フォロワー20万人のアカウントであなたのあるあるを披露してみませんか?

自社のホームページ上から支店別の販売成績を閲覧出来るのですが、成績の良い支店順に成績が表示されるので自分で支店のアルファベット順に成績結果を修正してオリジナルの成績表を作成しています。
しかし添付画像にありますように支店名の位置が毎日変わるので支店名を基準にした成績を表示するにあたりVLOOKUP関数やHLOOKUP関数では基準のセル位置から真下、真横の位置にあるセルを参照する数式は分かるのですが、基準の位置にあるセル(支店名Aから右にいくつ下にいくつという様に)からずれた位置にあるセルの参照式が分かりません。何卒ご教授願います。

「エクセル関数にて指定位置から下と横にずれ」の質問画像

A 回答 (5件)

こんばんは。


回答されている皆さんみたいに詳しい者ではないのですが、
コメント失礼します。

回答から、「OFFSET」「MATCH」を使用してサンプルファイルを作成してみました。

よろしければご確認頂ければと思います。
http://firestorage.jp/download/3d907cbdb7ea20011 …

ファイル名:サンプル_.xlsx

解決になっていなかったらすみません。
こちらの質問とても勉強になりました。
他の回答者の方々もありがとうございました。
    • good
    • 0
この回答へのお礼

初めまして。ご回答有難うございます。他の方々は説明文や画像が大変分かりづらいという苦情を頂いた中でとても丁寧に対応してエクセルシートに計算式まで入れて頂いて感謝しています。早速指定のページにアクセスしました。私が希望としているものが出来ているのには大変驚きました。素晴らしいの一言です。

お礼日時:2016/02/01 20:43

ん?


OFFSET関数では無理だったのかな?
=OFFSET(基準セル,下にいくつ,右にいくつ)
でセルを指定。
または、
=OFFSET(基準セル,下にいくつ,右にいくつ , そこから下へ高さいくつ,右へ幅いくつ)
の範囲指定。
…なんだ。
質問文を見るかぎりこれで問題ないはずだが、なにか問題があるのだろうか。
それを補足してもらえれば対処方法のアドバイスが可能だ。

支店名の行が変わるのであれば、No.2でも答えられているようにMATCH関数で何行目にあるのかを調べればよい。
OFFSE関数に指定する2つ目のパラメータに使えば良いのだ。

なお、OFFSET関数の解説では
OFFSET(基準,行数,列数,高さ,幅)
のように説明されるが、分かり難いだろう。

・・・
また、サーバー上のどこに参照元のエクセルファイルがあるのかが分かれば、
基準セルの指定で
パス[ブック名]シート名!セル番号
の形で直接参照可能だ。
\\samplesaver\[example.xlsx]Sheet1!A1
のように指定する。

しかし、WEBクエリを使うのが確実。
公開されているWebサイトから参照するので、webサイトが参照するファイルの保存場所が変わっても、ファイル名が変わっても、そのまま使用できる。
    • good
    • 0
この回答へのお礼

不丁寧な質問に回答頂き有難うございます。まずお断りしますが貴殿の回答文の中で「また、サーバー上の・・・・あるのかが分かれば」とありますが、自社のホームページの閲覧データーのため社員でなければアクセス不可能になっています。さて「OFFSET関数では無理だったのかな?」と記載されていますが、説明文とサンプルが大変分かりづらくて私が伝えたいことが上手く伝わっていませんでした申し訳ありません。改めて伝えたかったことは、今回の対処方法として"支店名A"を同一シート上の別の位置から同一名(セルの上下位置のみ任意に変化します)をVLOOKUP関数で検索しなければ出来ないのかなと考えました。OFFSET関数では基準位置が固定されていると認識していますので、そこから指定の行数及び列数を指定する方法では今回の検索は不可能ではなかろうかと思われます。質問文にありますように「支店名の位置が毎日変わる」のでホームページ上から成績結果を張り付ける際にサンプルでは3支店ありますが時として支店数が2支店や5支店と支店数が日々変わることがしばしばありますので、行数や列数が変化する場合ではOFFSET関数は不向きと考えました。なのでVLOOKUP関数にこだわっているのですが、他にベストな計算式がありましたらお手数でありますが具体的な式をお願い致します。差し支えなかったら本件ご対応願います。

お礼日時:2016/01/30 20:26

説明も添付図もサッパリポン!

    • good
    • 0
この回答へのお礼

今回説明文、添付図も分かりにくくて大変申し訳ございません。お願いするのであるから相手の立場になって考えたいと思います。

お礼日時:2016/01/30 11:51

INDEX関数とMATCH関数を組み合わせて使えばよいと思います


VLOOKUP関数が分かれば、MATCH関数もすぐに理解できます。
MATCH関数で数値が返るので、足し算もできます。
INDEX関数で目的の列や行を数値で指示することになります

※画像が荒くてよく見えません
    • good
    • 0
この回答へのお礼

回答有難うございます。今回初めて質問させて頂きました。貴殿同様他の回答者からも説明文や画像が大変見難いとご指摘を頂きました。今後は説明の内容や画像の添付に注意を払います。

お礼日時:2016/01/30 11:51

OFFSET

    • good
    • 1

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!