ここから本文です

VBAについて教えてください。 下図のようなシートがそれぞれあります。 "Sheet...

osh********さん

2012/2/2716:20:19

VBAについて教えてください。

下図のようなシートがそれぞれあります。
"Sheet1"のパーツ番号と"Sheet2"のパーツ番号が一致したとき
"Sheet1"の入力日(///部分)に今日の日付を入れるマクロを作りたいのです。

"Sheet1"のデータはあらかじめ手入力し、蓄積していきます。
"Sheet2"のデータは日々新たなものに貼り代わります。
また、表は適当に作ったものですので実データの行列番号とは異なります。
ですので、どこを変えれば実データでも応用可能か教えていただけると助かります。

似たような投稿(データ一致で抽出等)を参考にやってみましたが、
どうもうまくいきませんでした。

よろしくお願いします。

Sheet1&quot,Sheet2&quot,パーツ番号,実データ,Sheet2,下図,'Sheet1

閲覧数:
400
回答数:
1
お礼:
50枚

違反報告

ベストアンサーに選ばれた回答

T.Mさん

2012/2/2716:54:01

Sheet2のシートのイベントを利用しています。下記のコードをSheet2に設定してください。
コメントを入れてありますが、不明な点は補足してください。
念のため、シートのイベントプロシージャの設定方法です。
①シート名(タブ)の上で右クリックします。
②コンテキストメニュー中の「コードの表示」を選択します。
③VBE画面になりますので空白な場所へ、
下記のコードをコピー、貼り付けます。×で終了です。

Private Sub Worksheet_Change(ByVal Target As Range)
'入力されたセル(Target)がSheet2のC列であるかをチェック
If Intersect(Target, Range("C:C")) Is Nothing Then Exit Sub
'Sheet1のA列の2行目から最終行まで検索するように設定
For i = 2 To Worksheets("Sheet1").Cells(Rows.Count, "A").End(xlUp).Row
If Target.Value = Worksheets("Sheet1").Cells(i, "A").Value Then
'Sheet1のA列で番号が一致したら、同じ行のD列に当日の日付を入れる
Worksheets("Sheet1").Cells(i, "D") = Date
End If
Next i
End Sub

この回答は投票によってベストアンサーに選ばれました!

みんなで作る知恵袋 悩みや疑問、なんでも気軽にきいちゃおう!

Q&Aをキーワードで検索:

Yahoo! JAPANは、回答に記載された内容の信ぴょう性、正確性を保証しておりません。
お客様自身の責任と判断で、ご利用ください。
本文はここまでです このページの先頭へ

「追加する」ボタンを押してください。

閉じる

※知恵コレクションに追加された質問は選択されたID/ニックネームのMy知恵袋で確認できます。

不適切な投稿でないことを報告しました。

閉じる