AI,プログラミング

初めての仕事でのマクロ作成【予算実績があれば実績、なければ予定を転記】

先日仕事で初めてマクロを組んでみました。シンプルなものですが無駄なコピペが減りかなり助かりました。

 

予算実績があれば実績、なければ予定を転記

マクロでやりたいこと

f:id:mu-sansan:20191213203321j:plain

入力された予算から実績があれば実績を転記。実績がなければ予定を転記となります。今までは、一つ一つ実績があるのか確認しながらコピペしていました。

 

マクロを組む考え方

その月の予定と実績の数字を比べてみて、

両方に数字があるならば→実績

実績が0ならば→予定

と条件を組むことになります。

 

組んだマクロ

Sub 実績処理()

Dim i As Long, z As Long, lastcolumn As Long, t As Long

'コピー元行の指定
i = 5

'コピー先行の指定
z = i + 6

'コピー元列の数の指定(数字が入っている最後の列番号)
lastcolumn = Cells(10, Columns.Count).End(xlToLeft).Column

t = 2

For k = 2 To lastcolumn
'実績、予定ともに数字がある場合は実績を反映
If Cells(i, t).Value <> 0 And Cells(i, t + 1).Value <> 0 Then
Cells(z, k).Value = Cells(i, t + 1).Value

'実績がない場合は予定を反映
ElseIf Cells(i, t).Value <> 0 And Cells(i, t + 1).Value = 0 Then
Cells(z, k).Value = Cells(i, t).Value

'それ以外は0を返す
Else
Cells(z, k).Value = 0
End If

'次の月の実績に移動
t = t + 2
Next k

End Sub

もしこうしたほうがいいよ!というアドバイスがあればぜひお願いします!

 

マクロと組めることのメリットはこちらを!

おすすめ
初めてのプログラミング言語としてのVBA【Excelマクロを使ってヒーローになろう!】

続きを見る

 

スポンサーリンク

  • この記事を書いた人
だんでぃー

だんでぃー

アラフォー 薬学部、大学院卒業。薬学修士。薬剤師。 某大手製薬会社に勤務。 TOEIC900点を12年かけて取得。 英検準1級 ゴルフJGA/USGAハンデ10.4 日本ディープラーニング協会G検定合格

-AI,プログラミング

Copyright© だんでぃーの副業らいふ , 2020 All Rights Reserved Powered by AFFINGER5.