sonyps4.ru

Программный код vba в excel. VBA Excel: примеры программ

MZTools - Очень полезная утилита для тех, кто программирует на VBA. Поистине экономит время при написании кодов. Немаловажен тот факт, что утилита абсолютно бесплатна . Вот некоторые из её возможностей:

  • Автоматическая вставка обработчиков ошибок в модули
  • Вставка комментариев в заголовок процедуры, с автоматической вставкой времени, имени модуля и процедуры, возможностью указать автора процедуры
  • Автоматическая нумерация строк кода
  • Снятие нумерации со строк кода
  • Создание шаблонов часто используемых кодов
  • Собственный буфер обмена на 9 операций с возможностью кодов и последующей вставки любого из 9 скопированных кодов
  • и еще много полезного

Программа распространяется бесплатно.

(37,3 KiB, 3 708 скачиваний)


Официальный сайт: не обнаружен

VBE Tools - Многим из вас приходилось написать код для формы, а затем вспомнить, что какой-то элемент не назвали, как хотелось или просто захотелось переименовать в связи с изменением в коде? И, конечно же, сталкивались с той проблемой, что при переименовании элемента приходится идти в код и заменять там все ссылки на данный элемент на новое название. Так вот с помощью этой программы можно переименовать имя любого элемента формы(TextBox, Label и т.д.) и элементов ActiveX на листе Excel, а программа уже сама заменит в коде все ссылки со старого названия на новое. Очень удобно.

Программа распространяется бесплатно.

Содержание этой страницы будет наращиваться постоянно...
  1. Программа-калькулятор "Возведение чисел в большие степени".

    Реализовать точное вычисление возведения в большие степени однозначных чисел (от 2 до 9) с помощью длинной арифметики.

  2. С форума от Jonny323. VBA Word

    Привет всем. Очень нужен макрос, думаю не сложный: Печать первой страницы в 6 экземплярах и 2ой страницы в 2 экземплярах.Заранее спасибо.

  3. ProgressBar на форме. VBA Excel

    Элемент управления, который показывает ход выполнения программы (сколько сделано работы из 100%)...

  4. Статистические подсчеты в выделенном тексте. VBA Word

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

  5. Статистические подсчеты в тексте документа. Использование UserForm для ввода данных. VBA Word

    Создать в Word программу - В форме пользователь вводит слово или словосочетание, а программа просматривает весь текст и вставляет в конце документа введенное слово (словосочетание), рядом с которым перечислены все номера страниц, на которых это слово встречается. Совпадения номеров страниц не допускаются. То есть если указанное слово на странице 5 встречается три раза, номер 5 в выводе указывается только один раз. Форма должна состоять из следующих компонентов:
    - 1 TextBox для ввода слова (словосочетания);
    - 1 кнопка для выхода из программы;
    - 1 кнопка для запуска поиска и вставки результата в документ;
    - компонент типа Label с поясняющим текстом над строкой ввода;
    - Кроме того, на форме могут быть компоненты типа Frame;

  6. Работа с ListBox (Excel). Привязка, сортировка, множественный выбор...

  7. Программа для решения японской головоломки Судоку (Excel)

  8. Макросы выполнения запросов (т.е. формирование новой таблицы из базы данных Excel)

  9. Сортировка Хоара (алгоритм с wikipedia.org)

    Один из самых быстрых методов сортировки.
  10. Сортировка Слиянием (с использованием Хоара)

    Один из самых быстрых и оптимальных методов сортировки.
  11. VBA Excel: Программа расчета биоритмов человека

  12. Для blackarrow с programmersforum.ru

  13. Определить в какую координатную четверть
    попадает точка с заданными координатами А(а,b). VBA EXCEL.

  14. Представление целого числа прописью VBA EXCEL.

  15. ЛОГИКА.

    Решение квадратного уравнения.
  16. VBA EXCEL.

  17. VBA EXCEL. Задача о треугольнике. Массив, цикл, логика.

    По заданным размерам трех сторон треугольника - определить его вид (прямоугольный, тупоугольный, остроугольный или невозможно построить).
  18. Будильник (alarm clock) в Excel

  19. VBA EXCEL.

  20. VBA EXCEL.

  21. VBA EXCEL.

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

  22. VBA EXCEL. Как скрыть или отобразить элементы листа.

    Иногда, требуется скрыть от пользователя некоторые возможности (как правило, скрывается размещение данных):
    - посещать другие листы данной книги (лучше не знать о них);
    - прокручивать (горизонтально и вертикально) лист
    - читать и изменять формулы в ячейках листа
    - скрывать линии столбцов и строк
    - скрывать заголовки (названия и номера) столбцов и строк
  23. VBA EXCEL. Добавить и удалить пункт меню.

    Не сложно добавить (удалить) собственный пункт в меню Excel. Это все описано в справке.
    Но куда интересней поручить эту работу макросу.
    Тогда появляется возможность при открытии конкретного документа формировать специальное, индивидуальное меню, а после его закрытия привести меню Excel в первоначальное состояние. (Данный пример кода работает только в MS Excel 2003, а в 2007 нужны изменения названий панелей управления)
  24. Клеточные автоматы VBA EXCEL.

  25. Метод Золотого сечения VBA EXCEL.

  26. Замена местами максимального и минимального значений ячеек выделенного диапазона. VBA Excel

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

  27. Строковая функция, возвращающая квадраты простых чисел от нуля до заданного числа. VBA Excel

    Составить в Excel функцию, получающую натуральное число N и возвращающее квадраты всех простых чисел от 0 до заданного натурального N.

  28. Пользовательская форма (UserForm) для ввода данных по кредитам коммерческого банка. VBA Excel

    Организуйте ввод сведений в таблицу, содержащую данные о выдаче долгосрочных кредитов коммерческим банком со следующими данными: код получателя кредита, наименование получателя кредита, дата выдачи кредита, срок (3-4 срока), на который выдан кредит (в днях), процент, сумма кредита, дата оплаты процентов по кредиту.

  29. Пользовательская форма (UserForm) для ввода данных по Регистрации туристов. VBA Excel

    на этом самом месте...

Цель работы – Изучение основных операторов и реализации основных конструкций программирования в языке VBA.

4.1 Основные этапы работы с программами на vba в Excel

Для подготовки и выполнения программы на языке VBA требуется выполнить следующее:

    в Excel выбрать из меню команду Сервис – Макрос – Редактор Visual Basic ;

    в появившемся окне выбрать из меню команду Insert Module . Создается модуль, т.е., упрощенно говоря, открывается окно, в котором можно вводить текст программы.

В начале модуля может указываться инструкция Option Explicit . Если она указана, то все переменные, используемые в программе, необходимо будет объявлять в операторе Dim (подробнее об этом см. в подразделе 4.3).

В некоторых случаях, в зависимости от настройки среды VBA, инструкция Option Explicit указывается в начале модуля автоматически. Если программист желает использовать переменные, не объявляя их в операторе Dim , то инструкцию Option Explicit необходимо удалить.

Для запуска программы на выполнение необходимо выбрать из меню команду Run – Run Sub/UserForm .

4.2 Простейший пример программы на языке vba

Пример 4.1 – Программа, возводящаяуказанное число a в указанную степень b .

Dim a As Single, b As Single

a = InputBox(“Введите основание: ”)

b = InputBox(“Введите показатель степени: ”)

x = a^b ‘Возведение в степень

MsgBox(“Результат равен ” & x)

Здесь слово Sub обозначает начало процедуры; ее имя в данном случае – primer 4_1 . Программа на языке VBA всегда состоит из одной или нескольких процедур (в данном случае – из одной).

Символ ‘ (одиночная кавычка) обозначает начало комментария. Текст комментария может быть любым.

Dim – оператор объявления переменных. В данном случае указано, что переменные a и b имеют тип Single . т.е. могут представлять собой как целые, так и дробные числа. Подробнее типы данных и объявление переменных будут рассмотрены в подразделе 4.3.

InputBox – функция для ввода значения переменной. Строка a = InputBox (“Введите основание: ”) означает, что вводится значение переменной a ; при этом на экран выводится сообщение “Введите основание:” . Строка x = a ^ b – оператор присваивания: вычисляется значение правой части (в данном случае переменная a возводится в степень b ), и результат присваивается переменной, указанной в левой части (в данном случае – переменной x ). Строка MsgBox (“Результат равен ” & x ) означает, что на экран выводится сообщение “Результат равен ” и значение переменной x .

Примечание – Знак & в функции MsgBox предназначен для сцепления нескольких элементов данных, которые требуется вывести на экран, в данном примере – строки “Результат равен” и переменной x . Аналогично знак & может использоваться в функции InputBox (примеры такого использования будут приведены далее). Перед знаком & и после него обязательно должны быть указаны пробелы.

В одной строке можно разместить несколько операторов языка VBA. Для этого они разделяются символами «двоеточие». Так, программу из примера 4.1 можно было записать, например, следующим образом:

‘Первый пример программы на VBA

Dim a As Single, b As Single

a = InputBox(“Введите основание: ”) : b = InputBox(“Введите показатель степени: ”)

x = a^b: MsgBox(“Результат равен ” & x) ‘Возведение в степень и вывод результата

В рассмотренном примере использована процедура, называемая подпрограммой. Такая процедура начинается со слова Sub . В программе на VBA всегда имеется хотя бы одна процедура-подпрограмма. Кроме того, в языке VBA имеется еще один вид процедур – функции. Процедура-функция начинается со слова Function . Использование таких процедур будет рассмотрено в подразделе 4.9.

Следующие простые примеры макросов Excel иллюстрируют некоторые возможности и приёмы, описанные в самоучителе по Excel VBA .

Макрос 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 просматривает ячейки столбца A активного листа до тех пор, пока не встретит пустую ячейку. Значения записываются в массив. Этот простой макрос Excel показывает работу с динамическими массивами, а также использование цикла Do Until . В данном примере мы не будет совершать какие-либо действия с массивом, хотя в реальной практике программирования после того, как данные записаны в массив, над ними такие действия, как правило, совершаются.

"Процедура 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

(Visual Basic for Application)

Basic- язык программирования высокого уровня (интерпретатор)

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

Application- приложение к программной системеMSOfficeнаряду с приложениямиWord,Access,PowerPoint.

Зачем нужен VBA?

    Объединяет (интегрирует) приложения, позволяет управлять работой других приложений не выходя из Excel, внедрять объекты из других приложений;

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

VBAотносится к числу объектно-ориентированных языков, то есть при разработке проектов используются объекты.Определение: объединение данных и кода в единое целоею Например, элемент «Кнопка» и соответствующий код, связанный с этой кнопкой обеспечат переход на другой лист рабочей книги.

Основные объекты VBA:

Application (само приложение Excel)

WorkBook(рабочая книга – ваш файл)

WorkSheetFunction (мастер функций)

WorkSheet (рабочий лист)

Range (диапазон)

Chart (диаграмма)

Style (стиль)

Border (границы)

Interior (цвет фона)

Font (шрифт)

Множество некоторых объектов составляют семейства –WorkBooks,WorkSheets,Charts.

Объекты обладают свойствами (действия над объектами) и методами (дейстия самих объектов).

Начнем знакомиться со средствами визуализации разработки проектов в VBA. Таковым является Интегрированная Среда Разработки Приложений. Чтобы попасть в эту среду надо выбрать в пункте меню СервисМакросРедакторVBAили нажать одновременно клавишиALTиF11.

На экране появятся компоненты редактора VBA:

Окно проекта Project – VBA Project

Окно свойствPropeties

Окно кода

Окно форм UserForm

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

Окно проекта Project–VBAProject(рис. 1) показывает структуру вашего проекта (файла). Это окно активизируется в редактореVBAвыбором командыViewProjectExplorerили кнопкой «ProjectExplorer» или нажатием клавишCtrl+R

Рис. 1 Окно проекта.

Рис.2 Интегрированная среда разработки приложений

Окно кода предназначено для хранения кода, связанного с объектом. У каждого объекта свое окно, так каждый рабочий лист (WorkSheet) имеет свое окно кода, рабочая книга (WorkBook) – свое окно.

Создание пользовательских функций

Пользовательские функции добавляются к стандартному списку мастера функций (WorkSheetFunction). Эти функции создаются в специальном модуле, сопровождающем объектWorkSheetFunction. Этот модуль добавляется к проекту с помощью командыInsertModule(ВставитьМодуль), в окне проекта он отобразится на уровне вашего приложения. Все коды, написанные в этом модуле, появятся в категории «Функции определенные пользователем» мастера функций.

Итак, добавляем модуль в наш проект (InsertModule) и в окне кода этого модуля пишем текст программы:

y = Cos((x + 2) / 2) ^ 2 + Exp(-2 * x) / (x ^ 2 + 1) ^ 0.5

Затем переходим на рабочий лист «1 график», в ячейке с2 выполним обращение к новой функции, добавленной в мастер функций - y(x). Работа с этой функцией ничем не отличается от работы с любой другой функцией. На первом шаге надо выбратьy(x) в категории «Функции определенные пользователем», на втором шаге в качестве аргументаxуказать ячейкуA2. В результате в ячейке С2 будет записана формула =y(A2). Эту формулу протащить на весь диапазон А2:А17 как показано на рис. 3. Разумеется, результат должен совпасть с тем, что вы получили, вычисляя эту функцию обычными средствами рабочего листа.

Рис 3. Функция y(x), рассчитанная обычным образом и с помощью пользовательской функции.

Основные операторы vba – Условные операторы

Условные операторы имеют 2 формы записи:

1) В одну строку

IF< условие>THEN<оператор 1>

IF,THEN,ELSE–служебные неизменяемые слова, в угловых скобках < >текст пользователя, это то, что вы пишете в соответствии с заданием, в квадратных скобках необязательная часть, текст может отсутствовать. Такая форма обычно используется в случае простых действий, например, при вычислении модуля числаy=х=abs(s) можно использовать следующий оператор:

IF x > 0 THEN y = x ELSE y = -x

2) В несколько строк. В этом случае условный оператор обязательно заканчивается утверждением “ENDIF”

IF <условие> THEN

<оператор 1>

<оператор 2>

<оператор 3>

<оператор 4>

Такая форма используется при сложных вычислениях, например, при вычислении корней квадратного уравнения. Пусть надо найти корни уравнения a*x 2 +b*x+c= 0. Как известно в случае еслиb 2 -4*a*c≥ 0, то корни вычисляются по формуле
, еслиb 2 -4*a*c≤ 0, то корней в области действительных чисел нет. Условный оператор, реализующий этот алгоритм, выглядит следующим образом:

IF b^2 -4*a*c>= 0 THEN

X1 = (-b + (b^2 - 4*a*c)^(1/2)) / (2*a)

X2 = (-b + (b^2 + 4*a*c)^(1/2)) / (2*a)

X1 = “ РЕШЕНИЯ НЕТ”

X2 = “ РЕШЕНИЯ НЕТ”

Примеры написания пользовательских функций в vba

Пример 1.

F
unction y(x)

y = Cos((x + 2) / 2) ^ 2 + Exp(-2 * x) / (x ^ 2 + 1) ^ 0.5

End Function

Пример 2

Function z(x)

If x < 0 Then

z = (1 + x + x ^ 2) / (1 + x ^ 2)

If x < 1 Then

z = (1 + 2 * x / (1 + x ^ 2)) ^ (1 / 2)

z = 2 * Abs(0.5 + Sin(x))

End Function

Лекция 2

    Свойства, методы и события объектов VBA. Пример процедуры с использованием отдельных свойств объектаApplication.

    Элементы управления

    Типы переменных в VBA

    Операторы цикла

    Пример программы табулирования функции

Свойства, методы и события объектов VBA. Пример процедуры с использованием отдельных свойств объектаApplication.

Продолжим знакомство с объектной моделью VBA. Все объекты организованы в иерархическую структуру, подчиненную объекту верхнего уровня «Application».

Application. WorkBooks(“Графики”).

Если рабочая книга (файл) “Графики” является активной, то достаточно указать

Worksheets(“Содержание”).Range(“A1”).

Если же вы работаете на листе “Содержание” , то ссылка будет выглядеть Range(“A1”).

Все объекты имеют свойства, методы и события.

Свойство это некоторая характеристика объекта (цвет, форма, наименование, расположение, видимость и т.д.) Устанавливается значение объекта так:

Объект.Свойство = значение свойства

Метод это действие, выполняемое над объектом (открыть, закрыть, удалить). Правило записи метода:

Объект. Метод

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

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

Приведем некоторые свойства, методы и события основных объектов.

Свойство

Объект Application

Caption (заголовок объекта)

Quit (выход изExcel

NewWorkBook(создание новой рабочей книги)

AutoREcover (автосохранение)

Save(сохранение)

SheetActivate(переход на рабочий лист)

ReferenceStyle(стиль ссылок)

Run(выполнение макроса)

WorkBookOpen(открытие рабочей книги)

MemoryFree(информация о свободной оперативной памяти)

Volatile(перевычисление при изменении в ячейках рабочего листа)

WorkBookBeforeClose(закрытие рабочей книги)

MemoryTotal(информация об общей оперативной памяти)

Calculate(вычисление во всех открытых книгах)

SheetBeforeDubleClick(двойной щелчок)

MemoryUsed(информация о занятой оперативной памяти)

IpputBox(ввод данных)

SheetBeforeRightClick(щелчок правой кнопкой)

CellDragAndDrop(управление перетаскиванием формул в ячейках)

Msgbox(вывод сообщений)

ActiveCell, ActiveSheet (активная ячейка, лист)

Cells(диапазон ячеек)

DisplayFormulaBar(отображение строки формул)

DisplayScrollBar(отображение полос прокрутки)

DisplayStatusBar(отображение строки состояния)

Свойства метода Applicationпозволяют программно установить значения многих опций окна Сервис/Параметры. Например, с помощью показанных ниже процедур можно изменить стандартный вид окнаExcel, изменить заголовок, отключить действие перетаскивания формул.

Данные процедуры записываются в модуле «Эта книга» и выполняются при открытии и закрытии рабочей книги, то есть при выполнении событий OpenиBeforeClose:

Private Sub workbook_open()

" Заголовок рабочей книги

Application.Caption = "Киса и Ося были здесь"

" Цвет фона диапазона A1:D1 -Красный

"Границы диапазона A1:D1 - пунктир

"отменяется перетаскивание ячеек CellDragAndDrops

Application.CellDragAndDrop = Falsе

‘ убирается строка формул

Application.DisplayFormulaBar = False

‘убираются полосы прокрутки

Application.DisplayScrollBars = False

“устанавливается стиль ссылок R1C1

Application.ReferenceStyle = xlR1C1

"Private Sub Workbook_BeforeClose(Cancel As Boolean)

"Восстанавливается перетаскивание ячеек CellDragAndDrops

Application.CellDragAndDrop = True

‘Восстанавливается строка формул

Application.DisplayFormulaBar = True

‘Восстанавливаются полосы прокрутки

Application.DisplayScrollBars = True

‘Восстанавливается стиль ссылок А1

Application.ReferenceStyle = xlA1



Загрузка...