Поиск  Пользователи  Правила 
Закрыть
Логин:
Пароль:
Забыли свой пароль?
Регистрация
Войти
 
Страницы: 1
RSS
Обновление № страницы в ячейке, которая находится в сквозных строках., Обновление № страницы в ячейке, которая находится в сквозных строках.
 
Добрый день, уважаемые дамы и господа.

Подскажите, пожалуйста, в сквозных строках необходимо сделать в ячейке обновляющейся номер страницы.

Нашёл код:


Function page(x As Range) As Long
Dim nHorBr As Long, nVerBr As Long, iHor As Long, iVer As Long
Application.Volatile                'пересчитывать при пересчете листа (в т.ч. по F9)
With x.Parent                       'лист
   nHorBr = .HPageBreaks.Count     'число гориз. разрывов, число страниц по вертикали nHorBr+1
   nVerBr = .VPageBreaks.Count     'число верт. разрывов, число страниц по горизонтали nVerBr+1
   
   '************************ ! Внимание ! **********************************************
   'В Excel-2000 обнаружен глюк: если число вертикальных разрывов >3,
   'то свойство .VPageBreaks.Count возвращает число на 1 больше, чем должно быть.
   'Проверьте, требуется ли на вашей системе коррекция числа вертикальных разрывов.
   'Для отключения коррекции закомментируйте следующую строку.
   If nVerBr > 3 Then nVerBr = nVerBr - 1

   For iHor = 1 To nHorBr
       If x.Row < x.Parent.HPageBreaks(iHor).Location.Row Then Exit For
   Next
   For iVer = 1 To nVerBr
       If x.Column < x.Parent.VPageBreaks(iVer).Location.Column Then Exit For
   Next
   If .PageSetup.Order = xlOverThenDown Then
       page = (iHor - 1) * (nVerBr + 1) + iVer
   Else
       page = (iVer - 1) * (nHorBr + 1) + iHor
   End If
End With
End Function



Но,
в качестве аргумента функции, указывется адрес ячейки, которая остаётся
на первой странице, таким образом функция показывает только № первой
страницы.

Как можно сделать динамически обновляемый номер страницы в ячейке, которая находится в сквозных строках?
Изменено: Андрей Белый - 30 Июн 2020 15:26:10
Страницы: 1
Читают тему (гостей: 1)
Наверх