在EXCEL VBA写代码 要求是:比如我在A列输入随便内容,B列就自动填入输入内容时的日期 求excel vba代码,当A列输入与上面单元格内容有重复时...
EXCEL\u4e2d\u5982\u4f55\u7528VBA\u5b9e\u73b0\u5728B\u5217\u8f93\u5165\u5b57\u7b26\u7684\u65f6\u5019 \u81ea\u52a8\u5728A\u5217\u4e2d\u63d2\u5165\u65f6\u95f4\u548c\u65e5\u671f?Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column = 2 And Target "" Then
Target.Offset(0, -1) = Now
End If
End Sub
\u4f60\u7528\u8fd9\u4e2a\u770b\u770b
\u6211\u7528\u7684\u662f\u4e0d\u7b49\u4e8e\u7a7a \u5c31\u662f\u6709\u6570\u636e\u65f6\u5019\u6267\u884c
Sub s()
Set d = CreateObject("scripting.dictionary")
c = InputBox("\u8bf7\u8f93\u5165\u5217\u6807\uff1a")
n = Cells(Rows.Count, c).End(3).Row
For i = 1 To n
a = Cells(i, c).Text
If a "" Then
If d.exists(a) Then
MsgBox c & "\u5217\u5185\u5bb9\u6709\u91cd\u590d\uff01"
Exit Sub
Else
d.Add a, ""
End If
End If
Next
MsgBox c & "\u5217\u5185\u5bb9\u65e0\u91cd\u590d\uff01"
End Sub
Private Sub Worksheet_Change(ByVal Target As Range)
Dim iR&, x&
If Target.Column = 1 Or Target.Column = 3 Then
iR = Target.Row
x = Target.Column
Cells(iR, x + 1) = FormatDateTime(Now(), 0)
End If
End Sub
或者用
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column = 1 Or Target.Column = 3 Then
Cells(Target.Row, Target.Column + 1) = FormatDateTime(Now(), 0)
End If
End Sub
不明白怎么用可HI我。
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column = 1 Then
Dim xx As String
xx = Target.Row
Range("B" + xx) = Date
End If
End Sub
以上代码实现了在A列写入内容,在B列显示,写A列的时间,C列写内容,D列写入时间,以此类推
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
If Target.Count = 1 Then
If Target.Column = 1 Then Target.Offset(, 1) = Now
End If
End Sub
按ALT +F11 进入VBE界面
将上面代码放入 thisworkbook 内即可
Private Sub Worksheet_Change(ByVal Target As Range)
Dim c As Range
For Each c In Target
If c.Column = 1 Or c.Column = 3 Then
If c.Value = "" Then
c.Offset(0, 1).Value = ""
Else
c.Offset(0, 1).Value = Now
End If
End If
Next
End Sub
---------
按ALT+F11,打开代码窗口,将上面的代码复制入其中,返回sheet表,就可以实现了
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column = 1 And Target.Count = 1 Then
Target.Offset(0, 1).Value = Date
End If
End Sub
扩展阅读:vba编程必背50个程序 ... excel图片一键排列整齐 ... vba编程代码对照表 ... 录入vba必背代码大全 ... 初学vba编程100个代码 ... vba代码生成器 ... ppt vba编程代码大全 ... excel vba打印代码大全 ... excel vba录入代码大全 ...