Книга: Excel. Трюки и эффекты
Последовательный ввод данных
Последовательный ввод данных
Многие пользователи сталкивались с ситуацией, когда необходимо быстро ввести данные и при этом каждый раз приходится вручную устанавливать курсор в нужное место. При вводе большого количества данных это и утомляет, и раздражает. Поэтому трюк, который мы сейчас рассмотрим, в подобных случаях наверняка найдет свое применение.
Смысл операции заключается в том, что необходимые данные будут вводиться в диалоговом окне и лишь после нажатия ОК они займут свое место в таблице. Сразу после этого в диалоговом окне можно будет вводить уже следующие данные и т. д. И все это – независимо от расположения курсора. Реализацию данной возможности рассмотрим на конкретном примере.
Предположим, что в ячейки столбца А необходимо последовательно ввести перечень дат, а в ячейки столбца В – торговую выручку, соответствующую каждой дате столбца А. Решить эту задачу можно с помощью макроса, код которого (он должен быть помещен в стандартный модуль) приведен в листинге 2.37.
Листинг 2.37. Последовательный ввод данных
Sub StreamInput()
Dim strDate As String
Dim strSum As String
Dim lngRow As Long
' Ввод данных в цикле (повторяется до тех пор, пока пользователь _
не введет пустую строку или не нажмет «Отмена» в окне ввода)
Do
lngRow = Range(«A65536»).End(xlUp).Row + 1
' Ввод даты
strDate = InputBox(«Вводим дату»)
If strDate = "" Then Exit Sub
' Ввод выручки
strSum = InputBox(«Вводим выручку»)
If strSum = "" Then Exit Sub
' Запись данных в ячейки
Cells(lngRow, 1) = strDate
Cells(lngRow, 2) = strSum
Loop
End Sub
После написания кода макрос Streamlnput будет доступен в окне выбора макросов. Для удобства поместите в любое удобное место интерфейса кнопку и привяжите к ней данный макрос – и можно приступать к последовательному вводу данных.
Введем в ячейки А1 и В1 названия соответствующих столбцов таблицы (например, Дата и Выручка) и нажмем кнопку вызова макроса. В результате откроется диалоговое окно, в котором с клавиатуры сначала вводится дата (в поле Вводим дату), а после нажатия кнопки ОК – сумма выручки (в поле Вводим выручку). После еще одного нажатия кнопки ОК введенные данные отобразятся в ячейках А2 и В2 соответственно, а в диалоговом окне можно вводить следующие данные (которые, в свою очередь, будут помещены в ячейки A3 и ВЗ) и т. д. Для выхода из цикла следует нажать в диалоговом окне кнопку Cancel
- Быстрое заполнение ячеек
- Автоматизация ввода данных в ячейки
- Ввод дробных чисел
- Сбор данных из разных ячеек
- Выделение диапазона над текущей ячейкой
- Поиск ближайшей пустой ячейки столбца
- Поиск максимального значения в диапазоне
- Автоматическая замена значений диапазона
- Засекречивание содержимого ячейки
- Всем ячейкам диапазона – одно значение
- Добавление в ячейку раскрывающегося списка
- Быстрое заполнение диапазона
- Гиперссылки – в виде обычного текста
- Помещение в ячейку электронных часов
- «Будильник»
- Поиск данных в диапазоне
- Создание цветной границы диапазона
- Автоматическое определение адреса ячейки
- Автоматизация добавления примечаний в указанном диапазоне
- Заливка диапазона
- Ввод строго ограниченных значений в указанный диапазон
- Последовательный ввод данных
- Быстрое выделение ячеек с отрицательными значениями
- Получение информации о выделенном диапазоне
- Кнопка для изменения числового формата ячейки
- Тестирование скорости чтения и записи диапазонов
- Резервное копирование базы данных InterBase
- Firebird РУКОВОДСТВО РАЗРАБОТЧИКА БАЗ ДАННЫХ
- Резервное копирование многофайловых баз данных
- Восстановление из резервных копий многофайловых баз данных
- Владелец базы данных
- ЧАСТЬ IV. База данных и ее объекты.
- Перевод базы данных InterBase 6.x на 3-й диалект
- Типы данных для работы с датой и временем
- Практическая работа 53. Запуск Access. Работа с объектами базы данных
- Обзор основных причин повреждения базы данных
- Ошибки проектирования базы данных
- Профилактика повреждений баз данных InterBase