

シートBにその日のデータを入力し、そのデータをシートAに蓄積していきたいです。
手作業ならば、
1.入力されたシートBのその日のデータをコピー
2.シートAの同じ日付の行を探し、値のみペースト
とするのでしょうが、これを自動化したいです。
セル参照だと、毎日、同じ行にデータが上書きされていくため
無理っぽいし、マクロを使わないとできませんか?
コピーとペーストはできそうですけど、「同じ日付の行を探し」というところが難しそうだなぁと思いました。。。
すみませんが、よろしくお願いします。
シートA(データ蓄積用)
日付 データ
12/1 データ1
12/2
・
・
12/31
シートB(データ入力用)
日付 データ
12/2 データ2
↑日付が変われば、同じ行にデータを上書き
No.1ベストアンサー
- 回答日時:
シート名「シートB」の シート名タブを右クリックして「コードの表示」
出てきたVBE画面にコピペします。
シートB の B2セルに書き込みをするとシート名「シートA」に書き込みをします。
Private Sub Worksheet_Change(ByVal Target As Excel.Range)
Dim r, tr As Range
Set tr = Target.Cells(1, 1)
If tr.Address = "$B$2" Then
With Worksheets("シートA")
Set r = .Range("A:A").Find(tr.Offset(0, -1).Value, _
.Range("A65536"), xlFormulas, xlWhole)
If r Is Nothing Then
.Range("A65536").End(xlUp).Offset(1, 0).Value = tr.Offset(0, -1).Text
.Range("B65536").End(xlUp).Offset(1, 0).Value = tr.Value
Else
r.Offset(0, 1).Value = tr.Value
End If
End With
End If
End Sub
ありがとうございます。
Findを使って該当セルを探すのですね。
流れはわかりました。
もうちょっと勉強してみます。
今回は早速のご回答ありがとうございました。
No.2
- 回答日時:
ブックを保存する前に当日のデータ(データ2)をデータ蓄積用シートに書き込むようにしました。
マクロ中のシート名は実際の名前に変更してください(質問にあるとおりのシートA、シートBとしています)。また当日分のデータが書かれているセルアドレスがB2以外であれば、これも3行目を変更してください
なお、データ蓄積用シートの日付はA列、データはB列としてマクロを書きました。違うのであれば補足してください。
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
Dim RES
Const Adr As String = "B2" '← 当日のデータのセルアドレス
With Worksheets("シートB")
RES = Application.Match(.Range(Adr).Offset(0, -1).Value * 1, _
Worksheets("シートA").Range("A1:A10000"), 0)
If IsError(RES) Then
MsgBox ("合致する日付が見つからないため" & Chr(13) & _
"本日のデータは書き込みできません")
Else
Worksheets("シートA").Cells(RES, "B") = .Range(Adr).Value
End If
End With
End Sub
マクロはALT+F11でVBE画面を開き、「VBAProjectエクスプローラ」の「ThisWorkBookを右クリック」→「コードの表示」で表示される画面にペーストして下さい。ブック保存時に自動実行されます。
丁寧なご回答ありがとうございました。
No.1さんのFindに対し、Matchを使うのですね。
参考にさせていただきます。
ありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) 複数セルデータを別シートの単一セルにコピーしたい。(詳細をご参照ください) 1 2022/12/14 15:08
- Excel(エクセル) Excelでのデータ管理 6 2022/12/24 09:33
- Visual Basic(VBA) Excel vbaについて知恵もしくは、コード教えて下さいm(__)m ① 表にあるデータをコピー、 2 2022/09/01 23:57
- Excel(エクセル) Excelマクロの差分抽出のコードを教えていただきたいです。 2 2023/03/14 11:40
- Excel(エクセル) 【エクセル」 特定のセルで条件抽出した列を、別シートに上から詰めて表示したい。 8 2022/04/08 16:00
- Visual Basic(VBA) エクセルのマクロについて教えてください。 1 2023/08/03 11:27
- その他(Microsoft Office) Excelで総数量を変動させたい 2 2022/11/04 23:49
- Excel(エクセル) VBA ふたつの同じ様式シートのセルをコピーしたい 2 2023/03/08 15:28
- Visual Basic(VBA) vbaエクセルマクロ RemoveDuplicatesについて RemoveDuplicatesを使 3 2023/02/28 01:13
- Visual Basic(VBA) エクセルのマクロについて教えてください。 1 2023/08/03 12:30
このQ&Aを見た人はこんなQ&Aも見ています
-
昔のあなたへのアドバイス
過去のあなたへ一度だけアドバイスを送れる電話があったとします。
-
【お題】甲子園での思い出の残し方
【お題】「球場の砂を持って帰る」はもう古いと思った高校球児が、甲子園で負けた際に、思い出に残そうと思って行ったこと
-
性格いい人が優勝
できるだけ性格いい人になって回答をお願いします。
-
はじめての旅行はどこに行きましたか?
記憶の中で1番昔の旅行先とエピソードを教えてください。
-
あなたが好きな本屋さんを教えてください
どのくらいの規模間で、どのような本が並んでいるか、どのような雰囲気なのかなどなど...
-
エクセルで入力シートから別シートに蓄積方法について
Excel(エクセル)
-
Excelで日付変更ごとに、自動的にデータを転記
Excel(エクセル)
-
毎日の日計を別シートに自動で更新、反映させたい
PowerPoint(パワーポイント)
-
-
4
エクセルを利用して、日計と累計を毎日作成する方法
Excel(エクセル)
-
5
エクセルで「入力」と「蓄積」の簡単なデータベース
Excel(エクセル)
-
6
Excelで日報から月報へとデータ参照をさせたい。
Excel(エクセル)
-
7
エクセル マクロを使って日々の実績を累計したい
Excel(エクセル)
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・昔のあなたへのアドバイス
- ・字面がカッコいい英単語
- ・許せない心理テスト
- ・歩いた自慢大会
- ・「I love you」 をかっこよく翻訳してみてください
- ・ゆるやかでぃべーと タイムマシンを破壊すべきか。
- ・はじめての旅行はどこに行きましたか?
- ・準・究極の選択
- ・この人頭いいなと思ったエピソード
- ・「それ、メッセージ花火でわざわざ伝えること?」
- ・ゆるやかでぃべーと すべての高校生はアルバイトをするべきだ。
- ・【お題】甲子園での思い出の残し方
- ・【お題】動物のキャッチフレーズ
- ・人生で一番思い出に残ってる靴
- ・これ何て呼びますか Part2
- ・スタッフと宿泊客が全員斜め上を行くホテルのレビュー
- ・あなたが好きな本屋さんを教えてください
- ・かっこよく答えてください!!
- ・一回も披露したことのない豆知識
- ・ショボ短歌会
- ・いちばん失敗した人決定戦
- ・性格悪い人が優勝
- ・最速怪談選手権
- ・限定しりとり
- ・性格いい人が優勝
- ・これ何て呼びますか
- ・チョコミントアイス
- ・単二電池
- ・初めて自分の家と他人の家が違う、と意識した時
- ・「これはヤバかったな」という遅刻エピソード
- ・ゴリラ向け動画サイト「ウホウホ動画」にありがちなこと
- ・泣きながら食べたご飯の思い出
- ・一番好きなみそ汁の具材は?
- ・人生で一番お金がなかったとき
- ・カラオケの鉄板ソング
- ・自分用のお土産
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
エクセルについてどう関数を使...
-
マクロ・VBAで、当該ファイルの...
-
エクセルで二つのブックの違い...
-
エクセルでカウントする
-
エクセルのファイルのコピーを...
-
【マクロ、画像あり】A表かB表...
-
【マクロ】コードを少しでも、...
-
【マクロ 画像あり】Exact関数...
-
Excelファイルを開くと私だけVA...
-
空白処理を空白に
-
Excel 日付の表示が直せません...
-
エクセルの循環参照を削除したい!
-
スプレッドシート(Excelでも良...
-
列挿入をVBAで
-
エクセルでラベルシールを印刷...
-
名前の間のスペースをそろえる...
-
空白のはずがSUBTOTAL関数でカ...
-
【マクロ 画像あり】セル範囲の...
-
エクセルの数式について教えて...
-
エクセルで教えてください。 例...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
エクセルの設定、下へスクロー...
-
別のシートの指定列の最終行を...
-
【マクロ】シート追加時に同じ...
-
Excelファイルを開くと私だけVA...
-
Excelの関数を教えて下さい。
-
マクロを実行すると、セル範囲...
-
エクセルの設定、特定の列以降...
-
Excelの条件付書式について教え...
-
Excelで作成した出欠表から日付...
-
Excelでの文字入力について
-
Excel 日付の表示が直せません...
-
Excel関数の解決方法
-
システムファイルについて
-
自動的に日付入力 応用
-
UNIQUE関数の代用
-
エクセル内に読み込んが画像の...
-
勤務外時間を出す表が作りたい
-
Excel 偶数月の15日(土日祝...
-
【マクロ】Call関数で呼び出し...
-
【マクロ】1回目の実行後、2...
おすすめ情報