Пример макроса от 16.01.2014

Автор: | 16.01.2014

К совещанию 17 января 2014 года мне было необходимо подготовить файл в EXCEL с полями номер п/п, наименование фрагмента, гиперссылка на фрагмент в YouTube и время ролика.

Я решил сначала всё сделать методом тупого  копирования, но оказалось, что мне пришлось для заполнения одной строки в файле Excel обращаться к странице YouTube несколько раз. Кроме этого выяснилось, что при вставке  информации в ячейки файла Excel нарушается форматирование, но хуже всего  то, что информация вставляется в виде нескольких строк, и таких строк с описанием ролика до 8.

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

Быстро набросал макрос и проверил его работоспособность, добавил автоматически записываемые куски кода через макрорекордер по форматированию ячеек, а где нужно, то и по удалению гиперссылок из ячейки, настроил запрос на 8 ячеек для объединения информации из ниже лежащих ячеек в одну верхнюю. И вот всё готово. Можно, конечно, чуть упростить код, убрав запрос на число строк для объединения, но в принципе это на скорость вызова макроса не влияет.

На всё про всё я затратил 10 минут на отладку макроса и столько же на копирование и вставку информации по роликам.

Хочу напомнить, что для быстрого вызова любого макроса из любой книги Excel можно поместить кнопку вызова макроса в меню Excel. Я показал это в файле Word со скриншотами, которые правда, не подогнал под размер листа.

В настоящее время существует несколько версий офисов,  но я до сих пор пока программирую всё в Excel 2003. Хочу напомнить всем, что  в этом году заканчивается поддержка данной версии фирмой-разработчиком.

К слову. До года 1995 в мире одинаково широко использовались различные программы работы с электронными таблицами, но наиболее распространёнными из них  были Lotus 123 и Excel. Фирма Microsoft многое позаимствовала из разработки своего предшественника (Позаимствовала идею,- это самое мягкое из всего, что можно сказать), и выиграла в дальнейшем соревнование среди аналогичных программных продуктов прежде всего за счет новой более совершенной технологии применения макросов.

Макросы в Excel пишутся на VBA (Visual Basic for Applitation), причем этот язык программирования просто встроен в сами приложения фирмы. Я подозревая и то, что сами же приложения типа Excel написаны с использованием не только языка C, но и VBA. Поэтому всё так здорово и гармонично, естественно и быстро работает в приложениях Microsoft.

Что касается Lotus 123, то три цифры в самом её названии сразу указывают на три основные предназначения,  функции, для решения которых были созданы  электронные таблицы.

Это текстовый редактор (довольно плохой), база данных (списки) хорошего качества, но и основа всего, – функция электронной таблицы, выполненная просто замечательно, особенно если учесть всевозможные загружаемые официальные надстройки сторонних фирм.  (Если то же самое сказать о приложении Word, то оно  содержит прекрасный, прежде всего, текстовый редактор, примитивный редактор таблиц, который с натяжкой можно назвать таковым,  механизм работы с БД полностью отсутствует) . Word же и Excel между собой легко взаимодействуют посредством встроенного механизма автоматизации и могут выступать как в роли сервера, так и клиента.

Ссылка на файл Word со скришотами Ссылка на файл Excel с макросом

Ссылка с Яндекс-диска http://yadi.sk/d/8FtEJPGuGAVde

What are you working on?