20日締めの表示がずれる

このQ&Aのポイント
  • WIN7 EXCELLL2010を使用しており、20日の締め日に翌月の入金の設定をしたい場合、セルI6に表示される金額が1列ずれて表示される問題が発生しています。
  • 修正するためにはセルJ6に正しい金額を表示するように修正する必要があります。
  • お手数ですが、私のやり方に問題があるかどうか確認していただけると幸いです。
回答を見る
  • ベストアンサー

20日締めの表示がずれる

いつもお世話になります。 WIN7 EXCELLL2010 です。 添付図で説明さていただくと、 A2 A3 は20日の締めで翌月の入金の設定したいのです。 ところが 「I6」に「2,500」が1列ずれて表示されます。 これを  「J6」に「2,500」に修正したい。 どこか私のやり方に問題があると思いますが御指導をいただけませんでしょうか。 参考に I1 =DATE($D$1-1,12,1) J1 =DATE($D$1,1,1) I6 =SUMPRODUCT(($A$2:$A$1000>=DATE(YEAR($I$1),MONTH($I$1)-1,VLOOKUP($E7,$E$3:$G$7,2,0)))*($A$2:$A$1000<=DATE(YEAR($I$1),MONTH($I$1),VLOOKUP($E7,$E$3:$G$7,3,0)))*($B$2:$B$1000=$E7)*($C$2:$C$1000))

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

  • ベストアンサー
  • bunjii
  • ベストアンサー率43% (3589/8248)
回答No.1

>どこか私のやり方に問題があると思いますが御指導をいただけませんでしょうか。 >I1 =DATE($D$1-1,12,1) >J1 =DATE($D$1,1,1) D1セルには2014と入力されていますか? 比較の日付を誤っているためです。 毎月20日で締めて翌月X日に入金と云う条件であればI1は入金月の1日と考えれば次のようにしなければなりません。 J6=SUMPRODUCT(($A$2:$A$1000>=DATE(YEAR($I$1),MONTH($I$1)-1,VLOOKUP($E7,$E$3:$G$7,2,0)))*($A$2:$A$1000<=DATE(YEAR($I$1),MONTH($I$1),VLOOKUP($E7,$E$3:$G$7,3,0)))*($B$2:$B$1000=$E7)*($C$2:$C$1000)) 但し、この式にはタイプミスと思われる誤りがありますので他のセルへコピーしても期待通りに動作しません。 明らかに毎月21日から翌月20日までの集計なので上記の数式は無駄な小細工になっています。 I1、J1セルは単純に各月の入金予定日で良いでしょう。 F、G列も不要な状態で数式を簡略化できます。 I3=SUMPRODUCT(($B$2:$B$1000=$E3)*1,($A$2:$A$1000>EOMONTH(I$1,-3)+20)*1,($A$2:$A$1000<EOMONTH(I$1,-2)+20)*1,($B$2:$B$1000=$E3)*$C$2:$C$1000) I3セルを右へ必要数と下へ必要数コピーすれば添付画像のようになります。 Excel 2013で検証しましたがExcel 2007/2010でも同様な結果が得られるはずです。

dorasuke
質問者

お礼

早速の御指導をありがとうございます。 上手くてきました。 その上に簡略てきてうれしい限りです。 D1セルには2014と入力されていますか? 間違いなく入力しています。

関連するQ&A

  • #VALUE!表示の解決方法

    いつもお世話になります。 WIN7 EXCELL2010 です。 現在は1日~月末の合計金額を月が替わる毎に表示しています。 入金の21日~翌月の20日締切で翌月の5日の入金にあわせて月毎の金額表示に変更したい。 参照図で説明します。 A(m/dd) B(文字列) C(数値) 列はユーザーフォームにて入力 D2 =IF(MONTH(A2)=MONTH(A3),"",SUMPRODUCT((MONTH(OFFSET($A$2,0,0,COUNT(A:A)))=MONTH(A2))*OFFSET($C$2,0,0,COUNT(A:A)))) E2 =IF(MONTH(F2)=MONTH(F3),"",SUMPRODUCT((MONTH(OFFSET($F$2,0,0,COUNT(F:F)))=MONTH(F2))*OFFSET($C$2,0,0,COUNT(F:F)))) F2 =IF(A2="","",WORKDAY(DATE(YEAR(A2),MONTH(A2)+1+(DAY(A2)>20),5)-1,1,祭日)) D列(1日~月末)の数式だと、例えば「D12 D13」などに#VALUE!の表示が出ません。 しかし「E12 E13」には#VALUE!の表紙が出ます。 A列とF列の違いは数式が入っているかいないかのようです。 このE列の 「#VALUE!」 の表示がでないようにするには、E列の数式をどう変更すればいいかご指導を仰ぎたいです。

  • 【Excel2000】土・日曜日を考慮した日付+α

    現在セルB1には『A1に入力した日の月末日付+月末休日の場合は前日』が出るようにしてあります。 セルA1 = 日付 セルB1 = IF(WEEKDAY(DATE(YEAR(A1),MONTH(A1)+1,0))=1,(DATE(YEAR(A1),MONTH(A1)+1,0))-2,IF(WEEKDAY(DATE(YEAR(A1),MONTH(A1)+1,0))=7,(DATE(YEAR(A1),MONTH(A1)+1,0))-1,DATE(YEAR(A1),MONTH(A1)+1,0))) ここに『A1が25日以降の場合は翌月20日+翌月20日が休日の場合は後日』という設定を加えたいのですが、可能でしょうか?  ・A1 = 2011/07/10 → (結果) B1 = 2011/07/29(金)  ・A1 = 2011/07/25 → (結果) B1 = 2011/08/22(月) どうしても不可能であれば別セル(C1など)でも構いません。

  • SUMPRODUCTで月毎の計の時に#VALUE!

    いつもお世話になります。 WIN7 EXCELL2010 です。 例えば添付図でB14に日付を入力するとJ列に月が替わるところで#VAUE!が表示されます。 ただしD列の個数を入力するとD列は正しく表示されます。 この#VALUE!を表示しない方法はないでしょうか。 3の行の各列には、 A =IF(B3="","",TEXT(B3,"mm")) B C D は手入力 E =IF(OR(B3="",C3=""),"",TEXT(B3,"yymm")&C3) F =IF(C3="","",VLOOKUP(C3,商品管理!$A$2:$B$211,2,FALSE)) & " " G =IF(C3="","",VLOOKUP(C3,商品管理!$A$2:$C$211,3,FALSE)) & "" H =IF(G3="","",D3*G3) I =IF(ISBLANK(D3),"",SUM($H$2:$H3)) J =IF(MONTH(B3)=MONTH(B4),"",SUMPRODUCT((MONTH(OFFSET($B$2,0,0,COUNT(B:B)))=MONTH(B3))*OFFSET($H$2,0,0,COUNT(B:B)))) 以上ですがご指導を仰ぎたいのですがよろしくお願いします。

  • エクセル 二つの日付でどちらか早い方の日付を表示させたいのです

    エクセル 二つの日付でどちらか早い方の日付を表示させたいのです 現在 Range("A3").NumberFormat = "ggg ee 年 m 月 d 日" Range("A3").Formula = "=DATE(YEAR(C2),MONTH(C2)+1,26)" セルC2の翌月26日 セルA3にC2の条件を入れています ここにもう一つのセルD2の日付の翌月26日の条件を追加 Range("A3").Formula = "=DATE(YEAR(D2),MONTH(D2)+1,26)"  セルD2の翌月26日 二つの条件で、どちらか早い方をセルA3に表示させる には どの様にすれば良いでしょうか よろしくお願いいたします

  • 月毎の計の時に#VALUE!その~2

    添付する画像をミスして再度になります。 いつもお世話になります。 WIN7 EXCELL2010 です。 例えば添付図でB14に日付を入力するとJ列に月が替わるところで#VAUE!が表示されます。 ただしD列の個数を入力するとD列は正しく表示されます。 この#VALUE!を表示しない方法はないでしょうか。 3の行の各列には、 A =IF(B3="","",TEXT(B3,"mm")) B C D は手入力 E =IF(OR(B3="",C3=""),"",TEXT(B3,"yymm")&C3) F =IF(C3="","",VLOOKUP(C3,商品管理!$A$2:$B$211,2,FALSE)) & " " G =IF(C3="","",VLOOKUP(C3,商品管理!$A$2:$C$211,3,FALSE)) & "" H =IF(G3="","",D3*G3) I =IF(ISBLANK(D3),"",SUM($H$2:$H3)) J =IF(MONTH(B3)=MONTH(B4),"",SUMPRODUCT((MONTH(OFFSET($B$2,0,0,COUNT(B:B)))=MONTH(B3))*OFFSET($H$2,0,0,COUNT(B:B)))) 以上ですがご指導を仰ぎたいのですがよろしくお願いします。

  • 翌月の支払日を求めたい

    WINDOWS XP EXCELL2003です。 ご指導を仰ぎたいのは、 今月の〆に対して      ( 例 2011/1/31 ) 翌月の5日をもとめたいです。( 例 2011/2/5  ) ※5日が土日曜日又は祝祭日の時は前倒しにしたいです。  例えば3月 5月のように黄色の部分のようになると嬉しいですが。 参照図で説明をさせていただきますと 例 A 発行日  =DATE(D2,E2,F2) B 支払日1 =WORKDAY(DATE(YEAR(A2),MONTH(A2)+1,5),-1,祝休日表!A$1:A$34) C 支払日2  =WORKDAY(DATE(YEAR(A2),MONTH(A2)+1,5),0,祝休日表!A$1:A$34) の数式でテストしているのですがB/C列の黄色の部分は実際のスケジュールとはあっています。 この数式をいろいろと試しましたが分からなくなり質問させていただきます。 どうすればいいでしようか。 ご指導を仰ぎたいです。 よろしく御願いします。

  • [Excel関数]締切日を指定して「翌月~日」と表示させたい

    現在、入出金の記録のブックの中に、クレジットカード引き落とし日を確認できる一覧表をExcelのシートで作っています。 月末締め、翌々月4日引き落としのカードの場合、A1に=TODAY()を入れて =DATE(YEAR(A1), MONTH(A1)+2, 4) とやればうまくいくと検索して発見しましたが、次の場合はどのようにしたらいいのでしょうか。 ・毎月15日締めで、翌月10日引き落とし ・毎月10日締めで、翌月5日引き落とし 上の例え2点とも関数としてはあまり変わらないと思うのですが、サッパリわかりません。 どなたかお分かりになりましたら教えていただけると幸いです。

  • 指定範囲から任意の近似値を探し、セル場所表示したい

    http://okwave.jp/qa/q8625875.html で、一旦解決を押したのですが 実は解決していませんでしたので、申し訳ないですが、もう一回書きます。 入力値に数字を入れて、近似値を出し、その場所を知りたいのですが 40000だと正常にでるのに対して http://gyazo.com/30b213fbc5d575c53a561c9b3dd08e68 100000だとうまく動いてくれません。 http://gyazo.com/b5fcbcd3a9d76509c1586020fe2aa552 H54には =ADDRESS(SUMPRODUCT(($D$43:$G$60=H52)*ROW($D$43:$D$60)),SUMPRODUCT(($D$43:$G$60=H52)*COLUMN($D$43:$G$43)),4) が入っています。どんな値でも取り出せるようにするにはどうしたらいいでしょうか? (本当はH54は必要なく、I54・J54の情報だけ取り出したいのですが・・・)

  • エクセルで優先的に表示

    いつもご丁寧に教えていただき本当に感謝しております。 また行き詰ってしまったのでお分かりになる方、よろしくお願いします。 まず、L1~L5に商品コードとして“1~5”、M1~M5に商品名として“花1~花5”の表があります。 C2に商品コードを入力するとD2に商品名がでるように、D2に=VLOOKUP(C2,$L$1:$M$5,2,FALSE)と関数を入れてます。E2には“×”or“空白”が入ります。 同様にF2に商品コード、G2に商品名がでるようにG2に=IF(F2="","",VLOOKUP(F2,$L$1:$M$5,2,FALSE))といれ、もう1つ同様に、 I2に商品コード、J2に商品名がでるようにIFとVLOOKUP関数を入れてます。H2とK2には“×”or“空白”が入ります。 この商品コードの入力はC2→F2→I2の順に入力していき、F2からやI2からの途中入力はないものとします。 ・・・・で,A2とB2の商品名を下記の例のように表示させるにはどうしたらいいですか? 例)D2に商品名がある場合→A2にD2の商品名、B2は空白 例)D2とG2に商品名がある場合→A2にD2の商品名、B2にG2の商品名 例)D2に商品名があるが、E2に“×”、G2に商品名がある場合→A2にG2の商品名、B2は空白 例)D2、G2、J2に商品名があるが、E2、H2に“×”がある場合→A2にJ2の商品番号、B2は空白 わかりにくい説明で申し訳ございません。

  • エクセル 曜日を平日と週末に分けたいがエラーが 

    似たような質問と回答をさがしやってみましたがエラーになります。 よろしくご指導下さい。 A  B      C(年)D(月)E(日)F(曜日)G(平日1週末2) 1  Mon      2007  10   1   Mon   1 2  Tue      2007  10   2   Tue   1 ・   ・   ・   2007  10   7   Sun   2 7  Sun =VLOOKUP(G1,$A$1:$B$8,2,FALSE) Gを求めるのにこのような式にしましたが Fに曜日を求める =DATE(C1,D1,E1)を入れているためかエラーが出てしまいます。平日と週末を分けるのはこのやり方でいいでしょうか? ◆最終的にやりたいことは     C  D  E   F   G   H   I    (年)(月)(日)(曜日)(平日1週末2)    2007  10   1   Mon  1   東京  12,000    2007  10  2   Tue   1   東京  8,000    2007  10  7   Sun   2   大阪  22,000 =SUMPRODUCT(($G$1:$G$6=1)*($H$1:$H$6="東京")*($I$1:$I$6)) のように、平日の東京の売上の合計を求めるようなことです。 質問が2つになりわかりにくい説明ですが、 できるだけシンプルないい方法があれば教えて下さい。

専門家に質問してみよう