ここから本文です

以下URLにて質問させて頂いたものです。 https://detail.chiebukuro.yahoo.co.jp/...

hay********さん

2017/8/1513:37:50

以下URLにて質問させて頂いたものです。
https://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q101779768...
応用し、別のファイルでF列セルに文字を入力するとL列セルに今日の日付を自

動入力させるようマクロを考えましたが、うまく入力されません。
また、F列セルの文字を消すとL列セルに自動入力された日付も消え、F列の入力済みのセルを編集してもはL列の日付が更新されないようにしたいと考えております。
以下のマクロを入力したのですが、G列より右に文字が入力された状態ですと日付が自動入力されません。

Private Sub Worksheet_Change(ByVal Target As Range)
Dim r As Range
If Intersect(Range("F:F"), Target) Is Nothing Then Exit Sub
For Each r In Target
If WorksheetFunction.CountA(r.Resize(6, 12)) = 2 Then Exit Sub
If WorksheetFunction.CountA(r.Resize(6, 12)) = 1 Then
If r.Value = "" Then r.Offset(, 6) = ""
If r.Value <> "" Then r.Offset(, 6) = Date
End If
Next
End Sub

どなたかご教示頂ければ幸いです。
よろしくお願い致します。

r.Resize,Then r.Offset,If r.Value,2 Then Exit Sub,Dim r As Range,r.Offset,hayannto

閲覧数:
54
回答数:
2

違反報告

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

vcx********さん

2017/8/1514:42:44

hayanntoさん

こうかな?

If WorksheetFunction.CountA(r.Resize(6, 12)) = 2 Then Exit Sub
If WorksheetFunction.CountA(r.Resize(6, 12)) = 1 Then



If WorksheetFunction.CountA(r, r.Offset(0, 6)) = 2 Then Exit Sub
If WorksheetFunction.CountA(r, r.Offset(0, 6)) = 1 Then

質問した人からのコメント

2017/8/15 16:40:11

ありがとうございました。
解決できました。活用させて頂きます。

ベストアンサー以外の回答

1〜1件/1件中

hmm********さん

2017/8/1514:34:32

r.Resize(6, 12)だと入力されたセルを左上として
6行12列のセル範囲になりますよ
入力されたセルの6セル分右へ移動したセルは
r.Offset(,6)です

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

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

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

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

閉じる

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

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

閉じる