Infrored Пользователь Сообщений: 25 |
Здравствуйте. Попрошу мастеров прописать мне макрос ячейку R3C2 для бегущей строки. |
Infrored Пользователь Сообщений: 25 |
|
слэн Пользователь Сообщений: 5192 |
типа того.. запустите макрос test |
Infrored Пользователь Сообщений: 25 |
Супер…так я себе это и представлял)))) Только можно скорость прокрутки текста помедленнее сделать??? И чтоб макрос сразу срабатывал после открытия книги. Спасибо. |
ternovsky Пользователь Сообщений: 302 Ternov |
{quote}{login=Казанский}{date=28.10.2010 02:19}{thema=}{post}Пробуйте{/post}{/quote} Уважаемый, как вы ето сделали, оч. интресно? я макросов чтото не обнуружил внутри файла… |
Бегущую строку и на форме можно сделать: http://excelvba.ru/code/frmAbout |
|
> как вы ето сделали, оч. интресно? Макрос в модуле ЭтаКнига. Константа DELAY — задержка шага (сек). |
|
Юрий М Модератор Сообщений: 60577 Контакты см. в профиле |
{quote}{login=ternovsky}{date=28.10.2010 02:24}{thema=Re: }{post}{quote}{login=Казанский}{date=28.10.2010 02:19}{thema=}{post}Пробуйте{/post}{/quote} |
Infrored Пользователь Сообщений: 25 |
А как сделать так чтоб работа бегущей строки не останавливалась при работе с листом а работала постоянно?? |
слэн Пользователь Сообщений: 5192 |
так вы мой пример не смотрели? |
Infrored Пользователь Сообщений: 25 |
{quote}{login=слэн}{date=28.10.2010 03:08}{thema=}{post}так вы мой пример не смотрели? :){/post}{/quote} Смотрел очень хорошо получилось…только скорость великовата будет. |
слэн Пользователь Сообщений: 5192 |
там все регулируется. вверху модуля константы: Const ns = 75 — какая ширина надписи |
слэн Пользователь Сообщений: 5192 |
а вот тут самозапускается и несамоостанавливается |
слэн Пользователь Сообщений: 5192 |
|
Infrored Пользователь Сообщений: 25 |
Ну вроде всё получилось…и тут такая гадость на моём компе всё работает..а вот на другом открываются окошки безопасности макросов и в итоге ничего не получилось(((( |
Infrored Пользователь Сообщений: 25 |
эт я тож понимаю только когда клиентам рассылать прайс не каждый с этим справится.. |
Infrored Пользователь Сообщений: 25 |
Так что теперь каждому клиенту вмести с прайсом ещё и программу скидывать??? начальство непоймёт… |
Alex_ST Пользователь Сообщений: 2746 На лицо ужасный, добрый внутри |
Вообще-то я не думаю, что даже разрешившие работу макросов клиенты будут счастливы ещё и от того, что пока загружен ваш прайс с бегущей строкой, работать с Ёкселем в других книгах вообще невозможно. С уважением, Алексей (ИМХО: Excel-2003 — THE BEST!!!) |
Infrored Пользователь Сообщений: 25 |
И не надо…наши цены сверять с ценами конкурентов))) |
слэн Пользователь Сообщений: 5192 |
мож тогда gif-картинку повесить? gif иксель понимает? сам не пробовал.. |
Infrored Пользователь Сообщений: 25 |
Как идея очень хорошая…но это уже другая история)))) |
Infrored Пользователь Сообщений: 25 |
Gif вставляет но не анимирует((( идея отпадает.. |
Infrored Пользователь Сообщений: 25 |
#24 29.10.2010 10:37:47 Может есть у кого идеи как красиво оформить эту информацию в EXCEL.. |
Бегущая, ползущая и танцующая строки в VBA Excel. Использование цикла For…Next и метода Application.Wait для задержки выполнения кода. Скачать файл с примером.
Для создания визуальных эффектов будем использовать цикл For…Next и метод Application.Wait. Также для этих целей отлично подойдет функция Timer, предложенная Андреем в комментариях. Использовать такие программы можно в учебных целях, а также для личного наблюдения и демонстрации визуальных эффектов. Приведенные здесь примеры лучше запускать с помощью кнопок из панели «Элементы управления формы», размещенных на рабочем листе.
Бегущая строка
Вариант №1
Этот вариант кода используется для создания бегущей строки в отдельной или объединенной ячейке, а также его можно применить для свойства Caption пользовательской формы.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 |
Sub BegushchayaStroka() Dim stroka1 As String, stroka2 As String, _ probely As Integer, dlina As Integer, _ kolichestvo As Integer, zaderzhka As Long stroka1 = «Моя бегущая строка» probely = 10 kolichestvo = 3 zaderzhka = 500 stroka1 = space(probely) & stroka1 dlina = Len(stroka1) Dim i1 As Integer, i2 As Integer, i3 As Integer For i1 = 1 To kolichestvo For i2 = 1 To dlina stroka2 = Right(stroka1, dlina — i2) & Left(stroka1, i2) ‘——————————— Cells(3, 5) = stroka2 ‘——————————— For i3 = 1 To zaderzhka Cells(100, 1) = «» Next ‘——————————— Next Next End Sub |
Описание переменных:
- stroka1 — исходный текст бегущей строки;
- stroka2 — меняющийся в цикле текст и присваиваемый ячейке с бегущей строкой;
- probely — количество пробелов, добавляемых перед исходным текстом, чтобы отделить одно бегущее словосочетание от следующего;
- dlina — длина исходной строки с добавленными пробелами;
- kolichestvo — количество пробегов исходной строки;
- zaderzhka — максимальное количество выполнений цикла задержки, используется для регулирования скорости движения бегущей строки;
- i1, i2, i3 — счетчики циклов.
В данном примере для задержки выполнения кода используется цикл с присваиванием сотой ячейке первого столбца пустой строки. Этот цикл дает большую задержку при одинаковом количестве итераций в отличие от пустого цикла, который часто используется в таких случаях.
Бегущая строка наблюдается в ячейке Cells(3, 5), которой циклом присваивается меняющееся значение переменной stroka2. Вы можете использовать любую фиксированную ячейку или ActiveCell. Для более качественного визуального эффекта используйте в ячейке с бегущей строкой моноширинный шрифт (Courier New, MS Reference Sans Serif), так как у пропорционального шрифта очень короткие пробелы и на них бегущая строка сильнее замедляется.
Остановить выполнение макроса до его завершения можно, дважды нажав клавишу «Esc», или сочетанием клавиш «Ctrl+Break» (протестировано в Excel 2016).
Вариант №2
Еще одну интересную бегущую строку можно наблюдать, когда каждому символу строки соответствует отдельная ячейка. Для этого необходимо в предыдущем коде заменить строку
на строки
For i3 = 1 To dlina Cells(1, i3) = Mid(stroka2, i3, 1) Next |
Бегущая строка будет наблюдаться в первой строке рабочего листа. Цикл будет заполнять ячейки первой строки символами, содержащимися в значении переменной stroka2. Ничего страшного, что переменная счетчика i3 будет использоваться дважды, так как циклы не являются вложенными и выполняются отдельно друг от друга.
Для второго примера можно использовать любой шрифт в используемых ячейках, так как на скорость движения бегущей строки уже не будут влиять размеры символов.
Ползущая строка
Для замедления кода при создании визуальных эффектов можно использовать метод Application.Wait, который позволяет замедлить каждую итерацию цикла минимум на 1 секунду. С одной секундой задержки можно получить только ползущую строку, но никак не бегущую. Наблюдение за ползущей строкой в одной или объединенной ячейке сразу вызывает желание остановить макрос. Это можно сделать однократным нажатием клавиши «Esc» или сочетанием клавиш «Ctrl+Break».
Лучше смотрится ползущая строка, когда каждый символ занимает отдельную ячейку, поэтому на таком варианте можно продемонстрировать задержу с помощью метода Application.Wait. Для этого в коде первого варианта необходимо строки
‘——————————— Cells(3, 5) = stroka2 ‘——————————— For i3 = 1 To zaderzhka Cells(100, 1) = «» Next ‘——————————— |
заменить на строки
‘——————————— For i3 = 1 To dlina Cells(1, i3) = Mid(stroka2, i3, 1) Next ‘——————————— Application.Wait (Now + TimeValue(«0:00:01»)) ‘——————————— |
Не обращайте внимания на ставшую ненужной переменную zaderzhka, которая на работу кода не повлияет.
Танцующая строка
В этом примере будем использовать задержку с помощью цикла For…Next, так как метод Application.Wait здесь совершенно не подходит.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 |
Sub TantsuyushchayaStroka() Dim stroka1 As String, stroka2(14) As Variant, _ probely As Integer, _ kolichestvo As Integer, zaderzhka As Long stroka1 = «Моя танцующая строка» probely = 15 kolichestvo = 3 zaderzhka = 500 stroka2(0) = space(probely / 2) & stroka1 _ & space(probely / 2) stroka2(1) = «» stroka2(2) = space(probely / 2) & stroka1 _ & space(probely / 2) stroka2(3) = «» stroka2(4) = space(probely / 2) & stroka1 _ & space(probely / 2) stroka2(5) = «» stroka2(6) = stroka1 & space(probely) stroka2(7) = «» stroka2(8) = stroka1 & space(probely) stroka2(9) = «» stroka2(10) = space(probely) & stroka1 stroka2(11) = «» stroka2(12) = space(probely) & stroka1 stroka2(13) = «» stroka2(14) = space(probely / 2) & stroka1 _ & space(probely / 2) Dim i1 As Byte, i2 As Integer, i3 As Integer For i1 = 1 To kolichestvo For i2 = 0 To 14 Cells(5, 5) = stroka2(i2) For i3 = 1 To zaderzhka Cells(100, 1) = «» Next Next Next End Sub |
Все расположения танцующей строки в ячейке записаны в массив stroka2() и регулируются количеством присоединенных пробелов. Если будете экспериментировать, сразу задайте заведомо большее количество элементов массива.
Файл для скачивания
Для ознакомления можете скачать по этой ссылке архив с файлом в формате Excel 2007-2016 (.xlsm), в котором есть процедуры (и кнопки для их запуска), создающие
- ползущую строку в первой строке рабочего листа;
- бегущую строку в 5 ячейке 3 строки;
- танцующую строку в 5 ячейке 5 строки.
Возможно, вам придется значительно уменьшить значение переменной zaderzhka, так как эти макросы тестировались на компьютере с высокой производительностью. Ползущая строка, независимо от внешних факторов, будет перемещаться со скоростью один знак в секунду благодаря применению для задержки метода Application.Wait.
Во всех предложенных здесь примерах цикл For…Next и метод Application.Wait, использующиеся для приостановки процедур, можно заменить на код с функцией Timer.
При работе с большим объемом данных в Excel мы часто сталкиваемся с ситуацией, когда прокручивая длинные списки мы теряемся и забываем какая из колонок с данными к какому критерию относится. Для того чтобы избежать такие ситуации в Excel существует возможность закреплять строки и столбцы.
Для этого нам необходимо:
- Перейти на вкладку “Вид” в Excel => Подраздел “Окно” => раздел “Закрепить области”:
В этом меню доступны три опции:
- Закрепить области: с помощью этой функции Эксель закрепляет как строки, так и столбцы одновременно;
- Закрепить верхнюю строку: по умолчанию закрепляет верхнюю строку листа Excel;
- Закрепить первый столбец: по умолчанию закрепляет первый столбец на листе Эксель слева.
Видеоурок: Как закрепить строку и столбец в Excel при прокрутке
Как закрепить строку при прокрутке в Excel
Если вы работаете с таблицей, где есть заголовки и сотни строк, то при прокрутке данных листа вы вскоре потеряете заголовки таблицы, как это показано ниже:
В подобных ситуациях лучше воспользоваться закреплением верхней строки листа Excel. Закрепление позволит видеть заголовки таблицы при прокрутке.
Для того чтобы закрепить верхнюю строку нам потребуется:
- Перейти на вкладку “Вид” в Excel => Подраздел “Окно” => раздел “Закрепить области”:
- В выпадающем меню выбрать “Закрепить верхнюю строку”:
После этого, появится серая тонкая линия, обозначающая наличие закрепленной верхней строки:
Теперь, вы можете прокручивать данные таблицы, при этом сохранив заголовки таблицы:
Как закрепить более одной строки в Эксель
В случае, если в нашей таблице заголовки занимают более чем одну строку, то нам потребуется закрепить две и более строки. Для этого:
- Выделите крайнюю ячейку слева, находящуюся под строчками с заголовками:
- Перейдите на вкладку “Вид” в Excel => Подраздел “Окно” => раздел “Закрепить области”:
- В выпадающем меню выберите пункт “Закрепить области”:
После этого Excel закрепит все строчки сверху выделенной вами ячейки. Теперь, при прокрутке, две строки с заголовками станут зафиксированы:
Как снять закрепление строки в Excel
Для снятия закрепления строк проделайте следующие шаги:
- Перейдите на вкладку “Вид” в Excel => Подраздел “Окно” => раздел “Закрепить области”:
- В выпадающем списки выберите “Снять закрепление областей”:
Как закрепить столбец при прокрутке в Excel
Если заголовки таблицы размещены в крайнем левом столбце, то при горизонтальной прокрутке заголовки пропадут. Избежать этого нам поможет закрепление первого столбца. Для этого нам потребуется:
- Перейти на вкладку “Вид” в Excel => Подраздел “Окно” => раздел “Закрепить области”:
- В выпадающем меню выбрать “Закрепить первый столбец”:
После этого крайний левый столбец будет закреплен. Тонкая серая линия обозначает наличие закрепленного столбца:
Теперь, мы можем прокручивать таблицу по горизонтали без потери заголовков:
- Если вы закрепили столбец, то нажатием горячих клавиш Ctrl+Z нельзя убрать закрепление области. Убрать закрепление можно только через меню “Закрепить области”.
- Если вы вставите колонку перед той, что была закреплена, новая колонка будет также закрепленной колонкой.
Как закрепить более одного столбца в Эксель
В случае если в вашей таблице заголовки размещены более чем в одной колонке и вы хотите их закрепить, то проделайте следующие действия:
- Выделите самую верхнюю ячейку, в колонке находящейся сразу за теми колонками, что вы хотите закрепить:
- Перейдите на вкладку “Вид” в Excel => Подраздел “Окно” => раздел “Закрепить области”:
- В выпадающем меню выберите пункт “Закрепить области”:
После этого, Excel закрепит все колонки слева от выделенной вами ячейки. Теперь, при прокрутке, оба столбца с заголовками стали зафиксированы:
Как снять закрепление столбца в Excel
Для снятия закрепления со столбцов проделайте следующие шаги:
- Перейдите на вкладку “Вид” в Excel => Подраздел “Окно” => раздел “Закрепить области”:
- В выпадающем списке выберите “Снять закрепление областей”:
Как закрепить строку и столбец при прокрутке в Excel одновременно
Часто, для удобства в работе с большими массивами данных, необходимо закрепить одновременно и столбцы и строки таблицы.
Для того чтобы одновременно закрепить строки и столбцы в Excel проделаем следующие шаги:
- Выделим ячейку, находящуюся на пересечении столбцов и строк, которые мы хотим зафиксировать. Важно, чтобы ячейка была не внутри диапазона, а сразу после необходимых строк и столбцов. На примере ниже мы выделили ячейку, для того чтобы зафиксировать два первых столбца и верхнюю строчку:
- Перейдем на вкладку “Вид” в Excel => Подраздел “Окно” => раздел “Закрепить области”:
- В выпадающем меню выберем “Закрепить области”:
Теперь, при прокрутке данных по горизонтали и вертикали колонки и строка нашей таблицы зафиксированы:
Для снятия закрепления со строк и столбцов проделайте следующие шаги:
- Перейдите на вкладку “Вид” в Excel => Подраздел “Окно” => раздел “Закрепить области”:
- В выпадающем списке выберите “Снять закрепление областей”:
Программа Microsoft Excel создана таким образом, чтобы было удобно не только вносить данные в таблицу, редактировать их в соответствии с заданным условием, но и просматривать большие по объему блоки информации.
Наименования столбцов и строк могут быть значительно удалены от ячеек, с которыми пользователь работает в этот момент. И все время прокручивать страницу, чтобы увидеть название, некомфортно. Поэтому в табличном процессоре имеется возможность закрепления областей.
Как закрепить строку в Excel при прокрутке
В таблице, как правило, шапка одна. А строк может быть от нескольких десятков до нескольких тысяч. Работать с многостраничными табличными блоками неудобно, когда названия столбцов не видны. Все время прокручивать к началу, потом возвращаться к нужной ячейке – нерационально.
Чтобы шапка была видна при прокрутке, закрепим верхнюю строку таблицы Excel:
- Создаем таблицу и заполняем данными.
- Делаем активной любую ячейку таблицы. Переходим на вкладку «Вид». Инструмент «Закрепить области».
- В выпадающем меню выбираем функцию «Закрепить верхнюю строку».
Под верхней строкой появляется отграничивающая линия. Теперь при вертикальной прокрутке листа шапка таблицы будет всегда видна:
Предположим, пользователю нужно зафиксировать не только шапку. Еще одна или пару строк должны быть неподвижны при прокрутке листа.
Как это сделать:
- Выделяем любую ячейку ПОД строкой, которую будем фиксировать. Это поможет Excel сориентироваться, какая именно область должна быть закреплена.
- Теперь выбираем инструмент «Закрепить области».
При горизонтальной и вертикальной прокрутке остаются неподвижными шапка и верхняя строка таблицы. Таким же образом можно зафиксировать две, три, четыре и т.д. строки.
Примечание. Данный способ закрепления строк актуален для Excel версий 2007 и 2010. В более ранних версиях (2003 и 2000) инструмент «Закрепить области» находится в меню «Окно» на главной странице. И там нужно ВСЕГДА активизировать ячейку ПОД фиксируемой строкой.
Как закрепить столбец в Excel
Допустим, информация в таблице имеет горизонтальное направление: сосредоточена не в столбцах, а в строках. Для удобства пользователю нужно при горизонтальной прокрутке зафиксировать первый столбец, в котором содержатся названия строк.
- Выделяем любую ячейку нужной таблицы, чтобы Excel понимал, с какими данными ему работать. В выпадающем меню инструмента выбираем значение «Закрепить первый столбец».
- Теперь при горизонтальной прокрутке листа вправо зафиксированный столбец будет неподвижен.
Чтобы зафиксировать несколько столбцов, необходимо выделить ячейку в САМОМ НИЗУ таблицы СПРАВА от фиксируемого столбца. И нажать кнопку «Закрепить области».
Как закрепить строку и столбец одновременно
Задача: при прокрутке зафиксировать выделенную область, которая содержит два столбца и две строки.
Делаем активной ячейку на пересечение фиксируемых строк и столбцов. Но не в самой закрепляемой области. Она должна быть сразу под нужными строками и справа от нужных столбцов.
В выпадающем меню инструмента «Закрепить области» выбираем первую опцию.
На рисунке видно, что при прокрутке выделенные области остаются на месте.
Как убрать закрепленную область в Excel
После фиксации строки или столбца таблицы в меню «Закрепить области» становится доступной кнопка «Снять закрепление областей».
После нажатия все зафиксированные области рабочего листа разблокируются.
Примечание. Кнопка «Снять закрепление областей» Excel 2003 и 2000 находится в меню «Окно». Если кнопки инструментов часто используются, можно добавить их на панель быстрого доступа. Для этого щелкаем правой кнопкой мыши и выбираем предложенный вариант.
Как закрепить строку в Excel
Часто при создании отчетов, прайс-листов и других документов в Excel, нам требуется сделать неподвижной – закрепить, какую-либо строку или столбец. Обычно – это верхняя строка документа Эксель, в которой находятся обозначения столбцов таблиц. А так как таблицы массивные и приходится использовать прокрутку, то не всегда удается запомнить, что находится в том или ином столбце. Для этого и существует возможность закрепить верхнюю или любую другую строку, чтобы данные в ней всегда были на виду.
Как это сделать в Excel 2007? Да очень просто.Чтобы закрепить строчку в документе Эксель переходим в верхнем меню на вкладку Вид. Выбираем окошко “Закрепить области” – “Закрепить верхнюю строку”.
Все, теперь при прокрутке – она всегда у вас будет оставаться на виду и вы не собьетесь при заполнении таблицы или любых других работах.
Также в Эксель можно закрепить и первый столбец. Делается это аналогично верхней строке. Вы просто выбираете пункт “Закрепить первый столбец”.
Если вам нужно закрепить какую-то область – это также не трудно сделать, нажав на соответствующую кнопку.
Программа Microsoft Excel создана таким образом, чтобы было удобно не только вносить данные в таблицу, редактировать их в соответствии с заданным условием, но и просматривать большие по объему блоки информации.
Наименования столбцов и строк могут быть значительно удалены от ячеек, с которыми пользователь работает в этот момент. И все время прокручивать страницу, чтобы увидеть название, некомфортно. Поэтому в табличном процессоре имеется возможность закрепления областей.
Как закрепить строку в Excel при прокрутке
В таблице, как правило, шапка одна. А строк может быть от нескольких десятков до нескольких тысяч. Работать с многостраничными табличными блоками неудобно, когда названия столбцов не видны. Все время прокручивать к началу, потом возвращаться к нужной ячейке – нерационально.
Чтобы шапка была видна при прокрутке, закрепим верхнюю строку таблицы Excel:
- Создаем таблицу и заполняем данными.
- Делаем активной любую ячейку таблицы. Переходим на вкладку «Вид». Инструмент «Закрепить области».
- В выпадающем меню выбираем функцию «Закрепить верхнюю строку».
Под верхней строкой появляется отграничивающая линия. Теперь при вертикальной прокрутке листа шапка таблицы будет всегда видна:
Предположим, пользователю нужно зафиксировать не только шапку. Еще одна или пару строк должны быть неподвижны при прокрутке листа.
Как это сделать:
- Выделяем любую ячейку ПОД строкой, которую будем фиксировать. Это поможет Excel сориентироваться, какая именно область должна быть закреплена.
- Теперь выбираем инструмент «Закрепить области».
При горизонтальной и вертикальной прокрутке остаются неподвижными шапка и верхняя строка таблицы. Таким же образом можно зафиксировать две, три, четыре и т.д. строки.
Примечание. Данный способ закрепления строк актуален для Excel версий 2007 и 2010. В более ранних версиях (2003 и 2000) инструмент «Закрепить области» находится в меню «Окно» на главной странице. И там нужно ВСЕГДА активизировать ячейку ПОД фиксируемой строкой.
Как закрепить столбец в Excel
Допустим, информация в таблице имеет горизонтальное направление: сосредоточена не в столбцах, а в строках. Для удобства пользователю нужно при горизонтальной прокрутке зафиксировать первый столбец, в котором содержатся названия строк.
- Выделяем любую ячейку нужной таблицы, чтобы Excel понимал, с какими данными ему работать. В выпадающем меню инструмента выбираем значение «Закрепить первый столбец».
- Теперь при горизонтальной прокрутке листа вправо зафиксированный столбец будет неподвижен.
Чтобы зафиксировать несколько столбцов, необходимо выделить ячейку в САМОМ НИЗУ таблицы СПРАВА от фиксируемого столбца. И нажать кнопку «Закрепить области».
Как закрепить строку и столбец одновременно
Задача: при прокрутке зафиксировать выделенную область, которая содержит два столбца и две строки.
Делаем активной ячейку на пересечение фиксируемых строк и столбцов. Но не в самой закрепляемой области. Она должна быть сразу под нужными строками и справа от нужных столбцов.
В выпадающем меню инструмента «Закрепить области» выбираем первую опцию.
На рисунке видно, что при прокрутке выделенные области остаются на месте.
Как убрать закрепленную область в Excel
После фиксации строки или столбца таблицы в меню «Закрепить области» становится доступной кнопка «Снять закрепление областей».
После нажатия все зафиксированные области рабочего листа разблокируются.
Примечание. Кнопка «Снять закрепление областей» Excel 2003 и 2000 находится в меню «Окно». Если кнопки инструментов часто используются, можно добавить их на панель быстрого доступа. Для этого щелкаем правой кнопкой мыши и выбираем предложенный вариант.
Один из наиболее частых вопросов пользователей, которые начинают работу в Excel и особенно когда начинается работа с большими таблицами — это как закрепить строку в excel при прокрутке, как закрепить столбец и чем отличается закрепление области от строк и столбцов. Разработчики программы предложили пользователям несколько инструментов для облегчения работы. Эти инструменты позволяют зафиксировать некоторую часть ячеек по горизонтали, по вертикали или же даже в обоих направлениях.
При составлении таблиц для удобства отображения информации очень полезно знать как объединить ячейки в экселе. Для качественного и наглядного отображения информации в табличном виде два этих инструмента просто необходимы.
Как закрепить строку в excel при прокрутке
В экселе можно закрепить строку можно двумя способами. При помощи инструмента «Закрепить верхнюю строку» и «Закрепить области». Первый инструмент подходит для быстрого закрепления одной самой верхней строки и он ничем не отличается от инструмента «Закрепить области» при выделении первой строки. Поэтому можно всегда пользоваться только последним. Чтобы закрепить какую либо строку и сделать ее неподвижной при прокрутке всего документа:
-
Выделите строку, выше которой необходимо закрепить. На изображении ниже для закрепления первой строки я выделил строку под номером 2. Как я говорил выше, для первой строки можно ничего не выделять и просто нажать на пункт «Закрепить верхнюю строку».
Для закрепления строки, выделите строку, которая ниже закрепляемой
Инструмент для закрепления строки, столбца и области
Если в вашей таблице верхний заголовок занимает несколько строк, вам необходимо будет выделить первую строку с данными, которая не должна будет зафиксирована. Пример такой таблицы изображен на картинке ниже. В моем примере строки с первой по третью должны быть зафиксированы, а начиная с 4 должны быть доступны для редактирования и внесения данных. Выделил 4-ю строку и нажал на «Закрепить области».
Чтобы закрепить три первые строки, выделите четвертую и нажмите на «Закрепить область»
Результат изображен на картинке снизу. Все строки кроме первых трех двигаются при прокрутке.
Результат закрепления трех первых строк
Чтобы снять любое закрепление со строк, столбцов или области, нажмите на «Закрепить области» и в выпадающем списке вместо «Закрепить области» будет пункт меню «Снять закрепление областей».
Чтобы снять любое закрепление (строк, столбцов или области) нажмите на «Снять закрепление областей»
Как закрепить столбец в excel
С закреплением столбца ситуация аналогичная закреплению строк. Во вкладке «ВИД» под кнопкой «Закрепить области» для первого столбца есть отдельная кнопка, которая закрепляет только первый столбец и выделять определенный столбец не нужно. Чтобы закрепить более чем один, необходимо выделить тот столбец, левее которого все будут закреплены.
Я для закрепления столбца с названием проектов (это столбец B), выдели следующий за ним (это C) и нажал на пункт меню «Закрепить области». Результатом будет неподвижная область столбцов A и B при горизонтальной прокрутке. Закрепленная область в Excel выделяется серой линией.
Чтобы убрать закрепление, точно так же как и в предыдущем примере нажмите на «Снять закрепление областей».
Использование инструмента закрепить область в excel
Вы скорее всего обратили внимание, что при закреплении одного из элементов (строка или столбец), пропадает пункт меню для закрепления еще одного элемента и можно только снять закрепление. Однако довольно часто необходимо чтобы при горизонтальной и при вертикальной прокрутке строки и столбцы были неподвижны. Для такого вида закрепления используется тот же инструмент «Закрепить области», только отличается способ указания области для закрепления.
- В моем примере мне для фиксации при прокрутке необходимо оставить неподвижной все что слева от столбца C и все что выше строки 4. Для этого выделите ячейку, которая будет первая ниже и правее этих областей. В моем случае это ячейка C4.
- Во вкладке «ВИД» нажмите «Закрепить области» и в выпадающем меню одноименную ссылку «Закрепить области».
- Результатом будет закрепленные столбцы и строки.
Результат закрепления области столбцов и строк
Мигающая ячейка
Рассмотрим достаточно интересный трюк, с помощью которого можно заставить мигать (то есть попеременно изменять цвета) любую ячейку в течение некоторого промежутка времени.
Предположим, что нам необходима ячейка, которая 10 раз каждые 5 секунд будет изменять цвет фона с красного на зеленый. Для решения этой задачи воспользуемся следующим макросом (листинг 3.75).
Листинг 3.75. Мигание ячейки
Sub BlinkingCell()
Static intCalls As Integer ‘ Счетчик количества миганий
‘ Если ячейка мигала менее 10 раз, то изменим _
в очередной раз ее цвет
If intCalls < 10 Then
intCalls = intCalls + 1
‘ Определение, какой цвет необходимо установить
If Range(«A1»).Interior.Color <> RGB(255, 0, 0) Then
‘ Цвет ячейки не красный, так что теперь назначим _
именно красный цвет
Range(«A1»).Interior.Color = RGB(255, 0, 0)
Else
‘ Назначим ячейке зеленый цвет
Range(«A1»).Interior.Color = RGB(0, 255, 0)
End If
‘ Эту процедуру необходимо вызвать через 5 секунд
Application.OnTime Now + TimeValue(«00:00:05»),
«BlinkingCell»
Else
‘ Хватит мигать
Range(«A1»).Interior.ColorIndex = xlNone
intCalls = 0
End If
End Sub
После запуска макроса BlinkingCell будет мигать ячейка Al. Путем внесения соответствующих изменений в приведенный макрос можно регулировать продолжительность цикла и изменять цвета фона по своему усмотрению.
�������� ������
�������� ������
���������� ���������� ���������� ����, � ������� �������� ����� ��������� ������ (�� ���� ����������� �������� �����) ����� ������ � ������� ���������� ���������� �������.
�����������, ��� ��� ���������� ������, ������� 10 ��� ������ 5 ������ ����� �������� ���� ���� � �������� �� �������. ��� ������� ���� ������ ������������� ��������� �������� (������� 3.75).
������� 3.75. ������� ������
Sub BlinkingCell()
Static intCalls As Integer ‘ ������� ���������� �������
‘ ���� ������ ������ ����� 10 ���, �� ������� _
� ��������� ��� �� ����
If intCalls < 10 Then
intCalls = intCalls + 1
‘ �����������, ����� ���� ���������� ����������
If Range(�A1�).Interior.Color <> RGB(255, 0, 0) Then
‘ ���� ������ �� �������, ��� ��� ������ �������� _
������ ������� ����
Range(�A1�).Interior.Color = RGB(255, 0, 0)
Else
‘ �������� ������ ������� ����
Range(�A1�).Interior.Color = RGB(0, 255, 0)
End If
‘ ��� ��������� ���������� ������� ����� 5 ������
Application.OnTime Now + TimeValue(�00:00:05�),
�BlinkingCell�
Else
‘ ������ ������
Range(�A1�).Interior.ColorIndex = xlNone
intCalls = 0
End If
End Sub
����� ������� ������� BlinkingCell ����� ������ ������ Al. ����� �������� ��������������� ��������� � ����������� ������ ����� ������������ ����������������� ����� � �������� ����� ���� �� ������ ����������.
Книга: Excel. Трюки и эффекты
Мигающая ячейка
Мигающая ячейка
Рассмотрим достаточно интересный трюк, с помощью которого можно заставить мигать (то есть попеременно изменять цвета) любую ячейку в течение некоторого промежутка времени.
Предположим, что нам необходима ячейка, которая 10 раз каждые 5 секунд будет изменять цвет фона с красного на зеленый. Для решения этой задачи воспользуемся следующим макросом (листинг 3.75).
Листинг 3.75. Мигание ячейки
Sub BlinkingCell()
Static intCalls As Integer ‘ Счетчик количества миганий
‘ Если ячейка мигала менее 10 раз, то изменим _
в очередной раз ее цвет
If intCalls < 10 Then
intCalls = intCalls + 1
‘ Определение, какой цвет необходимо установить
If Range(«A1»).Interior.Color RGB(255, 0, 0) Then
‘ Цвет ячейки не красный, так что теперь назначим _
именно красный цвет
Range(«A1»).Interior.Color = RGB(255, 0, 0)
Else
‘ Назначим ячейке зеленый цвет
Range(«A1»).Interior.Color = RGB(0, 255, 0)
End If
‘ Эту процедуру необходимо вызвать через 5 секунд
Application.OnTime Now + TimeValue(«00:00:05»),
«BlinkingCell»
Else
‘ Хватит мигать
Range(«A1»).Interior.ColorIndex = xlNone
intCalls = 0
End If
End Sub
После запуска макроса BlinkingCell будет мигать ячейка Al. Путем внесения соответствующих изменений в приведенный макрос можно регулировать продолжительность цикла и изменять цвета фона по своему усмотрению.
Здесь можно получить ответы на вопросы по Microsoft Excel | 57392 | 469531 |
2 Окт 2018 00:51:03 |
|
44519 | 357828 |
29 Янв 2017 17:28:40 |
||
Лучшие избранные темы с основного форума | 14 | 80 |
28 Июн 2018 15:25:11 |
|
Если вы — счастливый обладатель Mac 😉 | 217 | 1059 |
21 Сен 2018 06:21:34 |
|
Раздел для размещения платных вопросов, проектов и задач и поиска исполнителей для них. | 2085 | 13295 |
1 Окт 2018 21:40:36 |
|
Если Вы скачали или приобрели надстройку PLEX для Microsoft Excel и у Вас есть вопросы или пожелания — Вам сюда. | 307 | 1580 |
28 Сен 2018 09:07:46 |
|
803 | 11506 |
1 Окт 2018 23:31:37 |
||
Обсуждение функционала, правил и т.д. | 269 | 3465 |
1 Окт 2018 11:22:35 |
|
Сейчас на форуме (гостей: 389, пользователей: 2) ,
Сегодня отмечают день рождения (48), (36), (34), (51), (44), (27)
Всего зарегистрированных пользователей: 82896
Приняло участие в обсуждении: 31748
Всего тем: 105606
В разделе Программное обеспечение на вопрос Эксель Можно ли строку или текст сделать мигающим? заданный автором Дмитрий Карачевцев лучший ответ это Мерцающий текст в Excel можно получить лишь с помощью небольшой макрокоманды.
Допустим, вы хотите, чтобы мерцала ячейка A1. В меню Tools (Сервис) выберите пункты Macro (Макрос) и Visual Basic Editor (Редактор Visual Basic). На дереве в левой панели щелкните на VBAProject правой клавишей мыши и в раскрывшемся меню выберите пункты Insert (Вставка) и Module (Модуль). Теперь наберите и вставьте в модуль следующий текст:
Public NextFlash As Double
Public Const FR As String = «Sheet1!A1»
Sub StartFlashing ()
If Range (FR). Interior. ColorIndex = 3 Then
Range (FR). Interior. ColorIndex = xlColorIndexNone
Else
Range (FR). Interior. ColorIndex = 3
End If
NextFlash = Now + TimeSerial (0, 0, 1)
Application.OnTime NextFlash, «StartFlashing», , True
End Sub
Sub StopFlashing ()
Range (FR). Interior. ColorIndex = xlColorIndexNone
Application. OnTime NextFlash, «StartFlashing», , False
End Sub
Разместите окна VBA и Excel таким образом, чтобы вам была видна ячейка A1 на листе Sheet1, затем щелкните в тексте макрокоманды StartFlashing и запустите его нажатием на клавишу F5. Ячейка мерцает! Чтобы прекратить мерцание, щелкните на тексте макрокоманды StopFlashing и нажмите клавишу F5.
Как же работают эти макрокоманды? Константа FR определяет диапазон мерцающих ячеек; изменив ее значение, вы можете вызвать мерцание различных ячеек. Если фоновый цвет ячеек мерцающего диапазона красный, макрокоманда меняет его на обычный, если нет — она меняет цвет фона на красный. Затем через секунду макрокоманда вновь запускается благодаря имеющемуся в программе методу OnTime.
Gambrinus
незарегистрированный
Gambrinus
=WENN(A12>=4;»Nach L/M»;»Passt»)
Вот такой текст в ячейке. Можно ли как нибудь сделать, что бы эти Мельдунги мигали?
Заноза
незарегистрированный
Заноза
Простите, а зачем ?
Gambrinus
незарегистрированный
Gambrinus
Чтобы мигали.
Sabiko
незарегистрированный
Sabiko
Gambrinus, мигание можно осуществить в Excel исключительно средствами Visual Basic for Applications (VBA).
Стандартные функции такой возможности не дают. Ими можно только однозначно определить цвет текста или ячейки(пример — полож. числа — черным, отрицательные — красным).
В VBA для этого надо написать код, используя функцию таймера.
Lorenzo,
Thanks for your comments.
You are not the first person to ask for this functionality. Statistics show that most users do not want the option of blinking cells as the effects are pretty awful , and that simply changing the background color of cell is just as effective without the eye strain of a blinking cell.
MSFT prioritizes adding built-in functionalities based their assessment on best idea top suggestions. that’s why they have created excel.uservoice.com Excel’s Suggestion Box for users to submit Ideas and suggestions for improving Excel.
Among many features requested in uservoice, the flashing/blinking cell only has the min votes ( two votes) as of today and you can add yours if you wish https://excel.uservoice.com/forums/304921-excel-for-windows-desktop-application/suggestions/33099685…
It shows that only few users wants this feature, however the door for VBA based solution is open, simply few line of code time-driven macro can add the functionality for those users who really wants it. There could be thousands of functions and features that currently are being handled by User Defined Functions with VBA that are not available with built-in functions, imagine if everyone asks for their desired functions or feature to be added to Excel, what will become of Excel?
I have attached a sample file which is from fellow MVP Tom Urtis that shows how few line of VBA can deliver the flashing cell.