powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Label над HPageBreaks
23 сообщений из 23, страница 1 из 1
Label над HPageBreaks
    #33492987
timtim
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Подскажите, пожалуйста, как можно реализовать такую задачу:
Надо расположить Label на листе Excel так чтобы он находился
над вторым HPageBreaks.
...
Рейтинг: 0 / 0
Label над HPageBreaks
    #33493052
White Owl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
1.
2.
3.
4.
Dim y as Integer, s as Shape
y = ActiveSheet.HPageBreaks( 2 ).Location.Offset(- 1 ,  0 ).Top
Set s = ActiveSheet.AddLabel(msoTextOrientationHorizontal,  10 , y,  20 ,  20 )
s.TextFrame.AutoSize = True
s.TextFrame.Characters.Text = "y=" & y
...
Рейтинг: 0 / 0
Label над HPageBreaks
    #33493063
timtim
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Спасибо, но чето нехочет работать!
...
Рейтинг: 0 / 0
Label над HPageBreaks
    #33493114
White Owl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ну раз не хочет, значит оно тебе не нужно. Когда оно тебе станет нужно, тогда ты расскажешь нам как именно оно "не хочет работать"
...
Рейтинг: 0 / 0
Label над HPageBreaks
    #33493252
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
    Dim y As Integer
    Dim s As Shape
    
    y = ActiveSheet.HPageBreaks( 2 ).Location.Offset(- 1 ,  0 ).Top
    
    Set s = ActiveSheet.Shapes.AddLabel(msoTextOrientationVertical, _
       10 , y,  20 ,  20 )
        
    s.TextFrame.AutoSize = True
    s.TextFrame.Characters.Text = "y=" & y
...
Рейтинг: 0 / 0
Label над HPageBreaks
    #33493281
timtim
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Мне это нужно и даже очень, а работать нехочет так:
Run-time error '9'. Subscript out of range.
...
Рейтинг: 0 / 0
Label над HPageBreaks
    #33493304
Попробую угадать.

Если на этой строке

Код: plaintext
    y = ActiveSheet.HPageBreaks( 2 ).Location.Offset(- 1 ,  0 ).Top

Значит у тебя нет второго HPageBreaks.
...
Рейтинг: 0 / 0
Label над HPageBreaks
    #33493339
timtim
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Да именно так и получилось.
А как сделать чтобы не добавлять Label, а передвигать уже имеющийся Label на нужную позицию типа IncrementTop?
...
Рейтинг: 0 / 0
Label над HPageBreaks
    #33493345
AleksMed
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
timtimМне это нужно и даже очень, а работать нехочет так:
Run-time error '9'. Subscript out of range.

Может я и ошибаюсь, но пока ты не "передернишь" лист начало-конец-начало, для того чтобы Excel расставил разрывы страниц, второй HPageBreak и не найдется.
...
Рейтинг: 0 / 0
Label над HPageBreaks
    #33493366
timtim
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Лист "передергиваю" так прописываю букву в ячейку примерно на 3 печатном листе, а потом удаляю.
Как двигать Label чтобы он встал в позицию Y
...
Рейтинг: 0 / 0
Label над HPageBreaks
    #33494370
timtim
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Сделал так:
Private Sub Label1_Click()
Dim y As Integer
Application.ScreenUpdating = False
Range("A555").Value = "WWW"
y = ActiveSheet.HPageBreaks(2).Location.Offset(-1, 0).Top
Label1.Left = 0
Label1.Top = y
Range("A555").Value = ""
End Sub
Типа при клике на Label он перемещаетя в позицию "y" (мне вообше нужно типа колонтитула, но только на второй печатаемой странице листа). Всего текста на Листе на один печатный двустороний лист.
Как обойти проблему если на третей печатаемой странице нет данных(а их там недолжно быть) выдается ошибка HPageBreaks(2)-ненайден. Не хотелось-бы делать Range("A555").Value = "WWW", а потом Range("A555").Value = "".
...
Рейтинг: 0 / 0
Label над HPageBreaks
    #33495007
White Owl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
timtimКак обойти проблему если на третей печатаемой странице нет данных(а их там недолжно быть) выдается ошибка HPageBreaks(2)-ненайден. Не хотелось-бы делать Range("A555").Value = "WWW", а потом Range("A555").Value = "".
А прийдется.
Или делай фиктивные данные на третьей странице или используй вместо Экселя что-нибудь другое.
...
Рейтинг: 0 / 0
Label над HPageBreaks
    #33497989
timtim
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Еще вопрос в догонку.
Можно ли как-то сделать процедуру типа
Sub HPageBreaks_изменилось_Location (...as integer,.....) чтобы процедура запускалась при изменении HPageBreaks.Location?
Подскажите пожалуйста.
...
Рейтинг: 0 / 0
Label над HPageBreaks
    #33498039
Фотография HandKot
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
а колонтитулы не подходят?
...
Рейтинг: 0 / 0
Label над HPageBreaks
    #33498052
timtim
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Колонтитулы это то что мне нужно НО они (колонтитулы) печатаются на каждой печатаемой странице а мне надо только на 2 странице.(см. выше)
...
Рейтинг: 0 / 0
Label над HPageBreaks
    #33498230
White Owl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
timtimМожно ли как-то сделать процедуру типа
Sub HPageBreaks_изменилось_Location (...as integer,.....) чтобы процедура запускалась при изменении HPageBreaks.Location?
Нет, нельзя. Зато можно перехватить событие Workbook_BeforePrint и в нем передвигать свои метки куда угодно.
...
Рейтинг: 0 / 0
Label над HPageBreaks
    #33498281
timtim
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Спасибо за совет Workbook_BeforePrint я использую, хочется сделать так чтобы пользователь мог передвигать Label в процессе разработки документа(книги Excel), но Label_MouseMove и Worksheet_SelectionChange мне кажется мешают нормальной работе в Книге. Можно ли как то изе....ся?
...
Рейтинг: 0 / 0
Label над HPageBreaks
    #33498317
White Owl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Можно. Уволить этого программиста и нанять другого.
...
Рейтинг: 0 / 0
Label над HPageBreaks
    #33498361
timtim
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Это не программист, а человек всего лишь желающий облегчить жизнь себе и окружающим.
Тут мысль пришла.
Может быть (скорее всего, так и надо сделать) отслеживать размер от ячейки А1 до HPageBreaks(2). Только пока не знаю как.
Если Вам не в лом дайте пожалуйста дельный совет.
Тут файл приложен, посмотрите, может уже больше сделать по существу нельзя.
...
Рейтинг: 0 / 0
Label над HPageBreaks
    #33498395
timtim
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
.........может быть можно как-то объегорить Excel и сделать как в Word-е на каждой странице свой нижний колонтитул..........
...
Рейтинг: 0 / 0
Label над HPageBreaks
    #33498446
White Owl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Облегчить жизнь себе и окружающим таким образом невозможно. Можно только осложнить.

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

Когда ты уволишься и на твое место прийдет новый человек - разбираясь с этой книгой он тебя десять раз проклянет.
...
Рейтинг: 0 / 0
Label над HPageBreaks
    #33498472
timtim
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Чё то ты злостный упырь какой-то прям (невозможно, осложнить, уволишься, проклянет). По делу лучше что ни будь.
...
Рейтинг: 0 / 0
Label над HPageBreaks
    #33499484
timtim
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Страницы перехватываю, колонтитулы подставляю, а как это(перехваченное) вывести на двустороннюю печать?
...
Рейтинг: 0 / 0
23 сообщений из 23, страница 1 из 1
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Label над HPageBreaks
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]