[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『作成したい期間に応じて可変する表の合計行を作成したいです。』(emidij)
マクロ初心者で説明不足があるかもしれませんが、ご教授頂ければ幸いです。
進捗を管理する表があり、B列〜G列に明細・金額等のデータがあり、こちらは行数は変動しますが、列数は固定になります。
H列以降に作成したい期間に応じて、必要列(必要月数)分、進捗率を入力する列を作成するようにしたいと思っております。
こちらも後日マクロで自動化するつもりですが、下記マクロにはまだ含まれておりません。
例えばシートのセルC3が開始日、E3が終了日とし、C3が2022/1/1、E3が2022/12/31の場合、H列以降に12か月分の進捗率入力欄を作成したいと思っておりますので、下記のマクロを修正して、合計・出来高集計行の作成を開始する列をT列(項目列はS列)となるようにしたいのですが可能でしょうか?
下記マクロでは、合計・出来高集計行を開始する列はAU列(項目列はAT列)を固定にしておりますが、H列以降に変動する月数分の列を作成する事になりますので、行だけでなく、列も可変することになります。
また、構文でオートフィルするを実行するところあるのですが、現在は2年分(24か月分)オートフィルされるようになっておりますが、必要月数分オートフィルされるように書き換えたいです。
どのように修正すればいいか分からず、お助け頂きたいです。
よろしくお願い致します。
Sub Macro1()
Application.DisplayAlerts = False
Dim lRow As Long
lRow = Cells(Rows.Count, "B").End(xlUp).Row
With Range("AU" & lRow + 1)
.Formula = "=SUM(AU3:AU" & lRow & ")"
.AutoFill Destination:=.Resize(1, 26)
End With
With Range("BU" & lRow + 1)
.Formula = "=SUM(AU" & lRow + 1 & ":BT" & lRow + 1 & ")"
End With
With Range("AT" & lRow + 1)
.Formula = "月間出来高"
.Interior.ColorIndex = 3
.HorizontalAlignment = xlCenter
End With
With Range("AU" & lRow + 2)
.Formula = "=AU" & lRow + 1
End With
With Range("AV" & lRow + 2)
.Formula = "=AU" & lRow + 2 & "+" & "AV" & lRow + 1
.AutoFill Destination:=.Resize(1, 25)
End With
With Range("AT" & lRow + 2)
.Formula = "累積出来高"
.Interior.ColorIndex = 3
.HorizontalAlignment = xlCenter
End With
With Range("AU" & lRow + 3)
.Formula = "=AU" & lRow + 2 & "/" & "$BU$" & lRow + 1
.AutoFill Destination:=.Resize(1, 26)
End With
With Range("AT" & lRow + 3)
.Formula = "出来高%"
.Interior.ColorIndex = 3
.HorizontalAlignment = xlCenter
End With
Application.DisplayAlerts = True
End Sub
< 使用 Excel:Office365、使用 OS:Windows10 >
>Resize(1, 26) >Resize(1, 25) ↑ なんで違うのか知らないが、オートフィルするセル範囲を広げている。
こう言う事だよん(比較用)
Range("A1:A2").Value = 1 Range("A1").AutoFill Destination:=Range("A1").Resize(1, 2) Range("A2").AutoFill Destination:=Range("A2").Resize(1, 5)
(だよ〜んのおじさん) 2022/01/19(水) 16:56
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.