Программирование в Excel — voxt.ru
Как программировать в Excel?
VBA (Visual Basic для приложений) это язык программирования Microsoft Excel. Это платформа, которую мы используем в excel для программирования вещей или задач нашей повседневной работы. У нас есть набор слов для описания наших потребностей, и нам нужно выучить эти слова, чтобы писать программы в Excel.
VBA — это платформа, которую мы используем для написания программы, а строка, которую мы пишем как код, называется макросом. Макрос — это просто фрагмент кода, который инструктирует Excel, что делать.
Сначала включить вкладку разработчика
Доступ к программированию на VBA можно получить, включив вкладку РАЗРАБОТЧИК в Excel. По умолчанию в MS Excel он отключен; нам нужно включить его. Ниже приведен скриншот того же.
Если вкладка «Разработчик» вам не видна, выполните следующие действия, чтобы включить ее в вашей системе.
Шаг 1: Перейти в ФАЙЛ.
Шаг 2: В разделе ФАЙЛ перейдите к ОПЦИИ.
Шаг 3: Вы увидите все окно «Параметры Excel». Выберите Настроить ленту в Excel.
Шаг 4: Установите флажок РАЗРАБОТЧИК, чтобы включить его. Щелкните ОК.
Шаг 5: Вы будете теперь иметь возможность видеть то Вкладка разработчика.
Как записывать макросы в Excel?
Лучший способ начать программирование в Excel — это записать макрос.
Это как наш магнитофон или видеомагнитофон. Он записывает все действия, которые мы делаем, в электронную таблицу, пока мы не нажмем кнопку остановки записи. Хорошо, давайте сейчас приступим к процессу записи.
Вы можете скачать этот шаблон Excel для программирования здесь — Шаблон для программирования Excel
Выполните следующие шаги, чтобы узнать, как записывать макросы в Excel.
Шаг 1: На вкладке «Разработчик» нажмите «Записать макрос».
Шаг 2: Назовите макрос.
После того, как мы нажмем «Запись макроса», мы увидим внизу окно, в котором нас просят дать имя макросу. Называя макрос, мы должны соблюдать определенные правила и условия, которые приведены ниже.
- Имя макроса не должно содержать пробелов.
- Имя макроса не должно начинаться с числового значения.
- Имя макроса не должно содержать никаких специальных символов, кроме подчеркивания.
Шаг 3: Назовите окно макроса
Нам нужно дать собственное имя окну макроса. В окне ниже я дал имя «Recording_Macro». Как мы видим, здесь нет специального символа или пробела.
Шаг 4: Щелкните ОК, чтобы начать запись.
Шаг 5: Выполните действия, которые должны быть записаны в макрос.
В тот момент, когда мы нажимаем ОК, начинается запись того, что мы делаем в Excel.
Первое, что я сделаю в Excel, это выделю ячейку A1. Это первое действие на этом листе.
После выбора ячейки наберу «Добро пожаловать в VBA» в этой камере. Это второе действие в Excel.
Когда я закончу печатать, мне нужно нажать клавишу ввода, чтобы прекратить печатать, поэтому я нажимаю клавишу ввода. В тот момент, когда я нажму клавишу ввода, выбор переключится с ячейки A1 на ячейку A2. Это третье действие в Excel.
Шаг 6: Нажмите на Остановить запись на вкладке Разработчик, чтобы остановить запись макроса.
После этих трех действий я выберу опцию остановки записи на вкладке разработчика.
В тот момент, когда мы нажимаем «Остановить запись», он перестает записывать действия, которые мы делаем в Excel.
Теперь нам нужно пройти через то, что было записано, чтобы понять, как именно программирование работает с Excel. Чтобы увидеть этот код на вкладке «Разработчик», нажмите «Visual Basic» или нажмите комбинацию клавиш «ALT + F11».
Сочетание клавиш Excel для нажатия «Visual Basic».
После нажатия «Visual Basic» или сочетания клавиш, мы можем увидеть окно под окном.
Дважды щелкните модули.
Теперь все записи, которые мы сделали до сих пор, появятся справа.
Как видим, первое слово — «SUB. » Все имена макросов начинаются с «Sub», «Function», «Private» или «Public».
Каждый макрос состоит из двух частей; один — «Голова», а второй — «Хвост». Голова — это имя макроса, а хвост — это конец макроса.
Между этим заголовком и концом макроса excel VBA записал все действия, которые мы сделали. Теперь давайте посмотрим на код построчно.
Просто запомните, каким было наше первое действие после того, как мы начали запись макроса, то есть мы выбрали ячейку A1, поэтому для этого в коде программирования VBA используется диапазон («A1»). Выбрать
После выбора ячейки A11 мы вошли в тест как «Добро пожаловать в VBA», поэтому в коде программирования VBA
ActiveCell.FormulaR1C1 = “Welcome to VBA”
Заметка: R1C1 — это строка 1, столбец 1.
Последним действием было то, что мы нажали клавишу ввода, чтобы выйти из ячейки A1, поэтому она переместилась из ячейки A1 в A2, и код
Range (“A2”). Select
Вот как «макрос записи» записывает все действия с момента начала записи до момента нажатия кнопки «Остановить запись».
Теперь этот код можно выполнить в любое время; он повторяет одно и то же действие снова и снова. Теперь удалите слово.
«Добро пожаловать в VBA» в ячейке A1.
После удаления слова перейдите в Visual Basic. Поместите курсор внутри кода и нажмите кнопку RUN. Теперь мы снова получаем текст «Добро пожаловать в VBA» в ячейке A1.
Заметка: Сочетание клавиш для запуска кода — F5.
Таким образом, используя кодировку VBA, мы можем автоматизировать нашу повседневную рутинную работу, чтобы сэкономить много времени и избавиться от скучных задач каждый день.
Специальный вариант сохранения для книги макросов
Весь код макросов, содержащийся в книгах, должен быть сохранен в специальных версиях. При сохранении книги нам нужно выбрать «Сохранить как тип» в качестве «Книги Excel с поддержкой макросов».
То, что нужно запомнить
- Вам нужно записывать больше действий, чтобы получить содержание кода и понять.
- Когда вы познакомитесь с макрокодированием, вы можете пройти наш «Курс VBA», чтобы начать обучение.
УЗНАТЬ БОЛЬШЕ >>
Post Views: 795
Похожие записи
Прокрутить вверхПримеры макросов Excel — ОфисГуру
Главная » Уроки MS Excel » Макросы (VBA)
Автор Антон Андронов На чтение 6 мин Опубликовано
Следующие простые примеры макросов Excel иллюстрируют некоторые возможности и приёмы, описанные в самоучителе по Excel VBA.
Содержание
- Макрос Excel: пример 1
- Макрос Excel: пример 2
- Макрос Excel: пример 3
- Макрос Excel: пример 4
- Макрос Excel: пример 5
- Макрос Excel: пример 6
Макрос Excel: пример 1
Первоначально эта процедура Sub была приведена, как пример использования комментариев в коде VBA. Однако, здесь также можно увидеть, как объявляются переменные, как работают ссылки на ячейки Excel, использование цикла For, условного оператора If и вывод на экран окна сообщения.
'Процедура Sub выполняет поиск ячейки, содержащей заданную строку 'в диапазоне ячеек A1:A100 активного листа Sub Find_String(sFindText As String) Dim i As Integer 'Целое число типа Integer, используется в цикле For Dim iRowNumber As Integer 'Целое число типа Integer для хранения результата iRowNumber = 0 'Просматривает одну за другой ячейки A1:A100 до тех пор, пока не будет найдена строка sFindText For i = 1 To 100 If Cells(i, 1).Value = sFindText Then 'Если совпадение с заданной строкой найдено 'сохраняем номер текущей строки и выходим из цикла For iRowNumber = i Exit For End If Next i 'Сообщаем пользователю во всплывающем окне найдена ли искомая строка 'Если заданная строка найдена, указываем в какой ячейке найдено совпадение If iRowNumber = 0 Then MsgBox "Строка " & sFindText & " не найдена" Else MsgBox "Строка " & sFindText & " найдена в ячейке A" & iRowNumber End If End Sub
Макрос Excel: пример 2
Следующая процедура Sub – пример использования цикла Do While. Здесь также можно увидеть, как объявляются переменные, работу со ссылками на ячейки Excel и применение условного оператора If.
'Процедура Sub выводит числа Фибоначчи, не превышающие 1000 Sub Fibonacci() Dim i As Integer 'Счётчик для обозначения позиции элемента в последовательности Dim iFib As Integer 'Хранит текущее значение последовательности Dim iFib_Next As Integer 'Хранит следующее значение последовательности Dim iStep As Integer 'Хранит размер следующего приращения 'Инициализируем переменные i и iFib_Next i = 1 iFib_Next = 0 'Цикл Do While будет выполняться до тех пор, пока значение 'текущего числа Фибоначчи не превысит 1000 Do While iFib_Next < 1000 If i = 1 Then 'Особый случай для первого элемента последовательности iStep = 1 iFib = 0 Else 'Сохраняем размер следующего приращения перед тем, как перезаписать 'текущее значение последовательности iStep = iFib iFib = iFib_Next End If 'Выводим текущее число Фибоначчи в столбце A активного рабочего листа 'в строке с индексом i Cells(i, 1).Value = iFib 'Вычисляем следующее число Фибоначчи и увеличиваем индекс позиции элемента на 1 iFib_Next = iFib + iStep i = i + 1 Loop End Sub
Макрос Excel: пример 3
Эта процедура Sub просматривает ячейки столбца
'Процедура Sub сохраняет значения ячеек столбца A активного листа в массиве Sub GetCellValues() Dim iRow As Integer 'Хранит номер текущей строки Dim dCellValues() As Double 'Массив для хранения значений ячеек iRow = 1 ReDim dCellValues(1 To 10) 'Цикл Do Until перебирает последовательно ячейки столбца A активного листа 'и извлекает их значения в массив до тех пор, пока не встретится пустая ячейка Do Until IsEmpty(Cells(iRow, 1)) 'Проверяем, что массив dCellValues имеет достаточный размер 'Если нет – увеличиваем размер массива на 10 при помощи ReDim If UBound(dCellValues) < iRow Then ReDim Preserve dCellValues(1 To iRow + 9) End If 'Сохраняем значение текущей ячейки в массиве dCellValues dCellValues(iRow) = Cells(iRow, 1).Value iRow = iRow + 1 Loop End Sub
Макрос Excel: пример 4
В этом примере процедура Sub считывает значения из столбца A рабочего листа Лист2 и выполняет с ними арифметические операции. Результаты заносятся в ячейки столбца A на активном рабочем листе. В этом макросе продемонстрировано использование объектов Excel. В частности, производится обращение процедурой Sub к объекту Columns, и показано, как доступ к этому объекту осуществляется через объект Worksheet. Показано так же, что при обращении к ячейке или диапазону ячеек на активном листе, имя этого листа при записи ссылки указывать не обязательно.
'Процедура Sub при помощи цикла считывает значения в столбце A рабочего листа Лист2, 'выполняет с каждым значением арифметические операции и записывает результат в 'столбец A активного рабочего листа (Лист1) Sub Transfer_ColA() Dim i As Integer Dim Col As Range Dim dVal As Double 'Присваиваем переменной Col столбец A рабочего листа Лист 2 Set Col = Sheets("Лист2").Columns("A") i = 1 'При помощи цикла считываем значения ячеек столбца Col до тех пор, 'пока не встретится пустая ячейка Do Until IsEmpty(Col.Cells(i)) 'Выполняем арифметические операции над значением текущей ячейки dVal = Col.Cells(i).Value * 3 - 1 'Следующая команда записывает полученный результат в столбец A активного рабочего листа 'Имя листа в ссылке указывать нет необходимости, так как это активный лист. Cells(i, 1) = dVal i = i + 1 Loop End Sub
Макрос Excel: пример 5
Данный макрос показывает пример кода VBA, отслеживающего событие Excel. Событие, к которому привязан макрос, происходит каждый раз при выделении ячейки или диапазона ячеек на рабочем листе. В нашем случае при выделении ячейки B1, на экран выводится окно с сообщением.
'Данный код показывает окно с сообщением, если на текущем рабочем листе 'выбрана ячейка B1 Private Sub Worksheet_SelectionChange(ByVal Target As Range) 'Проверяем выбрана ли ячейка B1 If Target.Count = 1 And Target.Row = 1 And Target.Column = 2 Then 'Если ячейка B1 выбрана, выполняем необходимое действие MsgBox "Вы выбрали ячейку B1" End If End Sub
Макрос Excel: пример 6
На примере этой процедуры показано использование операторов On Error и Resume для обработки ошибок. В данном коде также показан пример открытия и чтения данных из файла.
'Процедура Sub присваивает аргументам Val1 и Val2 значения ячеек A1 и B1 'из рабочей книги Data.xlsx, находящейся в папке C:\Documents and Settings Sub Set_Values(Val1 As Double, Val2 As Double) Dim DataWorkbook As Workbook On Error GoTo ErrorHandling 'Открываем рабочую книгу с данными Set DataWorkbook = Workbooks.Open("C:\Documents and Settings\Data") 'Присваиваем переменным Val1 и Val2 значения из заданной рабочей книги Val1 = Sheets("Лист1").Cells(1, 1) Val2 = Sheets("Лист1").Cells(1, 2) DataWorkbook.Close Exit Sub ErrorHandling: 'Если файл не найден, пользователю будет предложено поместить искомый файл 'в нужную папку и после этого продолжить выполнение макроса MsgBox "Файл Data.xlsx не найден! " & _ "Пожалуйста добавьте рабочую книгу в папку C:\Documents and Settings и нажмите OK" Resume End Sub
Урок подготовлен для Вас командой сайта office-guru.ru
Источник: http://www.excelfunctions.net/Excel-Macro-Example.html
Перевел: Антон Андронов
Правила перепечатки
Еще больше уроков по Microsoft Excel
Оцените качество статьи. Нам важно ваше мнение:
Примеры кода VBA для Excel
Примеры макросов Excel
Ниже вы найдете список основных примеров макросов для общих задач автоматизации Excel.
Копирование и вставка строки с одного листа на другой
Этот очень простой макрос копирует строку с одного листа на другой.
Sub Paste_OneRow()
'Копировать и вставить строку
Листы("лист1").Диапазон("1:1").Копировать Листы("лист2").Диапазон("1:1")
Application.CutCopyMode = Ложь
Конец сабвуфера
Отправить письмо
Этот полезный макрос запускает Outlook, создает черновик сообщения электронной почты и прикрепляет ActiveWorkbook.
Sub Send_Mail ()
Dim OutApp как объект
Затемнить OutMail как объект
Установите OutApp = CreateObject("Outlook.Application")
Установить OutMail = OutApp.CreateItem(0)
С исходящей почтой
.to = "test@test.com"
.Subject = "Тестовое письмо"
.Body = "Тело сообщения"
.Attachments.Add ActiveWorkbook.FullName
.Отображать
Конец с
Установите OutMail = Ничего
Установить OutApp = Ничего
Конец сабвуфера
Список всех листов в книге
Этот макрос выведет список всех листов в книге.
Подлисты списка()
Dim ws As рабочий лист
Dim x как целое число
х = 1
ActiveSheet.
Range("A:A").Очистить
Для каждого ws в рабочих листах
ActiveSheet.Cells(x, 1) = ws.Name
х = х + 1
Следующий мс
Конец сабвуфера
Показать все рабочие листы
Этот макрос отобразит все рабочие листы.
' Показать все рабочие листы
Sub Показать все рабочие листы ()
Dim ws As рабочий лист
Для каждого ws в ActiveWorkbook.Worksheets
ws.Visible = кслшитвисибле
Следующий мс
Конец сабвуфера
Скрыть все рабочие листы, кроме активного
Этот макрос скроет все рабочие листы, кроме активного рабочего листа.
' Скрыть все листы, кроме активного листа
Sub HideAllExceptActiveSheet()
Dim ws As рабочий лист
Для каждого ws в ThisWorkbook.Worksheets
Если ws.Name <> ActiveSheet.Name, тогда ws.Visible = xlSheetHidden
Следующий мс
Конец сабвуфера
Снять защиту со всех листов
Этот пример макроса снимает защиту со всех листов в книге.
' Снять защиту со всех рабочих листов
Sub UnProtectAllSheets ()
Dim ws As рабочий лист
Для каждого ws в рабочих листах
ws.Unprotect "пароль"
Следующий мс
Конец сабвуфера
Защитить все листы
Этот макрос защитит все листы в книге.
'Защитить все рабочие листы
Sub ProtectAllSheets ()
Dim ws As рабочий лист
Для каждого ws в рабочих листах
ws.protect "пароль"
Следующий мс
Конец сабвуфера
Удалить все фигуры
Этот макрос удалит все фигуры на листе.
Sub Удалить все фигуры ()
Dim GetShape как форма
Для каждого GetShape в ActiveSheet.Shapes
GetShape.Удалить
Следующий
Конец сабвуфера
Удалить все пустые строки в рабочем листе
Этот пример макроса удалит все пустые строки в рабочем листе.
Sub DeleteBlankRows()
Тусклый х как долго
С ActiveSheet
Для x = .
Cells.SpecialCells(xlCellTypeLastCell).Row To 1 Шаг -1
Если WorksheetFunction.CountA(.Rows(x)) = 0 Тогда
ActiveSheet.Rows(x).Удалить
Конец, если
Следующий
Конец с
Конец сабвуфера
Выделение повторяющихся значений в выделенном фрагменте
Используйте этот простой макрос, чтобы выделить все повторяющиеся значения в выделенном фрагменте.
' Выделить повторяющиеся значения в выборе
Sub HighlightDuplicateValues ()
Dim myRange As Range
Затемнить ячейку как диапазон
Установите myRange = Выбор
Для каждой ячейки в моем диапазоне
Если WorksheetFunction.CountIf(myRange, cell.Value) > 1 Тогда
ячейка.Interior.ColorIndex = 36
Конец, если
Следующая ячейка
Конец сабвуфера
Подсветка отрицательных чисел
Этот макрос автоматизирует задачу выделения отрицательных чисел.
' Выделить отрицательные числа
Sub HighlightNegativeNumbers()
Dim myRange As Range
Затемнить ячейку как диапазон
Установите myRange = Выбор
Для каждой ячейки в моем диапазоне
Если ячейка.
Значение < 0 Тогда
ячейка.Interior.ColorIndex = 36
Конец, если
Следующая ячейка
Конец сабвуфера
Подсветка альтернативных строк
Этот макрос полезен для выделения альтернативных строк.
' Выделить альтернативные строки
ПодсветкаAlternateRows()
Затемнить ячейку как диапазон
Dim myRange As Range
мой диапазон = выбор
Для каждой ячейки в myRange.Rows
Если Не Application.CheckSpelling(Word:=cell.Text), то
ячейка.Interior.ColorIndex = 36
Конец, если
Следующая ячейка
Конец сабвуфера
Выделение пустых ячеек в выделенном фрагменте
Этот базовый макрос выделяет пустые ячейки в выделенном фрагменте.
' Выделить все пустые ячейки в выделении
Подсветка пустых ячеек ()
Dim rng As Range
Установить rng = Выбор
rng.SpecialCells(xlCellTypeBlanks).Interior.Color = vbCyan
Конец сабвуфера
Примеры макросов Excel VBA — скачать бесплатно
Мы создали бесплатную надстройку VBA (Macros) Code Examples. Надстройка содержит более 100 готовых к использованию примеров макросов, включая приведенные выше примеры макросов!
Часто задаваемые вопросы о макросах Excel/VBA
Как писать код VBA (макросы) в Excel?
Чтобы написать код VBA в Excel, откройте редактор VBA (ALT + F11). Введите «Sub HelloWorld», нажмите Enter, и вы создали макрос! ИЛИ Скопируйте и вставьте одну из процедур, перечисленных на этой странице, в окно кода.
Что такое Excel VBA?
VBA — это язык программирования, используемый для автоматизации Excel.
Как использовать VBA для автоматизации Excel?
Вы используете VBA для автоматизации Excel путем создания макросов. Макросы — это блоки кода, выполняющие определенные задачи.
Практика VBA
Вы можете попрактиковаться в VBA с помощью нашего интерактивного учебного пособия по VBA.
Шпаргалки по VBA — списки команд и синтаксиса
Вернуться к примерам кода VBA
В этой статье
- Чит -шпаргалка VBA PDF (скачать бесплатно)
- VBA Chiets
- листы
- и диапазоны
- строки
- колонны
- .
0119
- Массивы
- Коллекции
- Словари
- AutoMacro — Ultimate VBA Add-in
Памятка по VBA в формате PDF (бесплатная загрузка)
Загрузите нашу бесплатную памятку по Excel по VBA в формате PDF для быстрой справки!
Шпаргалки по VBA
На этой странице приведены списки всех распространенных команд и синтаксиса VBA. Вы найдете множество основных команд (например, вставка листа) и расширенный синтаксис (например, работа с массивами).
Советы:
Используйте CTRL + F для поиска на этой странице.
Добавьте эту страницу в закладки (CTRL + D в Chrome)!
Листы
Активировать по имени вкладки
Листы («Ввод»). Активировать
Активировать по кодовому имени VBA
Лист1.
ActiveSheet.Next.Activate
Get ActiveSheet
MsgBox ActiveSheet.Name
Выбрать лист
Листы ("Ввод"). Выбрать
Установить переменную
Уменьшить лист как рабочий лист
Установить ws = ActiveSheet
Имя / Переименовать
ActiveSheet.Sheet.Name 900 5 Добавить
6
Sheets.AddAdd Sheet and Name
Sheets.Add.Name = «NewSheet»
Add Sheet to Variable
Dim ws As Worksheet
Set ws = Sheets.Add
Копировать лист
Sheets («Лист1» ).Копировать до:=Листы("Лист2")
Скрыть лист
Листов("Лист1").visible = False
или
Листов("Лист1").visible = xlSheetHidden
Показать Лист
Листов("Лист1").Visible = Истинно
или
Листов("Лист1").visible = xlSheetHidden «Лист1»). Видимый = xlSheetVisible
Очень Скрыть Лист
Листов («Лист1»). Видимый = xlSheetVeryHidden
Удалить Лист
Листов («Лист1»). Удалить
Листов («Лист 1»). ).Cells.Clear
Снять защиту (без пароля)
Листов («Лист1»). Снять защиту
Снять защиту (пароль)
Листов («Лист1»). Снять защиту «Паролем»
Защитить (без пароля)
Листов («Лист1»). Password)
Sheets("Sheet1"). Защитить "Паролем"
Защитить, но разрешить доступ VBA
Sheets("Sheet1"). Protect UserInterfaceOnly:=True
Вернуться к началу
Ячейки и диапазоны
Диапазон («B3»). Активировать
Ячейки(3,2).Активировать
Выбрать диапазон
Диапазон("a1:a3").Выбрать
Диапазон(Диапазон("a1"), Диапазон("a3")).Выбрать
Диапазон(Ячейки(1) , 1), Ячейки(3, 1)).Выбрать
Изменить размер
Диапазон("B3").Изменить размер(2, 2).Выбрать
Смещение
Диапазон("B3").Смещение(2, 2 ).Выбрать
Копировать
Диапазон("A1:B3").Копировать диапазон("D1")
Вырезать
Диапазон("A1:B3").Вырезать диапазон("D1")
Удалить
Диапазон («A1: B3»). Удалить диапазон
(«A1: B3»). Удалить сдвиг: = xlShiftToLeft
Очистить
Диапазон("A1:A3").Очистить
Диапазон("A1:A3"). ClearContents
Диапазон("A1:A3").ClearFormat
Подсчет
Диапазон("A1:A3") .Count
Установить на переменную
Уменьшить диапазон как диапазон
Установить диапазон = диапазон («A1»)
Объединить/Разъединить
Диапазон («A1:A3»). Объединить
Диапазон («A1:A3»). UnMerge
Цикл по ячейкам
Затемнить ячейку как диапазон
Для каждой ячейки в диапазоне («A1:C3»)
Ячейка MsgBox. Значение
Следующая ячейка
Вернуться к началу
Ряды
Активировать
Рядов(1).Активировать
Рядов("1:1").Активировать
Диапазон("a1").Весь Ряд.Активировать
Высота/Ширина
5 Диапазон( "A1").EntireRow.RowHeight = 30
Удалить
Диапазон("A1").EntireRow.Удалить
Количество
Диапазон("A1").Rows.Count
Вставить
Диапазон("A1" ).EntireRow.Insert
Last
dim lRow as long
lRow = Cells(Rows.Count, 1).End(xlUp).Row
Копировать
Диапазон ("1:1"). Копировать диапазон ("5:5")
Вставить
Диапазон ("1:1"). Копировать
Диапазон ("5:5"). Вставить
Вернуться к началу
Столбцы
Активировать
Столбцы(1). Активировать
Столбцы («a:a»). Активировать
Диапазон («a1»). A1”).EntireColumn.ColumnWidth = 30
Удалить
Диапазон («A1»).0006
Вставить
Диапазон("A1").EntireColumn.Insert
Последний
dim lCol as long
lCol = Cells(1, Columns.Count).End(xlToLeft).Column
Копировать диапазон("
A:A"). Скопировать диапазон ("E: E")
Вставить диапазон
("A: A"). Скопировать диапазон
("E: E"). Вставить
Вернуться к началу
Кодирование VBA Сделано легко
Прекратите искать код VBA в Интернете. Узнайте больше об AutoMacro — конструкторе кода VBA, который позволяет новичкам создавать процедуры с нуля с минимальными знаниями в области программирования и множеством функций, позволяющих сэкономить время для всех пользователей!
Узнать больше!!
Рабочие книги
Активировать
рабочих книг («Book1»). Активируйте
Активировать первые открытые
рабочие тетради (1). Активные
Активировать последний открытый
Рабочие книги (рабочая книга. MsgBox ActiveWorkbook.Name
Получить эту книгу (содержащую код VBA)
MsgBox ThisWorkbook.Name
Добавить
Workbooks.Добавить
Добавить в переменную
Dim wb As Workbook
Set wb = Workbooks.Add
Open
Workbooks.Open("C:\example.xlsm")
Open to Variable
Dim wb As Workbook
Set wb = Workbooks.Open( «C:\example.xlsm»)
Закрыть
рабочих книг («Книга1»). Закрыть SaveChanges:=False
рабочих книг («Книга1»). Закрыть SaveChanges:=True
Сохранить
рабочих книг («Книга1») .Сохранить
Сохранить как
Книги («Книга1»). Сохранить как strFileName
Защитить/Снять защиту
Рабочие книги(1).Защитить «пароль»
Рабочие книги(1).Снять защиту «пароля»
Установить для переменной
Затемнить wb как рабочую книгу
Установить wb = Workbooks(«Книга1»)
Прокрутить все рабочие книги в рабочих книгах
Dim wb As Workbook
Для каждого wb в Workbooks
MsgBox wb. Name
Next wb
Check Exists
If Dir("C:\Book1.xlsx") = "" Then
MsgBox "Файл не существует ».
EndIf
Копия закрыта
FileCopy «C:\file1.xlsx», «C:\file2.xlsx»
Возврат в TOP
Настройки
Обновление экрана
Application.screenupdation = false
Application.screenupdation = true
Опоявления дисплея
Application.displayalerts = false
Application.displayalerts = true
. = False
Application.EnableEvents = True
Включить клавишу отмены
Application.EnableCancelKey = xlDisabled
Application.EnableCancelKey = xlInterrupt
Текст Сравнение - Игнорировать корпус
Опция Сравните текст
Требуется объявление переменной
Опция явное
Автоматические расчеты
Приложение. Calculation = XLManual
Application.calculation = xlautomatic
Фоновая ошибка. = False
Application.ErrorCheckingOptions.BackgroundChecking = True
Показать панель формул
Application. DisplayFormulaBar = False
Application.displayformulabar = true
Freeze Panes
ActiveWindow.freezePanes = false
ActiveWindow.freezePanes = true
Полный экран. = xlPageBreakPreview
ActiveWindow.View = xlNormalView
Отображение полос прокрутки
С ActiveWindow
.DisplayHorizontalScrollBar = False
.displayverticalscrollbar = false
End Awath ActiveWindow
. Displayhorizontalscrollbar = true
. Disisplayverticalscrollbar = True
End с
DisplayStislAtStStStStStStAtSTARTATSATSTARTATSATSATSATSBAR
. = «Я сейчас работаю!!!»Application.StatusBar = False
Отображение вкладок книги
ActiveWindow.DisplayWorkbookTabs = False
ActiveWindow.DisplayworkBooktabs = True
Имя пользователя
Application.USERNAME = «AutomateExcel.com»
Подпись приложения
Приложение.
Ошибки
При ошибке — Остановить код и отобразить ошибку
При ошибке Перейти к 0
При ошибке — Пропустить ошибку и продолжить работу
При ошибке Продолжить дальше0006
на ошибке goto [label]
clears (сброс) Ошибка
на ошибке goto –1
Показать номер ошибки
msgbox err. number
Показать описание ошибки
msgbox err.description
Функция. собственная ошибка
Err.Raise
Вернуться к началу
Программирование на VBA | Генератор кода работает на вас!
Файлы
Копировать файл
FileCopy «C:\test\test_old.xlsx», «C:\test\test_new.xlsx»
Удалить файл
Убить «C:\test\example.xlsx»
Создать папку
MkDir «C:\test\»
Удалить все файлы из папки
Убить «C:\test\» & « *.*”
Удалить папку
Удалить “C:\test\” & “*.*”
RmDir “C:\test\”
Текущий каталог
strPath = CurDir()
Путь к этой книге
strPath = ThisWorkbook.Path
Перебрать все файлы в папке
strFile = Dir("C:\test" & "\*")
Do While Len(strFile) > 0
Debug.Print strFile
strFile = Dir
Loop
Вернуться к началу
Массивы
Создать
Dim arr(1 Torr 3) As Variant
обр(2) = “два”
обр(3) = “три”
Создать из Excel
Затемнить обр(1 до 3) как вариант
Затемнить ячейку как диапазон, i как целое число
i = LBound( arr)
Для каждой ячейки в диапазоне («A1:A3»)
i = i + 1
arr(i) = cell. value
Следующая ячейка
Читать все элементы
Dim i as Long
For i = LBound(arr) To UBound(arr)
MsgBox arr(i)
Next i
Erase
Erase arr
Dim Name As String
6
Sname = join (arr, «:”)
Размер увеличения
Redim Proverve ARR (от 0 до 100)
Установленное значение
ARR (1) = 22
Возврат в верхнюю
Создание
Тусклый колл As New Collection
колл.Добавить «один»
столбец Добавить «два»
Создать из Excel
Затемнить столбец как новую коллекцию
Затемнить ячейку как диапазон
Для каждой ячейки в диапазоне («A1:A2»)
столбец Добавить значение ячейки
Следующая ячейка
Добавить Пункт
столбец Добавить «Значение»
Добавить элемент Перед
столбец Добавить «Значение», Перед:=1
Добавить элемент После
столбецДобавить «Значение», После:=1
Прочитать элемент
MsgBox coll (1)
Count Items
col. Count
Read All Items 9(1)
Обязательный справочник
Инструменты > Ссылки > Среда выполнения сценариев Microsoft
Создать
Dim dict As New Scripting.Dictionary
dict.Add ""
dict.Add ""
Create From Excel
Затемнить словарь как новый Scripting.Dictionary
Затемнить ячейку как диапазон
Затемнить ключ как целое число
Для каждой ячейки в диапазоне («A1:A10»)
key = key + 1
dict.Add key, cell.value
Следующая ячейка
Добавить элемент
dict.Добавить «Ключ», «Значение»
Изменить значение
dict («Ключ») = «Значение»
Получить значение
MsgBox dict («Ключ»)
Проверить значение
If dict.Exists("Key") Then
MsgBox "Exists"
End If
Удалить элемент
dict.Remove («Ключ»)
Удалить все элементы
dict.RemoveAll
Прокрутить элементы
Dim key As Variant
Для каждого ключа In dict.