У мене є цей код
Sub fill()
Dim rg As Range
Set rg = Range("a1")
Set rg = Range(rg, Cells(ActiveSheet.UsedRange.Row + ActiveSheet.UsedRange.Rows.Count - 1, rg.Column))
On Error Resume Next
Set rg = rg.SpecialCells(xlCellTypeBlanks)
On Error GoTo 0
If Not rg Is Nothing Then
rg.Value = "1/1/2020"
End If
End Sub
але він не працює так, як я хотів.
Мені потрібно шукати у всьому діапазоні аркушів Excel (a1: bj1223) і перевіряти всі клітинки типу "дата". коли він знаходить клітинку, яка є "типом дати", і вона порожня, мені потрібно додати значення "1/1/2020" у цій комірці.
Дякую
Відповіді:
3 для відповіді № 1Це те, що ви намагаєтеся? Спочатку слід шукати порожні клітинки, а потім перевіряти, чи кожна клітинка цього діапазону має певний формат "dd/mm/yyyy"
Змініть, як це можливо.
Sub Sample()
Dim rng As Range, aCell As Range
Dim blnkCells As Range
Set rng = ThisWorkbook.Sheets("Sheet1").Range("A1:BJ1223")
On Error Resume Next
Set blnkCells = rng.SpecialCells(xlCellTypeBlanks)
On Error GoTo 0
If Not blnkCells Is Nothing Then
For Each aCell In blnkCells
If aCell.NumberFormat = "dd/mm/yyyy" Then aCell.Value = "1/1/2020"
Next aCell
End If
End Sub