Ну, собственно, надеюсь, вопрос из темы понятен.
Как средствами VBA проверить, присвоено ли данной ячейке какое-либо имя?
18.03.2013 11:26:14
|
|
|
|
18.03.2013 12:09:54
Способ один: только перебором всех имен в цикле,
и проверкой, входит ли заданная ячейка в каждый именованный диапазон. Пример такого макроса: |
|
|
|
18.03.2013 12:54:28
Ясно, спасибо.
Как во многих случаях, опять консервы экскаватором открывать ![]() |
|
|
|
18.03.2013 12:54:34
для такого имени листа, как "100" (без кавычек), Excel тоже добавляет одинарные кавычки к ссылке.
фрилансер Excel, VBA - контакты в
"Совершенствоваться не обязательно. Выживание — дело добровольное." Э.Деминг |
|||
|
|
18.03.2013 12:57:58
"Входит" - это одно, а проверить, имеет ли диапазон имя, можно и без перебора:
|
|||
|
|
18.03.2013 13:01:57
Попробуйте использовать такое:
Private Sub Worksheet_Activate() Dim f As Name Dim Count As Integer For Each f In ActiveWorkbook.Names 'MsgBox f If Not f.Visible = False Or Not f.Visible = True Then Count = Count + 1 Cells(20 + Count, 3).Value = f ' f.Delete End If Next f MsgBox "скрытые имена в количестве " & vbCr & vbTab & Count & " шт" & vbCr & vbTab & " удалены" End Sub |
|
|
|
18.03.2013 13:05:48
|
|||
|
|
18.03.2013 13:06:07
буду знать, до этого не спотыкался ![]() |
|||
|
|
18.03.2013 13:09:17
в случае, если нет имени, вернет пустую строку. ps о... Алексей уже написал, оказывается ![]() ![]()
Изменено:
фрилансер Excel, VBA - контакты в
"Совершенствоваться не обязательно. Выживание — дело добровольное." Э.Деминг |
||||
|
|
|||
Читают тему