100+ полезных примеров готовых макросов. Готовые макросы


100+ полезных примеров готовых макросов

  Примеры кода Excel Excel Macro - полезные макросы, коды, 100+ Как объясняется для базовых начинающих для продвинутых пользователей VBA. Учебники по изучению Excel 2003, 2007, 2010, 2013 Макросы и мастеринг в VBA. Выбранные примеры для обработки различных объектов, методов и свойств в Excel. Многочисленные бесплатные полезные коды VBA и советы помогут вам разобраться с различными объектами Excel, такими как ячейки, диапазоны, рабочие листы, рабочие книги, приложения, диаграммы, сводные таблицы, гиперссылки, функциями, пользовательскими формами, MsgBox, ListBox, ComboBox. Также предоставляются бесплатные примеры кода для работы с MS Word, PowerPoint, Outlook, Access, другими приложениями и обработкой файлов. Если вы думаете, что я пропустил какой-либо полезный код, напишите нам. Через пару дней мы ответим с решением и опубликуем его, чтобы сделать его доступным для всех пользователей VBA.

100+ Excel VBA макросов коды Примеры | excel VBA makro kod örnekleri | Excel的VBA宏代码范例 | Excel-VBA-Makros Codes Beispiele | excel VBA Macro Codes Contoh | एक्सेल VBA मैक्रो कोड्स उदाहरण.

Наиболее полезные коды VBA Примеры макросов Excel! Путь обучения

  Изучайте коды VBA Примеры Excel Макросы и делайте почти все! Мы объяснили множество примеров, охватывающих наиболее часто используемые коды. Начните учиться ...!

Ячейки и объекты диапазона: коды VBA Примеры Excel Макросы

  Чтение данных из ячейки было моим первым захватывающим кодом VBA, когда я уставился на изучение Excel VBA. Затем я успешно записываю данные в ячейки Excel. Это был мой первый счастливый момент, который побудил меня заниматься VBA с последних 10 лет.

  Вот общие макросы Excel Excel Excel Примеры макросов для работы с ячейками и объектами диапазона рабочего листа.   Вы можете найти примеры при чтении и записи данных, выборе, копировании и вставке данных.  Очистка, изменение цвета шрифта, шрифта до полужирного, цвет фона ячеек или диапазон. Мы также можем увидеть примеры слияния ячеек, добавления комментариев и изменения шрифта в нижнем или верхнем, используя Excel VBA.

Top

Строки и столбцы Объекты: коды VBA Примеры Excel Макросы

  Объекты Cell и Range помогают считывать и записывать данные с листа. Теперь мы рассмотрим строки и столбцы рабочего листа, чтобы показать или скрыть данные. Здесь вы можете найти макросы примеров Excel VBA для удаления строк, столбцов, изменения высоты строки, ширины столбца. Скрытие или скрытие столбцов или строк. Вставка или удаление строк или столбцов. И найти последнюю строку или столбцы на листе в разных ситуациях.

Top

Рабочие листы и объекты рабочей книги: коды VBA Примеры Excel Макросы

  Теперь мы увидим макросы макросов Excel VBA для экземпляров рабочего листа и рабочей книги. Здесь вы можете создать новую книгу, открыть, закрыть и сохранить книгу. И пример, показывающий запуск макроса при открытии или просмотре книги. Мы также увидим, как защищать или снимать защиту книг или рабочих таблиц Excel. Копирование данных с одного листа на другой рабочий лист.  Скрытие и отображение таблиц. Изменение цвета вкладки рабочего листа. Активация книг или рабочего листа и т. д.

Top

Гиперссылка: коды VBA Примеры Excel Макросы

  Гиперссылки являются наиболее широко используемыми концепциями в Excel. Обычно мы используем гиперссылки для навигации или открытия файла, ссылки или папки. Но мы можем делать многое другое, используя гиперссылки. Примеры в этом разделе покажут вам мощь гиперссылок в Excel VBA. В этом уроке мы рассмотрели следующие примеры:

  • Добавить создание гиперссылок в Excel VBA Удаление гиперссылок в Excel VBA Веб-сайт VBA Open File Folder с использованием метода FollowHyperlink в Excel VBA Create Send Emails Использование метода FollowHyperlink - передача ключей в Excel
  • Гиперссылки в Excel VBA - объяснены примерами!

Графики: коды VBA Примеры Excel Макросы

  Еще один мощный инструмент в Excel - это диаграмма. Вы можете создавать богатые визуализированные панели мониторинга с помощью диаграмм Excel и VBA. Мы рассмотрели наиболее часто используемые макрокоманды примеров Excel диаграмм VBA. В этом разделе будет показано, как обращаться с различными объектами диаграммы для автоматизации процесса построения диаграмм с помощью VBA. Примеры создания диаграмм, изменение типов диаграмм. Изменение заголовков осей графика, названия диаграммы, формата оси, первичной и вторичной осей. Мы предоставили более 33 примеров для охвата A-z таблицы Excel VBA.

  • Примеры учебников по созданию диаграмм с использованием Excel VBA 
  • Примеры учебников по типу диаграммы с использованием Excel VBA Примеры учебников по форматированию объектов диаграммы с использованием Excel VBA Примеры учебных пособий по сборке диаграмм в Excel VBA Другие полезные примеры и руководства по Excel VBA Charting Константы и перечисление диаграмм Excel VBA
  • Примеры и учебные пособия в Excel диаграммы VBA 
Таблицы: коды VBA Примеры Excel Макросы

  Таблицы в Excel помогают управлять нашими данными в Excel и обеспечивают больший контроль над данными. В этом примере мы увидим различные коды Excel Excel Примеры макросов, такие как создание таблиц, сортировка данных таблиц и применение фильтров в данных. Мы приводили следующий пример для работы с таблицами с использованием Excel VBA

  • Создание таблиц в Excel VBA
  • Сортировка таблиц в Excel VBA Фильтрация таблиц в Excel VBA Очистить фильтры таблицы в Excel VBA

Таблицы в Excel VBA - объяснены примерами!

Top

Сводные таблицы: коды VBA Примеры Excel Макросы

  Сводные таблицы помогают нам суммировать данные и анализировать их. Примеры VBA. Примеры Excel. Макросы, предоставляемые для создания сводных таблиц, сводных диаграмм, добавления вычислений, изменения полей строк, полей столбцов, полей полей значений в сводных таблицах с использованием VBA. Мы приводили следующий пример для работы с сводными таблицами с использованием Excel VBA, мы добавим еще несколько примеров, чтобы делать больше задач с использованием сводных таблиц.

  • Создание сводных таблиц в Excel VBA Создание сводной диаграммы с помощью Excel VBA Создание сводной диаграммы столбцов с помощью Excel VBA Создание расчетного сводного поля в Excel VBA

Сводные таблицы в Excel VBA - Объясненные примерами!

Имена: коды VBA Примеры Excel Макросы

  Имена - это еще одна функция экономии времени в Excel. Мы можем определить имена для ячеек, диапазонов и таблиц и использовать их в листах в книге. В ней мы увидим, как добавлять или удалять имена с помощью VBA. Скрытие и скрытие имен пользователей. Примеры Follwing, рассмотренные в этом разделе, касаются имен с использованием Excel VBA.

  • Добавление имен в Excel VBA Удаление имен в Excel VBA Скрыть скрытые имена в Excel VBA

Имена в Excel VBA - Объясненные примерами!

Top

Другие приложения: коды VBA Примеры Excel Макросы

  VBA является мощным, он может взаимодействовать с другими приложениями, такими как MS Word, PowerPoint, Access, Outlook, Internet Explorer, VBScript и т. Д. Вот примеры для работы с другим приложением из Excel. Ниже приведены примеры этого руководства:

  • Взаимодействие с PowerPoint из Excel VBA Работа с MS Word из Excel VBA Взаимодействие с MS Access из Excel VBA Взаимодействие с Outlook из Excel VBA Работа с Internet Explorer Работа с другими приложениями из Excel VBA - Калькулятор Запустить VBScript из Excel VBA VBA для прикрепления Отправить диаграмму Excel в Outlook Email

Excel VBA для взаимодействия с другими приложениями

Объект приложения: примеры кода Excel VBA. Макросы 

  Примеры создания объектов приложений помогут вам закрепить ваши программы VBA и написать оптимизированный код в Excel VBA. Примеры остановки или отображения предупреждений приложений, остановки или включения обновления экрана, остановки или включения событий приложения. Следующие примеры процедур и функций описаны в этом разделе, чтобы скопировать и ускорить обработку кода VBA.

  • Остановить обновление экрана Остановить события в Excel VBA - отключить включение Остановить уведомления о приложениях в Excel VBA - отключить доступ Отображение прогресса на панели состояния в VBA Excel Установить состояние Windows в Excel VBA - свести к минимуму максимальное значение Normal Переключить полноэкранный режим в Excel VBA Получить имя пользователя в VBA Excel Стоп-расчеты в Excel VBA - ручная автоматическая Открыть редактор Visual Basic (VBE) - Открыть модуль с VBA VBA для выхода из процедуры или функции

 Закрепить код VBA - Объекты приложения, объясненные примерами 

Обработка файлов: примеры Excel VBA. Коды макросов

  Примеры обработки файлов предназначены для создания файлов, папок. Копирование файлов и папок и перемещение из одного места в другое. И отображение диалоговых окон файлов или папок для просмотра файлов или папок. И проверьте, существуют ли файлы в папке с помощью VBA.

  • Проверьте, существует ли папка с использованием Excel VBA Открытие папок с использованием VBA Excel Создание папок в Excel VBA Копирование папок с одного места на другое в Excel VBA Перемещение папки из одного места в другое в Excel VBA Удаление папок в VBA Excel Сделать файл только для чтения в VBA Excel Скопировать все файлы Excel Одна папка в другую в VBA Excel Открытие файлов с помощью диалогового окна «Файл» в Excel VBA Настроить диалоговое окно «Файл или папка» в VBA Excel Диалоговое окно «Файл Excel VBA» - отображение диалогового окна «Vanilla» для выбора файлов

Папки и обработка файлов в Excel VBA

  Еще несколько примеров VBA добавлены для работы с файлами и папками с использованием Excel VBA:

Top

Различные примеры Excel VBA. Коды макросов

vh10295.rdkd.ru

Сборник готовых макросов VBA

Представляю Вашему вниманию огромный сборник макросов и функций, все макросы сгруппированы по главам, для удобства добавил оглавление с гиперссылками.

P.S.: Где скачал не помню.

Запуск макроса с поиском ячейки Запуск макроса при открытии книги Запуск макроса при вводе в ячейку «2» Запуск макроса при нажатии «Ентер» Добавить в панель свою вкладку «Надстройки» (Формат ячейки)

Проверка наличия файла по указанному пути_1 Проверка наличия файла по указанному пути_2 Проверка наличия файла по указанному пути_3 Поиск нужного файла_1 Поиск нужного файла_2 Поиск нужного файла_3 Поиск нужного файла_4 Автоматизация удаления файлов Произвольный текст в строке состояния Восстановление строки состояния Бегущая строка в строке состояния Быстрое изменение заголовка окна Быстрое изменение заголовка окна_2 Изменение заголовка окна (со скрытием названия файла) Возврат к первоначальному заголовку Что открыто в данный момент Работа с текстовыми файлами Запись и чтение текстового файла Обработка нескольких текстовых файлов Определение конца строки текстового файла Копирование из текстового файла в эксель Копирование содержимого в текстовый файл_1 Копирование содержимого в текстовый файл_2 Экспорт данных в HТМL Создание резервных копий ценных файлов Подсчет количества открытий файла Вывод пути к файлу в активную ячейку Копирование содержимого файла RTF в эксель Копирование данных из закрытой книги Извлечение данных из закрытого файла Поиск слова в файлах Создание текстового файла и ввод текста в файл Создание текстового файла и ввод текста (определение конца файла) Создание документов Word на основе таблицы Excel Команды создания и удаления каталогов Получение текущего каталога Посмотреть все файлы в каталоге_1 Посмотреть все файлы в каталоге_2 Посмотреть все файлы в каталоге_3

Количество имен рабочей книги Защита рабочей книги Запрет печати книги Открытие книги (или текстовых файлов) Открытие книги и добавление в ячейку А1 текста Сколько книг открыто Закрытие всех книг Закрытие рабочей книги только при выполнении условия Сохранение рабочей книги с именем, представляющим собой текущую дату Сохранена ли рабочая книга Создать книгу с одним листом Удаление ненужных имен Быстрое размножение рабочей книги Сортировка листов Поиск максимального значения на всех листах книги Проверка наличия защиты рабочего листа Список отсортированных листов Создать новый лист_1 Копирование листа в книге Копирование листа в новую книгу (создается) Перемещение листа в книге Перемещение нескольких листов в новую книгу Заменить существующий файл Вставка колонтитула с именем книги, листа и текущей датой Существует ли лист Существует ли лист_2 Вывод количества листов в активной книге Вывод количества листов в активной книге в виде гиперссылок Вывод имен активных листов по очереди Вывод имени и номеров листов текущей книги Сделать лист невидимым Сколько страниц на всех листах? Копирование строк на другой лист Копирование столбцов на другой лист Подсчет количества ячеек, содержащих указанные значения_1 Подсчет количества ячеек в диапазоне, содержащих указанные значения_2 Подсчет количества видимых ячеек в диапазоне Определение количества ячеек в диапазоне и суммы их значений Подсчет количества ячеек Автоматический пересчет данных таблицы при изменении ее значений Ввод данных в ячейки Ввод данных с использованием формул Ввод текстоввых данных в ячейки Вывод в ячейки названия книги, листа и количества листов Удаление пустых строк_1 Удаление пустых строк_2 Удаление пустых строк_3 Удаление строки по условию Удаление используемых скрытых строк или строк с нулевой высотой Удаление дубликатов по маске Выделение диапазона над текущей ячейкой Выделение диапазона над текущей ячейкой_2 Выделение отрицательных значений Выделение диапазона и использование абсолютных адресов Выделение ячеек через интервал_2 Движение по ячейкам Поиск ближайшей пустой ячейки столбца Поиск максимального значения Поиск и замена по шаблону Поиск значения с отображением результата в отдельном окне Поиск с выделением найденных данных_1 Поиск с выделением найденных данных_2 Поиск по условию в диапазоне Поиск последней непустой ячейки диапазона Поиск последней непустой ячейки столбца Поиск последней непустой ячейки строки Поиск ячейки синего цвета в диапазоне Поиск наличия значения в столбце Поиск совпадений в диапазоне Поиск ячейки в диапазоне_1 Поиск ячейки в диапазоне_2 Поиск приближенного значения в диапазоне Поиск начала и окончания диапазона, содержащего данные Автоматическая замена значений Быстрое заполнение диапазона (массив) Заполнение через интервал(массив) Заполнение указанного диапазона(массив) Заполнение диапазона(массив) Расчет суммы первых значений диапазона Размещение в ячейке электронных часов «Будильник» Адрес активной ячейки Координаты активной ячейки Формула активной ячейки Получение из ячейки формулы Тип данных ячейки Вывод адреса конца диапазона Получение информации о выделенном диапазоне Создание изменяемого списка (таблица) Умножение выделенного диапазона на 2 Одновременное умножение всех данных диапазона Деление диапазона на 100 Суммирование данных только видимых ячеек Сумма ячеек с числовыми значениями При суммировании — курсор внутри диапазона Начисление процентов в зависимости от суммы_1 Начисление процентов в зависимости от суммы_2 Начисление процентов в зависимости от суммы_3 Сводный пример расчета комиссионного вознаграждения Движение по диапазону Сдвиг от выделенной ячейки Создание заливки диапазона Подбор параметра ячейки Разбиение диапазона Объединение данных диапазона Объединение данных диапазона_2 Узнать максимальную колонку или строку. Ограничение возможных значений диапазона Тестирование скорости чтения и записи диапазонов Открыть MsgBox при выборе ячейки Скрытие строки Скрытие нескольких строк Скрытие столбца Скрытие нескольких столбцов Скрытие строки по имени ячейки Скрытие нескольких строк по адресам ячеек Скрытие столбца по имени ячейки Скрытие нескольких столбцов по адресам ячеек Мигание ячейки

Вывод на экран всех примечаний рабочего листа Функция извлечения комментария Список примечаний защищенных листов Перечень примечаний в отдельном списке_1 Перечень примечаний в отдельном списке_2 Перечень примечаний в отдельном списке_3 Подсчет количества примечаний_1 Подсчет примечаний_3 Выделение ячеек с примечаниями Отображение всех примечаний Изменение цвета примечаний Добавление примечаний Добавление примечаний в диапазон по условию Перенос комментария в ячейку и обратно Перенос значений из ячейки в комментарий_1 Перенос значений из ячейки в комментарий_2

Дополнение панели инструментов Добавление кнопки на панель инструментов Панель с одной кнопкой Панель с двумя кнопками Создание панели справа Вызов предварительного просмотра Создание пользовательского меню (вариант 1) Создание пользовательского меню (вариант 2) Создание пользовательского меню (вариант 3) Создание пользовательского меню (вариант 4) Создание пользовательского меню (вариант 5) Создание списка пунктов главного меню Excel Создание списка пунктов контекстных меню Отображение панели инструментов при определенном условии Скрытие и отображение панелей инструментов Создать подсказку к моим кнопкам Создание меню на основе данных рабочего листа Создание контекстного меню Блокировка контекстного меню Добавление команды в меню Сервис Добавление команды в меню Вид Создание панели со списком Мультфильм с помощником в главной роли Дополнение помощника текстом, заголовком, кнопкой и значком Новые параметры помощника Использование помощника для выбора цвета заливки

Функция INPUTBOX (через ввод значения) Настройка ввода данных в диалоговом окне Открытие диалогового окна (“Открыть файл”)_1 Вызов броузера из Экселя Диалоговое окно ввода данных Значения по умолчанию

Вывод списка доступных шрифтов Выбор из текста всех чисел Прописная буква только в начале текста Подсчет количества повторов искомого текста Выделение из текста произвольного элемента Отображение текста «задом наперед» Запуск таблицы символов из Excel

Получить имя пользователя Вывод разрешения монитора Получение информации об используемом принтере Просмотр информации о дисках компьютера

Построение диаграммы с помощью макроса Сохранение диаграммы в отдельном файле Построение и удаление диаграммы нажатием одной кнопки Применение случайной цветовой палитры Эффект прозрачности диаграммы Построение диаграммы на основе данных нескольких рабочих листов Создание подписей к данным диаграммы

Программа для составления кроссвордов Игра «Минное поле» Игра «Угадай животное» Расчет на основании ячеек определенного цвета

Вызов функциональных клавиш Расчет среднего арифметического значения Перевод чисел в «деньги» Поиск ближайшего понедельника Подсчет количества полных лет Расчет средневзвешенного значения Преобразование номера месяца в его название Использование относительных ссылок Преобразование таблицы Excel в HТМL-формат Генератор случайных чисел Случайные числа — на основании диапазона Применение функции без ввода ее в ячейку Подсчет именованных объектов Включение автофильтра с помощью макроса Создание бегущей строки Создание бегущей картинки Вращающиеся автофигуры Вызов таблицы цветов Создание калькулятора Склонение фамилии, имени и отчества

Вывод даты и времени_1 Вывод даты и времени_2 Получение системной даты Извлечение даты и часов Функция ДатаПолная

К сообщению приложен файл: macros.rar(83Kb)

ГЛАВА 1. МАКРОСЫ

Запуск макроса с поиском ячейки

Запуск макроса при открытии книги

Запуск макроса при вводе в ячейку «2»

Запуск макроса при нажатии «Ентер»

Добавить в панель свою вкладку «Надстройки» (Формат ячейки)

ГЛАВА 2. РАБОТА С ФАЙЛАМИ (Т.Е.ОБМЕН ДАННЫМИ С ТХТ, RTF, XLS И Т.Д.)

Проверка наличия файла по указанному пути_1

Проверка наличия файла по указанному пути_2

Проверка наличия файла по указанному пути_3

Поиск нужного файла_1

Поиск нужного файла_2

Поиск нужного файла_3

Поиск нужного файла_4

Автоматизация удаления файлов

Произвольный текст в строке состояния

Восстановление строки состояния

Бегущая строка в строке состояния

Быстрое изменение заголовка окна

Быстрое изменение заголовка окна_2

Изменение заголовка окна (со скрытием названия файла)

Возврат к первоначальному заголовку

Что открыто в данный момент

Работа с текстовыми файлами

Запись и чтение текстового файла

Обработка нескольких текстовых файлов

Определение конца строки текстового файла

Копирование из текстового файла в эксель

Копирование содержимого в текстовый файл_1

Копирование содержимого в текстовый файл_2

Экспорт данных в HТМL

Создание резервных копий ценных файлов

Подсчет количества открытий файла

Вывод пути к файлу в активную ячейку

Копирование содержимого файла RTF в эксель

Копирование данных из закрытой книги

Извлечение данных из закрытого файла

Поиск слова в файлах

Создание текстового файла и ввод текста в файл

Создание текстового файла и ввод текста (определение конца файла)

Создание документов Word на основе таблицы Excel

Команды создания и удаления каталогов

Получение  текущего каталога

Посмотреть все файлы в каталоге_1

Посмотреть все файлы в каталоге_2

Посмотреть все файлы в каталоге_3

ГЛАВА 3. РАБОЧАЯ ОБЛАСТЬ MICROSOFT EXCEL

Количество имен рабочей книги

Защита рабочей книги

Запрет печати книги

Открытие книги (или текстовых файлов)

Открытие книги и добавление в ячейку А1 текста

Сколько книг открыто

Закрытие всех книг

Закрытие рабочей книги только при выполнении условия

Сохранение рабочей книги с именем, представляющим собой текущую дату

Сохранена ли рабочая книга

Создать книгу с одним листом

Удаление ненужных имен

Быстрое размножение рабочей книги

Сортировка листов

Поиск максимального значения на всех листах книги

Проверка наличия защиты рабочего листа

Список отсортированных листов

Создать новый лист_1

Копирование листа в книге

Копирование листа в новую книгу (создается)

Перемещение листа в книге

Перемещение нескольких листов в новую книгу

Заменить существующий файл

Вставка колонтитула с именем книги, листа и текущей датой

Существует ли лист

Существует ли лист_2

Вывод количества листов в активной книге

Вывод количества листов в активной книге в виде гиперссылок

Вывод имен активных листов по очереди

Вывод имени и номеров листов текущей книги

Сделать лист невидимым

Сколько страниц на всех листах?

Копирование строк на другой лист

Копирование столбцов на другой лист

Подсчет количества ячеек, содержащих указанные значения_1

Подсчет количества ячеек в диапазоне, содержащих указанные значения_2

Подсчет количества видимых ячеек в диапазоне

Определение количества ячеек в диапазоне и суммы их значений

Подсчет количества ячеек

Автоматический пересчет данных таблицы при изменении ее значений

Ввод данных в ячейки

Ввод данных с использованием формул

Ввод текстоввых данных в ячейки

Вывод в ячейки названия книги, листа и количества листов

Удаление пустых строк_1

Удаление пустых строк_2

Удаление пустых строк_3

Удаление строки по условию

Удаление используемых скрытых строк или строк с нулевой высотой

Удаление дубликатов по маске

Выделение диапазона над текущей ячейкой

Выделение диапазона над текущей ячейкой_2

Выделение отрицательных значений

Выделение диапазона и использование абсолютных адресов

Выделение ячеек через интервал_2

Движение по ячейкам

Поиск ближайшей пустой ячейки столбца

Поиск максимального значения

Поиск и замена по шаблону

Поиск значения с отображением результата в отдельном окне

Поиск с выделением найденных данных_1

Поиск с выделением найденных данных_2

Поиск по условию в диапазоне

Поиск последней непустой ячейки диапазона

Поиск последней непустой ячейки столбца

Поиск последней непустой ячейки строки

Поиск ячейки синего цвета в диапазоне

Поиск наличия значения в столбце

Поиск совпадений в диапазоне

Поиск ячейки в диапазоне_1

Поиск  ячейки в диапазоне_2

Поиск приближенного значения в диапазоне

Поиск начала и окончания диапазона, содержащего данные

Автоматическая замена значений

Быстрое заполнение диапазона (массив)

Заполнение через интервал(массив)

Заполнение указанного диапазона(массив)

Заполнение диапазона(массив)

Расчет суммы первых значений диапазона

Размещение в ячейке электронных часов

«Будильник»

Адрес активной ячейки

Координаты активной ячейки

Формула активной ячейки

Получение из ячейки формулы

Тип данных ячейки

Вывод адреса конца диапазона

Получение информации о выделенном диапазоне

Создание изменяемого списка (таблица)

Умножение выделенного диапазона на 2

Одновременное умножение всех данных диапазона

Деление диапазона на 100

Суммирование данных только видимых ячеек

Сумма ячеек с числовыми значениями

При суммировании — курсор внутри диапазона

Начисление процентов в зависимости от суммы_1

Начисление процентов в зависимости от суммы_2

Начисление процентов в зависимости от суммы_3

Сводный пример расчета комиссионного вознаграждения

Движение по диапазону

Сдвиг от выделенной ячейки

Создание заливки диапазона

Подбор параметра ячейки

Разбиение диапазона

Объединение данных диапазона

Объединение данных диапазона_2

Узнать максимальную колонку или строку.

Ограничение возможных значений диапазона

Тестирование скорости чтения и записи диапазонов

Открыть MsgBox при выборе ячейки

Скрытие строки

Скрытие нескольких строк

Скрытие столбца

Скрытие нескольких столбцов

Скрытие строки по имени ячейки

Скрытие нескольких строк по адресам ячеек

Скрытие столбца по имени ячейки

Скрытие нескольких столбцов по адресам ячеек

Мигание ячейки

ГЛАВА 4. РАБОТА С ПРИМЕЧАНИЯМИ

Вывод на экран всех примечаний рабочего листа

Функция извлечения комментария

Список примечаний защищенных листов

Перечень примечаний в отдельном списке_1

Перечень примечаний в отдельном списке_2

Перечень примечаний в отдельном списке_3

Подсчет количества примечаний_1

Подсчет примечаний_3

Выделение ячеек с примечаниями

Отображение всех примечаний

Изменение цвета примечаний

Добавление примечаний

Добавление примечаний в диапазон по условию

Перенос комментария в ячейку и обратно

Перенос значений из ячейки в комментарий_1

Перенос значений из ячейки в комментарий_2

ГЛАВА 5 . ПОЛЬЗОВАТЕЛЬСКИЕ ВКЛАДКИ НА ЛЕНТЕ

Дополнение панели инструментов

Добавление кнопки на панель инструментов

Панель с одной кнопкой

Панель с двумя кнопками

Создание панели справа

Вызов предварительного просмотра

Создание пользовательского меню (вариант 1)

Создание пользовательского меню (вариант 2)

Создание пользовательского меню (вариант 3)

Создание пользовательского меню (вариант 4)

Создание пользовательского меню (вариант 5)

Создание списка пунктов главного меню Excel

Создание списка пунктов контекстных меню

Отображение панели инструментов при определенном условии

Скрытие и отображение панелей инструментов

Создать подсказку к моим кнопкам

Создание меню на основе данных рабочего листа

Создание контекстного меню

Блокировка контекстного меню

Добавление команды в меню Сервис

Добавление команды в меню Вид

Создание панели со списком

Мультфильм с помощником в главной роли

Дополнение помощника текстом, заголовком, кнопкой и значком

Новые параметры помощника

Использование помощника для выбора цвета заливки

ГЛАВА 6. ДИАЛОГОВЫЕ ОКНА

Функция INPUTBOX (через ввод значения)

Настройка ввода данных в диалоговом окне

Открытие диалогового окна (“Открыть файл”)_1

Вызов броузера из Экселя

Диалоговое окно ввода данных

Значения по умолчанию

ГЛАВА 7.ФОРМАТИРОВАНИЕ ТЕКСТА. ТАБЛИЦЫ. ГРАНИЦЫ И ЗАЛИВКА.

Вывод списка доступных шрифтов

Выбор из текста всех чисел

Прописная буква только в начале текста

Подсчет количества повторов искомого текста

Выделение из текста произвольного элемента

Отображение текста «задом наперед»

Запуск таблицы символов из Excel

ГЛАВА 8 ИНФОРМАЦИЯ О ПОЛЬЗОВАТЕЛЕ, КОМПЬЮТЕРЕ, ПРИНТЕРЕ И Т.Д.

Получить имя пользователя

Вывод разрешения монитора

Получение информации об используемом принтере

Просмотр информации о дисках компьютера

ГЛАВА 9. ДИАГРАММЫ

Построение диаграммы с помощью макроса

Сохранение диаграммы в отдельном файле

Построение и удаление диаграммы нажатием одной кнопки

Применение случайной цветовой палитры

Эффект прозрачности диаграммы

Построение диаграммы на основе данных нескольких рабочих листов

Создание подписей к данным диаграммы

ГЛАВА 10. РАЗНЫЕ ПРОГРАММЫ.

Программа для составления кроссвордов

Игра «Минное поле»

Игра «Угадай животное»

Расчет на основании ячеек определенного цвета

ГЛАВА 11. ДРУГИЕ ФУНКЦИИ И МАКРОСЫ

Вызов функциональных клавиш

Расчет среднего арифметического значения

Перевод чисел в «деньги»

Поиск ближайшего понедельника

Подсчет количества полных лет

Расчет средневзвешенного значения

Преобразование номера месяца в его название

Использование относительных ссылок

Преобразование таблицы Excel в HТМL-формат

Генератор случайных чисел

Случайные числа — на основании диапазона

Применение функции без ввода ее в ячейку

Подсчет именованных объектов

Включение автофильтра с помощью макроса

Создание бегущей строки

Создание бегущей картинки

Вращающиеся автофигуры

Вызов таблицы цветов

Создание калькулятора

Склонение фамилии, имени и отчества

ГЛАВА 12. ДАТА И ВРЕМЯ

Вывод даты и времени_1

Вывод даты и времени_2

Получение системной даты

Извлечение даты и часов

Функция ДатаПолная

 

ГЛАВА 1. МАКРОСЫ

Запуск макроса с поиском ячейки

' Sub  GotoFixedCell:

' Делает активной ячейку, содержащую значение vVariant на

' рабочем листе sSheetName в активной рабочей книге.

'

' Note: Содержимое ячеек интерпретируется как 'значение'!

'

Public Sub GotoFixedCell(vValue As Variant, sSheetName As String)

  Dim c As Range, cStart As Range, cForFind As Range

  Dim i As Integer

 

  On Error GoTo errhandle:

 

  Set cForFind = Worksheets(sSheetName).Cells   ' Диапазон поиска

     With cForFind

       Set c = .Find(What:=vValue, After:=ActiveCell, LookIn:=xlValues, _

                LookAt:= xlРart, SearchOrder:=xlByRows,_

                SearchDirection:=xlNext, MatchCase:=False)

       Set cStart = c

       While Not c Is Nothing

         Set c = .FindNext(c)

         If c.Address = cStart.Address Then

           c.Select

           Exit Sub

         End If

       Wend

     End With

  Exit Sub

  errНandle:

    MsgBox Err.Descriрtion, vbExclamation, "Error #" & Err.Number

End Sub

Запуск макроса при открытии книги

Sub Auto_Oрen()

Запуск макроса при вводе в ячейку «2»

Private Sub Worksheet_Change(ByVal Target As Range)

    Dim w As Object

    'On Error Resume Next

    If Range("A1").Value = 2 Then

        MsgBox "Ох! Значение ячейки стало равным 2-м!"

        MsgBox "Я попробую сейчас открыть модуль с процедурой, которая все это делает!"

        Application.VBE.MainWindow.SetFocus

        Application.VBE.Windows(1).SetFocus

        SendKeys "{F7}", True

    End If

End Sub

Запуск макроса при нажатии «Ентер»

в модуле листа

Private Sub Worksheet_Selectiоnchange(ByVal Target As Range)

Application.OnKey "{~}", "StartEnter"

End Sub

 

в модуле книги

Sub StartEnter()

MsgBox ("sadfsdfsf")

End Sub

Добавить в панель свою вкладку «Надстройки» (Формат ячейки)

Код в модуле рабочего листа

Sub Worksheet_Change(ByVal Target As Excel.Range)

   Call updаtеToolbar

End Sub

 

Sub Worksheet_Selectiоnchange(ByVal Target As Excel.Range)

   Call updаtеToolbar

End Sub

Листинг 2.43. Код в стандартном модуле

Sub FastChangeNumberFormat()

   Dim bar As CommandBar

   Dim button As CommandBarButton

 

   ' Удаление существующей панели инструментов (если она есть)

   On Error Resume Next

   CommandBars("Числовой формат").Delete

   On Error GoTo 0

 

   ' Формирование новой панели

   Set bar = CommandBars.Add

   With bar

      .Name = "Числовой формат"

      .Visible = True

   End With

   ' Создание кнопки

   Set button = CommandBars("Числовой формат").Controls.Add _

    (Type:=msoControlButton)

   With button

      .Caption = ""

      .OnAction = "ChangeNumFormat"

      .TooltipText = "Щелкните для изменения числового формата"

      .Style = msoButtonCaption

   End With

   ' Обновление созданной панели инструментов

   Call updаtеToolbar

End Sub

 

Sub updаtеToolbar()

   ' Обновление панели инструментов (если она создана)

   On Error Resume Next

   ' Изменение заголовка кнопки (на название формата выделенной ячейки)

   CommandBars("Числовой формат").Controls(1).Caption = _

    ActiveCell.NumberFormat

End Sub

 

Sub ChangeNumFormat()

   ' Отображение диалогового окна изменения формата ячейки

   Application.Dialogs(xlDialogFormatNumber).Show

   Call updаtеToolbar

End Sub

 

ГЛАВА 2. РАБОТА С ФАЙЛАМИ (Т.Е.ОБМЕН ДАННЫМИ С ТХТ, RTF, XLS И Т.Д.)

Проверка наличия файла по указанному пути_1

Sub VerifyFileLocation()

   Dim strFileName As String

   Dim strFileTitle As String

   ' Имя и путь искомого файла

   strFileTitle = "primer.xls"

   strFileName = "C:\Документы\primer.xls"

   ' Проверка наличия файла (функция Dir возвращает пустую _

    строку, если по указанному пути файл обнаружить не удалось)

   If Dir(strFileName) <> "" Then

      MsgBox "Файл " & strFileTitle & " найден"

   Else

      MsgBox "Файл " & strFileTitle & " не найден"

   End If

End Sub

Проверка наличия файла по указанному пути_2

Sub VerifyFileLocation1()

   Dim strFileName As String

   ' Имя искомого файла

   strFileName = "C:\Документы\primer.xls"

   ' Проверка наличия файла (функция Dir возвращает пустую _

    строку, если по указанному пути файл обнаружить не удалось)

   If Dir(strFileName) <> "" Then

      MsgBox "Файл " & strFileName & " найден"

   Else

      MsgBox "Файл " & strFileName & " не найден"

   End If

End Sub

Проверка наличия файла по указанному пути_3

Sub Check_Disk()

On Error Resume Next

If Dir("\\192.168.1.200\c\", vbSystem) <> "" Then

If Err = 52 Then

Err.Clear

MsgBox "Диска нет!", 48, "Ошибка"

Exit Sub

End If

If Err <> 0 Then

MsgBox "Произошло ошибка!", 48, "Ошибка"

Exit Sub

Else

On Error GoTo 0

MsgBox "Диск есть!", 64, ""

End If

End If

End Sub

 

Поиск нужного файла_1

Sub FileSearch()

   Dim strFileName As String

   Dim strFolder As String

   Dim strFullPath As String

 

   ' Задание имени папки для поиска

   strFolder = InputBox("Определите папку:")

   If strFolder = "" Then Exit Sub

   ' Задание имени файла для поиска

   strFileName = Application.InputBox("Введите имя файла:")

   If strFileName = "" Then Exit Sub

   ' При необходимости дополняем имя папки "\"

   If Right(strFolder, 1) <> "\" Then strFolder = strFolder & "\"

 

   ' Полный путь файла

   strFullPath = strFolder & strFileName

 

   ' Вывод окна с отчетом о поиске средствами VBA

webhamster.ru

Полезные макросы Excel. Простые возможности VBA, которые я часто использую

Как запустить макрос при изменении ячейки?

Я начал создавать этот сайт, как записную книжку по удобным возможностям Excel. В любой момент, можно освежить свои знания по той или иной возможности программы зайдя на сайт, плюс можно отправить ссылку на статью друзьям или коллегам, которые просят помочь по Excel. Довольно быстро аудитория сайта выросла и как я вижу, записанная информация полезна не только мне и еще нескольким людям, но и множеству незнакомых мне людей и высоко котируется поисковиками. Если по возможностям Excel, я в себе уверен, то специалистом очень высокого уровня по VBA себя назвать не могу. Поэтому хотелось бы создать большую статью помощник, где я запишу полезные макросы, которые я часто использую. Уверен такой сборник возможностей VBA, будет полезен не только мне.

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

Как убрать отображение выполнения действий макроса?

Выключите отображение действий макроса на экране простой функцией. Это не только улучшит выполнение визуально, но и значительно ускорит выполнение макроса.

Sub Makros1() Application.ScreenUpdating = 0 'Ваш код Application.ScreenUpdating = 1 End Sub

Не забудьте включить функцию в конце макроса

Как убрать выделение копирования после выполнения макроса?

Если вы в своем макросе все такие выделяете диапазон для копирования и вставки. Не забудьте в конце макроса поставить отключение выделения

Sub Makros1() 'Ваш код Application.CutCopyMode = 0 End Sub
Полезные макросы. Как найти последнюю строку или столбец диапазона

Эта конструкция поможет легко найти номер последней строки или столбца заполненного диапазона. Особенно удобно применять в циклах, вам не нужно задавать 1000 строк цикла с запасом, Excel сам найдет где конец диапазона при помощи такой конструкции:

Sub makros1() Dim mLastRow As Long Dim nLastCol As Long mLastRow = Cells(Rows.Count, 1).End(xlUp).Row 'Находит номер последней строки заполненного диапазона nLastCol= Cells(1, Columns.Count).End(xlToLeft).Column 'Находит номер последнего заполненного столбца диапазона End Sub

Причем, я сразу объявляю переменную как Long (длина 2 147 483 647), чтобы не попасть в ту ситуация когда популярного Integer может не хватить (32 767) для больших таблиц.

Надо так же обратить внимание, что поиск происходит по первому столбцу или первой строке, выберите нужный номер, для верного определения.

Цикл For и проверка условия в цикле

Если вы нашли последние номера строк и столбцов диапазонов, вы можете использовать их в циклах. Например, надо пробежать по первому столбцу и посчитать кол-во пустых ячеек.

Sub makros1() Application.ScreenUpdating = 0 Dim mLastRow As Long Dim Kol As Long 'Переменная количества Dim i As Long 'Переменная цикла mLastRow = Cells(Rows.Count, 1).End(xlUp).Row Kol = 0 For i = 1 To mLastRow     If Cells(i, 1).Value = "" Then      Kol = Kol + 1     End If Next i MsgBox Kol Application.ScreenUpdating = 1 End Sub

Здесь используется еще и Msgbox при помощи этой возможности можно выводить данные отдельным окошком. Для моего примера получится так:

 Подсчет времени выполнения макроса
Sub makros1() TimeStart = Now TimeFinish = Now MsgBox "Time: " & Format(TimeFinish - TimeStart, "h:mm:ss") End Sub

MsgBox выдает такой результат:

Очень удобно засекать время выполнения макросов для последующей оптимизации.

 

Вот такие полезные макросы, я использую очень часто. Постепенно буду расширять этот список. Всем эффективной автоматизации!

 

Поделитесь нашей статьей в ваших соцсетях:

Похожие статьи

(Visited 2 503 times, 6 visits today)

Как запустить макрос при изменении ячейки?

excelworks.ru

Как автоматизировать рутинные задачи в Excel с помощью макросов

Excel располагает мощнейшей, но в то же время очень редко используемой, возможностью создавать автоматически выполняющиеся последовательности действий с помощью макросов. Макрос – идеальный выход, если Вы имеете дело с однотипной задачей, которая повторяется множество раз. Например, обработка данных или форматирование документов по стандартизированному шаблону. При этом Вам не требуется знание языков программирования.

Вам уже любопытно, что такое макрос, и как он работает? Тогда смелей вперёд – далее мы шаг за шагом проделаем весь процесс создания макроса вместе с Вами.

Что такое Макрос?

Макрос в Microsoft Office (да, этот функционал работает одинаково во многих приложениях пакета Microsoft Office) – это программный код на языке программирования Visual Basic for Applications (VBA), сохранённый внутри документа. Чтобы было понятнее, документ Microsoft Office можно сравнить со страницей HTML, тогда макрос – это аналог Javascript. То, что Javascript умеет делать с данными в формате HTML, находящимися на web-странице, очень похоже на то, что макрос может делать с данными в документе Microsoft Office.

Макросы способны выполнить практически любые действия в документе, которые Вы только можете пожелать. Вот некоторые из них (очень малая часть):

  • Применять стили и форматирование.
  • Выполнять различные операции с числовыми и текстовыми данными.
  • Использовать внешние источники данных (файлы баз данных, текстовые документы и т.д.)
  • Создавать новый документ.
  • Проделывать все вышеперечисленные действия в любой их комбинации.

Создание макроса – практический пример

Для примера возьмём самый обычный файл CSV. Это простая таблица 10х20, заполненная числами от 0 до 100 с заголовками для столбцов и строк. Наша задача превратить этот набор данных в презентабельно отформатированную таблицу и сформировать итоги в каждой строке.

Как уже было сказано, макрос – это код, написанный на языке программирования VBA. Но в Excel Вы можете создать программу, не написав и строчки кода, что мы и сделаем прямо сейчас.

Чтобы создать макрос, откройте View (Вид) > Macros (Макросы) > Record Macro (Запись макроса…)

Дайте своему макросу имя (без пробелов) и нажмите ОК.

Начиная с этого момента, ВСЕ Ваши действия с документом записываются: изменения ячеек, пролистывание таблицы, даже изменение размера окна.

Excel сигнализирует о том, что включен режим записи макроса в двух местах. Во-первых, в меню Macros (Макросы) – вместо строки Record Macro (Запись макроса…) появилась строка Stop Recording (Остановить запись).

Во-вторых, в нижнем левом углу окна Excel. Иконка Стоп (маленький квадратик) указывает на то, что включен режим записи макроса. Нажатие на неё остановит запись. И наоборот, когда режим записи не включен, в этом месте находится иконка для включения записи макроса. Нажатие на неё даст тот же результат, что и включение записи через меню.

Теперь, когда режим записи макроса включен, давайте займёмся нашей задачей. Первым делом, добавим заголовки для итоговых данных.

Далее, введите в ячейки формулы в соответствии с названиями заголовков (даны варианты формул для англоязычной и русифицированной версии Excel, адреса ячеек – всегда латинские буквы и цифры):

  • =SUM(B2:K2) или =СУММ(B2:K2)
  • =AVERAGE(B2:K2) или =СРЗНАЧ(B2:K2)
  • =MIN(B2:K2) или =МИН(B2:K2)
  • =MAX(B2:K2) или =МАКС(B2:K2)
  • =MEDIAN(B2:K2) или =МЕДИАНА(B2:K2)

Теперь выделите ячейки с формулами и скопируйте их во все строки нашей таблицы, потянув за маркер автозаполнения.

После выполнения этого действия в каждой строке должны появиться соответствующие итоговые значения.

Далее, мы подведем итоги для всей таблицы, для этого делаем ещё несколько математических действий:

Соответственно:

  • =SUM(L2:L21) или =СУММ(L2:L21)
  • =AVERAGE(B2:K21) или =СРЗНАЧ(B2:K21) — для расчёта этого значения необходимо взять именно исходные данные таблицы. Если взять среднее значение из средних по отдельным строкам, то результат будет другим.
  • =MIN(N2:N21) или =МИН(N2:N21)
  • =MAX(O2:O21) или =МАКС(O2:O21)
  • =MEDIAN(B2:K21) или =МЕДИАНА(B2:K21) — считаем, используя исходные данные таблицы, по причине указанной выше.

Теперь, когда с вычислениями закончили, займёмся форматированием. Для начала для всех ячеек зададим одинаковый формат отображения данных. Выделите все ячейки на листе, для этого воспользуйтесь комбинацией клавиш Ctrl+A, либо щелкните по иконке Выделить все, которая находится на пересечении заголовков строк и столбцов. Затем нажмите Comma Style (Формат с разделителями) на вкладке Home (Главная).

Далее, изменим внешний вид заголовков столбцов и строк:

  • Жирное начертание шрифта.
  • Выравнивание по центру.
  • Заливка цветом.

И, наконец, настроим формат итоговых значений.

Вот так это должно выглядеть в итоге:

Если Вас все устраивает, остановите запись макроса.

Поздравляем! Вы только что самостоятельно записали свой первый макрос в Excel.

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

Чтобы очистить все ячейки от данных, щёлкните правой кнопкой мыши по иконке Выделить все, которая находится на пересечении заголовков строк и столбцов, и из контекстного меню выберите пункт Delete (Удалить).

Теперь наш лист полностью очищен от всех данных, при этом макрос остался записан. Нам нужно сохранить книгу, как шаблон Excel с поддержкой макросов, который имеет расширение XLTM.

Важный момент! Если Вы сохраните файл с расширением XLTX, то макрос в нём работать не будет. Кстати, можно сохранить книгу как шаблон Excel 97-2003, который имеет формат XLT, он тоже поддерживает макросы.

Когда шаблон сохранён, можно спокойно закрыть Excel.

Выполнение макроса в Excel

Прежде чем раскрыть все возможности созданного Вами макроса, считаю правильным обратить внимание на пару важных моментов, касающихся макросов в целом:

  • Макрос может нанести вред.
  • Ещё раз прочти предыдущий пункт.

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

Чтобы запустить наш макрос, форматирующий данные, откройте файл шаблона, который мы создали в первой части этого урока. Если у Вас стандартные настройки безопасности, то при открытии файла сверху над таблицей появится предупреждение о том, что запуск макросов отключен, и кнопка, чтобы включить их выполнение. Так как шаблон мы сделали самостоятельно и себе мы доверяем, то нажимаем кнопку Enable Content (Включить содержимое).

Следующим шагом, мы импортируем последний обновлённый набор данных из файла CSV (на основе такого файла мы создавали наш макрос).

При выполнении импорта данных из CSV-файла, возможно, Excel попросит Вас настроить некоторые параметры для правильной передачи данных в таблицу.

Когда импорт будет закончен, зайдите в меню Macros (Макросы) на вкладке View (Вид) и выберите команду View Macros (Макросы).

В открывшемся диалоговом окне мы увидим строку с именем нашего макроса FormatData. Выберите его и нажмите Run (Выполнить).

Когда макрос начнёт работать, Вы увидите, как табличный курсор прыгает с ячейки на ячейку. Через несколько секунд с данными будут проделаны те же операции, что и при записи макроса. Когда всё будет готово, таблица должна выглядеть так же, как и оригинал, который мы форматировали вручную, только с другими данными в ячейках.

Заглянем под капот: Как работает макрос?

Как уже не раз упоминалось, макрос — это программный код на языке программирования Visual Basic for Applications (VBA). Когда Вы включаете режим записи макроса, Excel фактически записывает каждое сделанное Вами действие в виде инструкций на языке VBA. По-простому, Excel пишет программный код вместо Вас.

Чтобы увидеть этот программный код, нужно в меню Macros (Макросы) на вкладке View (Вид) кликнуть View Macros (Макросы) и в открывшемся диалоговом окне нажать Edit (Изменить).

Откроется окно Visual Basic for Applications, в котором мы увидим программный код записанного нами макроса. Да, Вы правильно поняли, здесь этот код можно изменить и даже создать новый макрос. Те действия, которые мы совершали с таблицей в этом уроке, вполне можно записать с помощью автоматической записи макроса в Excel. Но более сложные макросы, с тонко настроенной последовательностью и логикой действий требуют программирования вручную.

Добавим ещё один шаг к нашей задаче…

Представьте, что наш исходный файл с данными data.csv создаётся автоматически каким-то процессом и сохраняется на диске всегда в одном и том же месте. Например, C:\Data\data.csv – путь к файлу с обновляемыми данными. Процесс открытия этого файла и импорта данных из него тоже можно записать в макрос:

  1. Откройте файл шаблона, в котором мы сохранили макрос — FormatData.
  2. Создайте новый макрос с именем LoadData.
  3. В процессе записи макроса LoadData сделайте импорт данных из файла data.csv – как мы это делали в предыдущей части урока.
  4. Когда импорт будет завершён, остановите запись макроса.
  5. Удалите все данные из ячеек.
  6. Сохраните файл, как шаблон Excel с поддержкой макросов (расширение XLTM).

Таким образом, запустив этот шаблон, Вы получаете доступ к двум макросам – один загружает данные, другой их форматирует.

Если есть желание заняться программированием, Вы можете объединить действия этих двух макросов в один – просто скопировав код из LoadData в начало кода FormatData.

Оцените качество статьи. Нам важно ваше мнение:

office-guru.ru

Сборник 101 готовый макрос в Excel - 101 макрос в Excel - Готовые макросы - Макросы

Работа с книгами

Макрос 1. Создание новой рабочей книги с нуляМакроc 2. Сохранение книги при изменении определенной ячейки/диапазонаМакрос 3. Сохранение рабочей книги перед закрытиемМакрос 4. Защита рабочего листа в книге перед закрытиемМакрос 5. Снятие защиты с листа при открытии Excel-файлаМакрос 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. Найдите и выберите первую пустую строку или столбецМакрос 41. Применить дополнительный цвет заливкиМакрос 42. Отсортировать диапазоны по двойному щелчкуМакрос 43. Ограничение диапазона прокрутки в той или иной областиМакрос 44. Автоматически задать область печати листа

Работа с данными

Макрос 45. Копирование и вставка диапазонаМакрос 46. Преобразование всех формул в диапазоне в значенияМакрос 47. Преобразуем текстовых значений в числовыеМакрос 48. Преобразование тире в минусМакрос 49. Удаляем лишние пробелы из всех ячеек в диапазонеМакрос 50. Отсекаем слева 5 знаков в каждой ячейки диапазонаМакрос 51. Добавляем в ячейку недостающие нулиМакрос 52. Заменить пустые ячейку нулёмМакрос 53. Добавление текста в начало или конец ячейкиМакрос 54. Создание макроса преобразования данныхМакрос 55. Очистка данных (непечатаемые символы)Макрос 56. Выделим дубликаты в диапазоне данныхМакрос 57. Скрываем повторяющиеся строкиМакрос 58. Выборочно скрываем стрелки автофильтраМакрос 59. Копируем отфильтрованные строки в новую книгуМакрос 60. Создание нового листа для каждого элемента в АвтофильтреМакрос 61. Показать отфильтрованные столбцы в строке состояния

Работа со сводными таблицами

Макрос 62: Создание обратной совместимости сводной таблицыМакрос 63. Обновление всех сводных таблиц книгиМакрос 64. Создание «описи» всех сводной таблицы книгиМакрос 65. Создаем все сводные таблицы, используя тот же кэш данныхМакрос 66. Скрываем все промежуточные итоги в сводной таблицеМакрос 67. Изменяем названия данных всех полей своднойМакрос 68. Принудительное суммирование для всех данных своднойМакрос 69. Применить числовой формат для всех элементов данныхМакрос 70. Сортировка  полей сводной в алфавитном порядкеМакрос 71. Применить пользовательскую сортировку к элементам данныхМакрос 72: Ставим защиту на сводную таблицуМакрос 73. Применять ограничения сводного поляМакрос 74. Автоматическое удаление листов с детализацией своднойМакрос 75. Печать сводной таблицы для каждого элемента фильтраМакрос 76. Создание нового файла для каждого элемента фильтраМакрос 77. Готовим диапазон данных для сводной таблицы

Работа с диаграммами и графиками

Макрос 78. Изменение размера  диаграмм на рабочем листеМакрос 79. Привязываем график к определенному диапазонуМакрос 80. Создание набора бессвязных диаграммМакрос 81. Печать всех диаграмм на рабочем листеМакрос 82. Отмечаем лучшее и худшее значение наМакрос 83. Одинаковые цвета для значений на разных диаграммахМакрос 84. Соответствие цвета диаграмм цвету диапазонов

Отправка писем из Excel

Макрос 85. Отправка активной книги почтой (вложение)Макрос 86. Отправка диапазон значений в качестве вложенияМакрос 87. Отправка одного листа в качестве вложенияМакрос 88. Отправить письмо с ссылкой на наши файлыМакрос 89: Рассылка писем с добавлением адресов в наш список контактовМакрос 90. Сохранение всех вложений в отдельной папкеМакрос 91. Сохранение определенных вложений в папку

Взаимодействие с другими приложениями Office

Макрос 92. Запуск запроса доступа из ExcelМакрос 93. Запуск макроса Access из ExcelМакрос 94. Открытие отчета Access из ExcelМакрос 95. Открытие формы доступа из ExcelМакрос 96. Сжатие базы данных Access из ExcelМакрос 97. Отправка данных Excel в документ в формате WordМакрос 98. Делаем Слияние с документом в формате WordМакрос 99. Отправка данных Excel в презентации PowerPointМакрос 100. Отправка  Excel диаграмм в PowerPoint презентацииМакрос 101. Преобразование рабочей книги в презентации PowerPoint

Взаимодействие с другими приложениями Officeнаучимся работать с Word, Access и PowerPointМакрос 92. Запуск запроса доступа из ExcelМакрос 93. Запуск макроса Access из ExcelМакрос 94. Открытие отчета Access из ExcelМакрос 95. Открытие формы доступа из Excel

akademia-excel.ucoz.net

Полезные макросы для Excel - Александр Потокин

Макрос для интерактивного добавления фотографий

При наличии на листе ячеек, содержащих имя фотографии в формате jpg, макрос вставляет в данную ячейку указанную фотографию.

Удобно использовать в сводных таблицах: создаем поле группировки "Фото", в котором выводим наименование файлов картинок, макрос вызываем событием Worksheet_PivotTableUpdate. При удалении группировки по столбцу "Фото" все картинки на листе будут удалены. При любом изменении структуры сводной таблицы, фотографии будут перезакреплены.

Sub foto()     On Error GoTo lab    Application.StatusBar = "Проставляем фото"    Application.ScreenUpdating = False    For Each Pic In ActiveSheet.Shapes 'удаляем все картинки на текущем листе        If Pic.Type = msoPicture Or Pic.Type = msoLinkedPicture Then Pic.Delete    Next    ActiveSheet.UsedRange.EntireRow.AutoFit    'проверяем наличие поля "Фото" (для сводной не использовать)    If ActiveSheet.UsedRange.Find(what:="Фото", LookAt:=xlWhole) Is Nothing Then GoTo lab    'оптимизация поиска при работе со сводной    'Dim pt As PivotTable    'Set pt = ActiveSheet.PivotTables(1)    'проставляем фото из указанной директории    For Each c In ActiveSheet.UsedRange 'In pt.PivotFields("Фото").DataRange.Cells        If InStr(c.Value, ".jpg") > 0 Then            c.ColumnWidth = 10            filepath = "c:\photo\" & LTrim(Left(c.Value, InStr(c.Value, ".jpg") + 3)) 'указать каталог с фотографиями            on error goto er            Set ph = c.Parent.Pictures.Insert(filepath)            on error goto lab            ph.Top = c.Top: ph.Left = c.Left: k = ph.Width / ph.Height            ph.Width = c.Width: ph.Height = ph.Width / k            c.EntireRow.RowHeight = ph.Height + 1            ph.Placement = xlMoveAndSize            Application.StatusBar = "Вставляю фото. Выполнено " & Round((c.Row / ActiveSheet.UsedRange.Rows.Count * 100), 2) & " %. Обработано " & c.Row & " товаров из " & ActiveSheet.UsedRange.Rows.Count            'Application.StatusBar = "Выводим фото. Выполнено " & Round((c.Row / pt.PivotFields("Фото").DataRange.Rows.Count * 100), 2) & " %. Обработано " & c.Row & " строк из " & pt.PivotFields("Фото").DataRange.Rows.Count

        End If        er: set ph=nothing    Nextlab: Application.StatusBar = "Готово"    If (Err.Number <> 1004) And (Err.Number <> 0) Then MsgBox "Произошла ошибка # " & Str(Err.Number) & " сгенерирована " & Err.Source & Chr(13) & Err.Description    Application.ScreenUpdating = TrueEnd Sub

Макрос для формализации сводной таблицы

Заполняет пустые ячейки значениями сверху вниз.

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

Sub Fill_The_Name()Dim s As VariantDim i, j As Integer    s = ActiveCell.Value    For j = ActiveCell.Column To Selection.Columns.count + ActiveCell.Column        For i = ActiveCell.Row + 1 To ActiveCell.SpecialCells(xlLastCell).Row            If (IsEmpty(Cells(i, j))) Or (Cells(i, j) = " ") Then Cells(i, j) = s Else s = Cells(i, j)        Next i        s = Cells(ActiveCell.Row, j + 1)    Next jEnd Sub

Макрос для удаления скрытых картинок с листа Excel

Если высота картинки меньше 5 уе, то она будет удалена.

Sub Pict_hidden_delete()    Dim Shp As Object    Application.ScreenUpdating = False    On Error Resume Next    For Each Shp In ActiveSheet.Shapes        With Shp        If (.Type = msoPicture) Or (.Type = msoLinkedPicture) Then             If .Height< 5 Then .Delete  'критерий отбора жертвы        End If        End With    Next    Application.ScreenUpdating = TrueEnd Sub

PS работа с картинками в Excel - отдельная песня, правильней использовать СУБД.

Макрос для удаления чуждых символов (иероглифов)

Перед запуском выделить обрабатываемую область листа Excel.

Sub remove_unicode()Dim st, st2 As String    For Each c In Selection        st = ""        For j = 1 To Len(c.Value)            simv = AscW(Mid(c.Value, j, 1))            If (simv > 10) And (simv < 2000) Then st = st +ChrW(simv)        Next j        c.Value = Trim(st)    NextEnd Sub

Макрос для преобразования размерной сетки в построчный формат

Sub transf_razm_setki()'преобразование размерной сетки в построчные размеры для загрузки на сайт'в первом столбце размерная сетка через запятую'во второй столбец выводится размер данной строки

i = 3While Len(Cells(i, 1)) > 0    If InStr(Cells(i, 1), ",") > 0 Then        Rows(i).Select        Application.CutCopyMode = False        Selection.Copy        Rows(i + 1).Select        Selection.Insert Shift:=xlDown        Cells(i + 1, 1) = Trim(Right(Cells(i, 1), Len(Cells(i, 1)) - InStr(Cells(i, 1), ",")))        Cells(i, 2) = Trim(Left(Cells(i, 1), InStr(Cells(i, 1), ",") - 1))    Else: Cells(i, 2) = Cells(i, 1)    End If    i = i + 1WendEnd Sub

www.potok.in

Готовые макросы для паладина WoW. - Макросы в World of Warcraft - Макросы в World of Warcraft - Гаиды World of Warcraft

Готовые макросы для паладина WoW.

Начну с того, как собственно создать макрос:

1.Заходим в главное меню -> Макросы.2.Нажимаем "Создать", выбираем картинку и название.

Все можно начинать.

Первый набор макросов предназначен для каста какого-либо заклинания по определенной цели в рейде или по фокусу (запоминание цели), при этом не теряя своей текущей цели:

-Каст по определенной цели. 

Например вы хотите кинуть на какого-то игрока Торжество:

/cast [target=Никнейм] Торжество/targetlasttarget

Аналогично макрос будет работать для других способностей.

-Каст по фокусу. 

Например нам нужно застанить определенного моба способностью Молот справедливости:

/target focus/cast Молот правосудия/targetlasttarget

Следующий вид макросов помогает использовать какую-либо способность и отменить ее.

-Каст с отменой эффекта

Например мы хотим скинуть стаки дебафа баблом и сделать это быстро, чтобы бос не убил кого-то:

/cast Божественный щит/cancelaura Божественный щит

В итоге первым нажатием вы заюзаете щит на себя, вторым вы его снимете. Гораздо быстрее, чем снимать мышкой.

Аналогичный но, не менее полезный макрос (для паладинов защиты только) для святой клятвы

/cast Святая клятва/cancelaura Святая клятва

Суть в том, что протопаладины получают 3 энергии света от клятвы, но пока ее эффект идет, есть дебаф на создаваемый хил. Этот макрос снимает эффект от клятвы, и мы имеем 3 энергии света, которые можно разрядить в торжество.

Удар воина света + двуручка

#showtooltip Удар воина света /equip (название оружия) /startattack /cast Удар воина света

1 - надевает двуручку 2 - если Удар воина света на кд начинает бить авто атакой 3 - кастует Удар воина света

Танкование: Снятие эффектов, понижающих аггро

#showtooltip Щит небес /cast Щит небес /cancelaura Длань спасения /cancelaura Длань защиты /cancelaura Божественный щит

Снимает все возможные понижающие аггро эффекты, при танковании.

Танкование: Снятие дебаффов в бою

#showtooltip Божественный щит /cancelaura Божественный щит /cast Божественный щит

Снятие дебаффов в бою при танковании (стакующиеся доты, фир и т.д. ) Снимает с себя бедаффы использую божественный щит и мгновенно снимает бафф щита, что бы избежать потери аггро.

Сбить Тотем заземления

#showtooltip Молот правосудия /focus /cleartarget /target Тотем заземления /cast [target=target,exists,harm] Длань возмездия; [target=focus] Молот правосудия /target focus /clearfocus

Этот макрос сбивает граудинг тотем,если таковой имеется, если нет то кастит стан в таргет.

-Макросы для бурста

Приведем пример для ретрика:

За сек 8 до использования макроса призываем клевого парня, копим 3 энергии света и юзаем макрос:

/cast Гнев карателя/cast Фанатизм/use Зелье из крови голема/use 13

Теперь чуть подробнее о /use 13. Это верхний аксессуар.Нижний будет соответственно /use 14.

-Макросы для объявления используемой способности.

Простой пример,мы используем божественного защитника и хотим чтобы это анонсировалось.

/cast Божественный защитник/s Я всех божественно защищаю!!!

Еще есть полезная команда /assist. Например макрос:

/assist Вася/cast Длань возмездия/targetlasttarget

Позволит нам сагрить текущую цель Васи, не теряя своей цели. Зачем это надо другой разговор, в общем использование /assist зависит лишь от ваших нужд.

-Макросы для рейд меток:

/run SetRaidTarget("target", 8 ) - череп/run SetRaidTarget("target", 7 ) - крест

Другие полезные команды:

/stopcasting - прерывает текущий каст/dismount - спешивание/castsequence - после этого оператора записываются способности через запятую,нажимая по макросу мы будем использовать те способности которые сейчас не в кулдауне,начиная с первой в списке через запятую./clearfocus - убирает запоминание цели

-Условия на выполнение

Например мы хотим сделать так,чтобы если наша цель дружественная разрядить в нее торжество,а если враг,то застанить:

/cast [help] Торжество; [harm] Молот правосудия

На самом деле условий гораздо больше и расписывать их я не буду.Ибо как по мне,толку от них не много.

-Модификаторы

/cast [mod:alt] Божественный свет/cast [mod:ctrl] Вспышка света/cast [mod:shift] свет небес

Суть - если использовать макрос с зажатым альтом,то скастуется божественный свет,если с контролом,то флешка и тд.

Следуйте одному правилу: Макросы должны облегчать вам жизнь,а не усложнять ее.

wowglobal.ru