Домашняя страница Undo Do New Save Карта сайта Обратная связь Поиск по форуму
МИР MS EXCEL - Гость.xls

Вход

Регистрация

Напомнить пароль

 

= Мир MS Excel/Разметка листа - Мир MS Excel

  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_, DrMini  
Разметка листа
RAN Дата: Понедельник, 07.04.2014, 12:35 | Сообщение № 1
Группа: Друзья
Ранг: Экселист
Сообщений: 5660
Репутация: 1163 ±
Замечаний: 0% ±

2010
Мяв!
Нужно разметить 100 страниц, но размечается только 89, а дальше "subscript out of range".

There is a limit of 1026 horizontal page breaks per sheet.

[vba]
Код
Sub qqqq()
'    ActiveSheet.PageSetup.PrintArea = "$A$1:$C$3500"
Dim i&, ii&
Application.ScreenUpdating = False
For i = 1 To 100
If i = 88 Then Stop
ii = i * 36 - i + 1
     Set ActiveSheet.HPageBreaks(i).Location = Range("A" & i * 36 - i + 1)
     Next
End Sub
[/vba]


Быть или не быть, вот в чем загвоздка!
 
Ответить
СообщениеМяв!
Нужно разметить 100 страниц, но размечается только 89, а дальше "subscript out of range".

There is a limit of 1026 horizontal page breaks per sheet.

[vba]
Код
Sub qqqq()
'    ActiveSheet.PageSetup.PrintArea = "$A$1:$C$3500"
Dim i&, ii&
Application.ScreenUpdating = False
For i = 1 To 100
If i = 88 Then Stop
ii = i * 36 - i + 1
     Set ActiveSheet.HPageBreaks(i).Location = Range("A" & i * 36 - i + 1)
     Next
End Sub
[/vba]

Автор - RAN
Дата добавления - 07.04.2014 в 12:35
RAN Дата: Понедельник, 07.04.2014, 12:48 | Сообщение № 2
Группа: Друзья
Ранг: Экселист
Сообщений: 5660
Репутация: 1163 ±
Замечаний: 0% ±

2010
Отбой, разобрался.
Маловато страниц было.

[vba]
Код
On Error Resume Next
     Set ActiveSheet.HPageBreaks(i).Location = Range("A" & i * 36 - i + 1)
     If Err Then
     ActiveSheet.HPageBreaks.Add Before:=Range("A3500")
     Set ActiveSheet.HPageBreaks(i).Location = Range("A" & i * 36 - i + 1)
Err.Clear
End If
[/vba]


Быть или не быть, вот в чем загвоздка!
 
Ответить
СообщениеОтбой, разобрался.
Маловато страниц было.

[vba]
Код
On Error Resume Next
     Set ActiveSheet.HPageBreaks(i).Location = Range("A" & i * 36 - i + 1)
     If Err Then
     ActiveSheet.HPageBreaks.Add Before:=Range("A3500")
     Set ActiveSheet.HPageBreaks(i).Location = Range("A" & i * 36 - i + 1)
Err.Clear
End If
[/vba]

Автор - RAN
Дата добавления - 07.04.2014 в 12:48
ikki Дата: Понедельник, 07.04.2014, 12:56 | Сообщение № 3
Группа: Друзья
Ранг: Старожил
Сообщений: 1906
Репутация: 504 ±
Замечаний: 0% ±

Excel 2003, 2010
гм... насчёт "маловато" - не копал.
но получилось так:
[vba]
Код
Sub qqqq()
     Dim i&, ii&
     Application.ScreenUpdating = False
     ActiveSheet.ResetAllPageBreaks
     ActiveSheet.Parent.Windows(1).View = xlPageBreakPreview
     For i = 1 To 100
         'If i = 88 Then Stop
         Set ActiveSheet.HPageBreaks(i).Location = Range("A" & i * 36 - i + 1)
     Next
End Sub
[/vba]


помощь по Excel и VBA
ikki@fxmail.ru, icq 592842413, skype alex.ikki
 
Ответить
Сообщениегм... насчёт "маловато" - не копал.
но получилось так:
[vba]
Код
Sub qqqq()
     Dim i&, ii&
     Application.ScreenUpdating = False
     ActiveSheet.ResetAllPageBreaks
     ActiveSheet.Parent.Windows(1).View = xlPageBreakPreview
     For i = 1 To 100
         'If i = 88 Then Stop
         Set ActiveSheet.HPageBreaks(i).Location = Range("A" & i * 36 - i + 1)
     Next
End Sub
[/vba]

Автор - ikki
Дата добавления - 07.04.2014 в 12:56
RAN Дата: Понедельник, 07.04.2014, 14:29 | Сообщение № 4
Группа: Друзья
Ранг: Экселист
Сообщений: 5660
Репутация: 1163 ±
Замечаний: 0% ±

2010
Поскольку задача была разовая, воспользоваться последним кодом не удалось.
Но код интересный.


Быть или не быть, вот в чем загвоздка!
 
Ответить
СообщениеПоскольку задача была разовая, воспользоваться последним кодом не удалось.
Но код интересный.

Автор - RAN
Дата добавления - 07.04.2014 в 14:29
  • Страница 1 из 1
  • 1
Поиск:

Яндекс.Метрика Яндекс цитирования
© 2010-2025 · Дизайн: MichaelCH · Хостинг от uCoz · При использовании материалов сайта, ссылка на www.excelworld.ru обязательна!