エクセル2013で説明しています。毎日のデータを会社固有の不規則な基準日のデータと照らし合わせて比較計算することがあるかと思います。直近の最高売上高とか、リニューアル前の売上高との比較です。日付の関数等で一定の期間を前提に計算式を作ることが出来ません。HLOOKUP関数を使うと不規則な年月日でもスムーズに自動計算できます。「=OFFSET(AC4,0,-1)-HLOOKUP("●",$3:$11,ROW()-2,0)」ちなみに、これをセル番地で書き直すと「=AB4-X4」です。※画像をクリックすると拡大します。上の表をご覧ください。基準日とした日に●で印をつけています。HLOOKUP関数で●をつけた日の数値を参照することで自動計算を可能にしています。数式の詳しい説明をしますね。前半のOFFSET(AC4,0,-1)に関しては既に『列挿入に合わせて数式の参照セルを希望通りに自動変更する方法(1)』で説明しているので割愛します。HLOOKUP関数の構造は「=HLOOKUP(検索値,範囲,行番号,検索の型)」です。検索値(●)が見つかったら、検索値が所属する列と行番号(ROW()-2)がクロスするセルに入力されている値を返す。検索の型が0の場合は、検索値が完全に一致する場合のみ返す。※画像をクリックすると拡大します。一つ目は範囲を絶対参照で指定する点です。絶対参照で指定しないと、数式をコピーしたときに範囲がずれる可能性があります。二つ目は行番号をROW関数を使って指定する点です。行番号を数値にすると、1行ごとに数値が違うので入力が大変です。ROW関数を使えば、自動で行番号が計算されるので便利です。このケースでは、ROW関数で返される行番号(ワークシートを基準にした行番号)は「4」です。HLOOKUP関数で使用する行番号(HLOOKUP関数の指定範囲を基準にした行番号)は「2」なので、ROW関数から2を引いて、HLOOKUP関数で使用する行番号を計算しています。※画像をクリックすると拡大します。縦並びの場合はVLOOKUP関数を使えば同じことができます。エクセル2013で説明しています。エクセル2013で説明しています。エクセル2013で説明しています。エクセル2013で説明しています。エクセル2013で説明しています。