次のようなテーブルが必要です。
それ自体はそれほど複雑ではありませんが、月の列を自動デクリメントして、毎月、位置0の月が現在の月になり、残りの月が1つ下に移動するようにしたいと考えています。では、ある月が 18 位に達した場合、その月はテーブルから削除されるのでしょうか? それは理にかなっていますか?
これにより、18 か月前の月が得られます。次に、これをコピーして月をインクリメントするマクロを作成できます。
MyMonth = DateAdd("m", -18, Date)
これは、必要なものに似ています。
Selection.Copy
Application.CutCopyMode = False
Selection.AutoFill Destination:=Range("A2:A20"), Type:=xlFillDefault
Range("A2:A20").Select
シート レイアウト:
A2:A20
: 蛾の数 (0..18)
B2: =EDATE(NOW();-A2)
セル形式: mmm-yyyy
(または必要に応じて別のもの)
数式がコピーされます。
これが私がやったことです:
= DATE(YEAR(NOW()), MONTH(NOW())-O599, 1)
O599 は、0 で始まる Number 列の場所です。したがって、表をさらに下に見ると、Number 列に示されている数値が現在の月から減算されます。