我是VBA新手,仍在學習。我試圖完成的事情似乎很容易,但有困難。我需要編寫一個宏,當某個日期(任何日期)輸入到特定列的單元格中時,它會自動隱藏一行。當特定列單元格中輸入日期時Excel宏自動隱藏行
E.g.數據記錄在列A:F中。當「運送」日期輸入到G2中時,第2行自動隱藏。
任何幫助將不勝感激。
謝謝。
MCJ
我是VBA新手,仍在學習。我試圖完成的事情似乎很容易,但有困難。我需要編寫一個宏,當某個日期(任何日期)輸入到特定列的單元格中時,它會自動隱藏一行。當特定列單元格中輸入日期時Excel宏自動隱藏行
E.g.數據記錄在列A:F中。當「運送」日期輸入到G2中時,第2行自動隱藏。
任何幫助將不勝感激。
謝謝。
MCJ
下面的VBA代碼將隱藏相關聯的行,如果在列「G」的小區零和當前日期之間編輯和改變爲日期(數目):
Option Explicit
Private lastSelectedCell As Range
Private Sub Worksheet_Activate()
Set lastSelectedCell = Range("A1")
End Sub
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
' If the most recently selected cell was in column 6 ('G')
If (lastSelectedCell.Column = 6) Then
' If the previously selected cell was a date on or before today
If ((lastSelectedCell.Value <= Date) And (lastSelectedCell.Value > 0)) Then
' Hide the entire row
Rows(lastSelectedCell.Row).EntireRow.Hidden = True
End If
End If
Set lastSelectedCell = Target
End Sub
感謝您的快速響應。但它不起作用。說:「如果(lastSelectedCell.Column = 6)然後」= <對象變量或塊變量未設置「我再次在這個新的,所以任何幫助非常感謝。 –
@MCJ'Worksheet_Activate()'方法需要運行以初始化'lastSelectedCell'變量。嘗試保存並重新打開'.xlsm'文件,錯誤應該消失。 – VirtualMichael
燦你請添加一個代碼示例? –