Я недавно разделил свой код на две секции, чтобы остановить автоматический ввод даты, так как в понедельник нам нужно сделать данные за 3 дня
Все, что я сделал, это добавил новую подпрограмму и переопределилпеременные - теперь я не могу удалить именованный диапазон
Мой код:
Option Explicit
Sub Import()
Dim ws As Worksheet, lastRowC As Long
Set ws = Worksheets("Report")
lastRowC = ws.Cells(ws.Rows.Count, 3).End(xlUp).Row + 1 ' bottom populated cell of Column "C", plus 1
With ws.QueryTables.Add(Connection:= _
"TEXT;N:\Operations\001 Daily Management\Cemex\FMSQRY.CSV", Destination:= _
ws.Cells(lastRowC, 3))
.Name = "FMSQRY"
' etc
' etc
.Refresh BackgroundQuery:=False
End With
With ActiveWorkbook
.Connections("FMSQRY").Delete
.Names("FMSQRY").Delete
End With
End Sub
Sub TodaysDate()
Dim ws As Worksheet, lastRowC As Long, lastRowH As Long
Set ws = Worksheets("Report")
lastRowH = ws.Cells(ws.Rows.Count, 8).End(xlUp).Row + 1 ' bottom populated cell of Column "H", plus 1
lastRowC = ws.Cells(ws.Rows.Count, 3).End(xlUp).Row ' bottom populated cell of Column "C"
With ws.Range(ws.Cells(lastRowH, 8), ws.Cells(lastRowC, 8))
.FormulaR1C1 = "=TODAY()"
.Value = .Value
End With
End Sub
Так что ничего общего с именованным диапазоном фактически не коснулось
.Name = "FMSQRY"
называет мой диапазон, но когда .Names("FMSQRY").Delete
приходит в себя, я получаю 1004 Ошибка
![Named Range](https://i.stack.imgur.com/FqS6S.png)
![Debug](https://i.stack.imgur.com/ufeQP.png)
ОТВЕТ:
With ActiveWorkbook
.Connections("FMSQRY").Delete
With ws
.Names("FMSQRY").Delete
End With
End With