![]() Главная страница Случайная страница Разделы сайта АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника |
Непосредственный ввод данных
Листинг 2.38. Ограничение возможных значений диапазона Sub Worksheet_Change(ByVal Target As Excel.Range) Dim rgInputRange As Range Dim cell As Range Dim strMessage As String Dim varResult As Variant
' Диапазон, в котором контролируется ввод Set rgInputRange = Range(" A1: E10") ' Просмотр всех измененных ячеек и контроль ввода в тех, которые _ принадлежат заданному диапазону For Each cell In Target ' Проверка принадлежности диапазону If Union(cell, rgInputRange).Address = rgInputRange.Address Then ' Контроль правильности ввода varResult = IsCellDataValid(cell) If varResult = True Then ' Введено корректное значение Exit Sub Else ' Формирование и вывод сообщения об ошибке strMessage = " Ячейка " & cell.Address(False, False) & ": " _ & vbCrLf & vbCrLf & varResult MsgBox strMessage, vbCritical, " Неправильное значение" ' Очистка ввода Application.EnableEvents = False cell.ClearContents cell.Activate Application.EnableEvents = True End If End If Next cell End Sub
Function IsCellDataValid(cell As Range) As Variant ' Возвращает True, если в ячейку вводится целое число _ в диапазоне от 1 до 12. В противном случае выдается _ соответствующее сообщение
' Проверка, является ли содержимое ячейки числом If Not WorksheetFunction.IsNumber(cell.Value) Then IsCellDataValid = " Нечисловое значение" Exit Function End If ' Проверка, является ли введенное число целым If Int(cell.Value) < > cell.Value Then IsCellDataValid = " Введите целое число" Exit Function End If ' Проверка соответствия числа диапазону If cell.Value < 1 Or cell.Value > 12 Then IsCellDataValid = " Значение должно быть от 1 до 12" Exit Function End If
' В ячейку введено допустимое значение IsCellDataValid = True End Function Забиваем Сайты В ТОП КУВАЛДОЙ - Уникальные возможности от SeoHammer
Каждая ссылка анализируется по трем пакетам оценки: SEO, Трафик и SMM.
SeoHammer делает продвижение сайта прозрачным и простым занятием.
Ссылки, вечные ссылки, статьи, упоминания, пресс-релизы - используйте по максимуму потенциал SeoHammer для продвижения вашего сайта.
Что умеет делать SeoHammer
— Продвижение в один клик, интеллектуальный подбор запросов, покупка самых лучших ссылок с высокой степенью качества у лучших бирж ссылок. — Регулярная проверка качества ссылок по более чем 100 показателям и ежедневный пересчет показателей качества проекта. — Все известные форматы ссылок: арендные ссылки, вечные ссылки, публикации (упоминания, мнения, отзывы, статьи, пресс-релизы). — SeoHammer покажет, где рост или падение, а также запросы, на которые нужно обратить внимание. SeoHammer еще предоставляет технологию Буст, она ускоряет продвижение в десятки раз, а первые результаты появляются уже в течение первых 7 дней. Зарегистрироваться и Начать продвижение Последовательный ввод данных Листинг 2.39. Последовательный ввод данных 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
|