excel如何通过VBA按照日期自动赋值

2025-04-24 12:42:46
推荐回答(2个)
回答1:

这样子写一下就可以了:

Sub test1()
    Dim x As Integer
    For x = 1 To Range("ab1").End(xlToRight).Column
        If Cells(1, x).Text = Application.Text(Now(), "yyyy/m/d") Then
            Range("b2:b" & Range("b10000").End(3).Row).Copy Cells(2, x)
        End If
    Next x
End Sub

回答2:

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim tr, tc, k
tr = Target.Row
tc = Target.Column
   If tr >= 2 And tc = 2 Then
    Y = Date
Set r1 = Rows(1).Find(Y, , , 1)
If Not r1 Is Nothing Then
k = r1.Column
    Cells(tr, tc + k - 2) = Cells(tr, tc)
    End If
    End If
   End Sub