![]() |
1. Пользуйтесь тегами кода. - [code] ... [/code]
2. Точно указывайте язык, название и версию компилятора (интерпретатора).
3. Название темы должно быть информативным.
В описании темы указываем язык!!!
![]() ![]() |
![]() |
White |
![]()
Сообщение
#1
|
![]() Новичок ![]() Группа: Пользователи Сообщений: 10 Пол: Женский Реальное имя: Дарья Репутация: ![]() ![]() ![]() |
Добрый вечер. Пишу небольшую программу на VBA Excel 2007. Как програмно создавать фиксированные ячейки и области? То есть, у меня есть шапка и я хочу её переносит на другой лист при нажатии на кнопку ...
Set List = Sheets.Add On Error GoTo errh tryagain: sheetname = TextBox1 List.Name = sheetname Exit Sub errh: If Err.Number = 1004 Then Resume tryagain Worksheets(sheetname).Range("A1").Value = TextBox2 |
IUnknown |
![]()
Сообщение
#2
|
![]() a.k.a. volvo877 ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 1 013 Пол: Мужской Репутация: ![]() ![]() ![]() |
Копируй и переноси как обычно:
Код Dim NewSheet As Worksheet Не знаю, как на 2007, но на 2002/2003 это прекрасно работаетsheetname = "Sheet4" ' Тут любым образом получаешь имя нового листа Set NewSheet = Sheets.Add NewSheet.Name = sheetname Sheets("Sheet1").Select ' Отсюда будем копировать Range("A1:E2").Select ' Размер копируемой области тебе известен Selection.Copy Sheets(sheetname).Select Range("A1:E2").Select ActiveSheet.Paste Range("F3").Select ' выбираешь ячейку на одну ниже и левее чем скопированная область ActiveWindow.FreezePanes = True ' а вот теперь фиксируешь область |
White |
![]()
Сообщение
#3
|
![]() Новичок ![]() Группа: Пользователи Сообщений: 10 Пол: Женский Реальное имя: Дарья Репутация: ![]() ![]() ![]() |
Спасибо. Работает
![]() |
White |
![]()
Сообщение
#4
|
![]() Новичок ![]() Группа: Пользователи Сообщений: 10 Пол: Женский Реальное имя: Дарья Репутация: ![]() ![]() ![]() |
Только вот в чем проблема. В случаи если лист удалят то шапки на новом не будит. То есть. у меня есть тип материалов (ввожу с формы название и формирую листы приходная накладная (2 вида шапок из ComboBox выбирается пользователем), расходная накладная (3 вида шапок из ComboBox выбирается пользователем ), журнал и счета ). Типов материалов может быть очень много и данных в журнале тоже. По этому нужно фиксировать область с шапкой программно....
|
IUnknown |
![]()
Сообщение
#5
|
![]() a.k.a. volvo877 ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 1 013 Пол: Мужской Репутация: ![]() ![]() ![]() |
Цитата По этому нужно фиксировать область с шапкой программно.... Объясни мне, чего ты привязалась к этому фиксированию области? Фиксирование делается для того, чтобы при прокрутке шапка висела на одном и том же месте, а не прокручивалась вверх. Всё, на этом функция фиксирования заканчивается. Удалить можно любой лист, что с фиксированной, что с нефиксированной шапкой. Кстати, Код ActiveWindow.FreezePanes = True это что, аппаратное фиксирование? Не программное? ![]() В крайнем случае, если ты можешь делать то, что нужно НЕпрограммно (руками) - то поставь макрос на запись, сделай нужные действия, и посмотри, как выглядит код. Подпилишь и используй... |
White |
![]()
Сообщение
#6
|
![]() Новичок ![]() Группа: Пользователи Сообщений: 10 Пол: Женский Реальное имя: Дарья Репутация: ![]() ![]() ![]() |
Привязалась потому что в таблице с журналом более 10 полей таких как Серийный номер (заводской) ,Знак маркирования ФСТЭК и.т.д
сам журнал(журналы) будит содержать очень большое количество записей , листать вверх и смотреть что это за номер и что это за поле долго и не удобно (по пол минуты уходит). Сообщение отредактировано: White - 2.07.2011 20:05 |
White |
![]()
Сообщение
#7
|
![]() Новичок ![]() Группа: Пользователи Сообщений: 10 Пол: Женский Реальное имя: Дарья Репутация: ![]() ![]() ![]() |
![]() Сообщение отредактировано: White - 2.07.2011 20:28 |
![]() ![]() |
![]() |
Текстовая версия | 17.06.2025 15:35 |