dポイントプレゼントキャンペーン実施中!

2点、お知恵を頂ければと思います。


A_BookからB_Bookへ月ごとに集計したデータを様式に転記するマクロを
組んでいます。。(月分を様式に毎月転記)
月ごとに表示セルのデータ(A_Bookの「2021年8月」など)の転記元指定月を
転記先の指定セルへ"2021年8月1日~8月31日"という様に
表示することは出来ますか?


B12からB21のセルの値が空欄の場合、
M12からV21の様式記入済の値をクリアする(数式は残す)
事は可能でしょうか?

ご教示のほどよろしくお願いいたします。

質問者からの補足コメント


  • A_Book(集計データ)
    入力セルはK3
    入力は「2021/8/1」※8月の例
    表示形式:日付「2021年8月」
    ※他集計データの転記があります。
    ↓↓↓
    B_Book
    セルL5へ
    A_Bookの様式に集計データの他、期間セルK3へ転記
    表示を「2021年8月1日~2021年8月31日」


    B_Book(様式)
    A_BooKからB_BooKへ転記した際、B_Bookの
    B12からB21のセルの値がA_Bookからのデータ転記が空欄の場合、
    M12からV21の記入済の値をクリアする(数式は残す)

      補足日時:2021/08/17 15:43

A 回答 (3件)

こんにちは。



No.2の方が、せっかくマクロをアップされているので、それを元にマクロを
 質問者さんが作成されては如何でしょうか?
そこで、作成したものをアップされて、動作(結果)が希望のものにならない、
又はエラーが出る様でしたら、その部分を再度質問されるのが良いかと思います。
    • good
    • 0
この回答へのお礼

参考にさせて頂きます。
ありがとうございました。

お礼日時:2021/08/18 08:26

こんにちは



ご質問の内容がいまいちはっきりとはわからないので、勝手に解釈した例をご参考までに・・・

①元の値は文字列と仮定。
 その月の最初と最後の期間を文字列にする例
 Const date0 = "2021年8月"
 Const f = "yyyy年m月d日"

 d = DateValue(date0)
 s = Format(d, f) & "~" & _
  Format(DateSerial(Year(d), Month(d) + 1, 1) - 1, f)
 MsgBox s ' → 2021年8月1日~2021年8月31日


②B12:B21全部が空欄の場にM12:V21全部をクリアするのか、行ごとに処理するのかわからないので、ひとまず行ごとと仮定して12行の場合の例
 If Range("B12") = "" Then
  For Each c In Range("M12:V12")
   If Not c.HasFormula Then c.ClearContents
  Next c
 End If


※ 参考例なので、元の値のチェックなどは省略しています。
何かの、ご参考にでもなれば・・・
    • good
    • 0

おはようございます。



可能だとは思います。

"2021年8月1日~8月31日"の記載は、1つのセルにという事でしょうか?

年月日の表示形式
https://www.sejuku.net/blog/33422

月末を調べる方法。
https://xtech.nikkei.com/it/atcl/column/15/09010 …

セルの範囲が空白か?
https://www.relief.jp/docs/excel-vba-check-if-ra …

上記が参考になるでしょうか?
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!