Стив Каммингс - VBA для чайников
- Название:VBA для чайников
- Автор:
- Жанр:
- Издательство:Компьютерное издательство Диалектика
- Год:2002
- Город:Москва
- ISBN:нет данных
- Рейтинг:
- Избранное:Добавить в избранное
-
Отзывы:
-
Ваша оценка:
Стив Каммингс - VBA для чайников краткое содержание
Эта книга поможет освоить интегрированную среду разработки VBA и научиться программировать в VBA с использование объектов, их свойств, методов и событий. Обсуждаемые приемы программирования иллюстрируются примерами, которые можно сразу же опробовать на практике. Полученные знания вы сможете применить как для настройки и усовершенствования популярный офисных приложений, включая приложения Office XP, так и для создания собственных приложений.
Книга рассчитана на тех, кто собирается быстро и без лишних усилий научиться программировать для Windows, используя VBA.
VBA для чайников - читать онлайн бесплатно полную версию (весь текст целиком)
Интервал:
Закладка:
Выбор и использование типов данных
В объявлении переменной можно просто указать ее имя. Следующий оператор дает указание VBA выделить пространство для переменной с именем variable, но не указывает, информацию какого типа будет эта переменная хранить:
Dim Variable
Альтернативой будет явное объявление типа данных переменной. Оператор
Dim sngMyOldSocks As Single объявляет sngMyOldSocks как переменную типа Single, что означает переменную, хранящую не слишком большое число с плавающей запятой, - что-то вроде чисел, использующихся для представления физических величин, с десятичной запятой и экспонентой, как, например, 6,02 x 10
VBA предлагает целый ряд других типов данных для переменных, включая исключительно удобные типы Date (Дата) и Currency (Денежный). Внимательно ознакомьтесь со всеми доступными типами данных, поскольку их правильное использование даст ключ к созданию правильно работающих программ. В табл. 7.1 приводятся основные факты, касающиеся типов данных, а дополнительные сведения и обсуждение приемов работы с конкретными типами данных вы найдете ниже, в разделе Дополнительные сведения о типах данных.
Таблица 7.1. Типы данных VBA
Тип данных |
Содержимое соответствующей переменной |
Диапазон допустимых значений |
Boolean |
Логическое Истина или Ложь |
Истина (-1) или Ложь (0) |
Byte |
Достаточно малое целое число |
От 0 до 255 |
Integer |
He слишком большое целое число |
От -32768 до 32767 |
Long |
Большое целое число |
От -2147483648 до 2147483647 |
Single |
Значение одинарной точности с плавающей запятой |
От -3.402823Е38 до -1.401298Е-45 для отрицательных значений и от 1,401298Е-45 до 3,402823Е38 для положительных |
Double |
Значение двойной точности с плавающей запятой |
От-1,79769313486232Е308 до - 4,94065645841247Е-324 для отрицательных значений и от 4,94065645841247Е-324 до 1,79769313486232Е308 для положительных |
Currency |
Большое число, для которого выделено 19 позиций, включая фиксированные четыре позиции после запятой |
От -922337203685477,5808 до 922337203685477,5807 |
Decimal |
Еще большее число, всего 29 позиций, из них до 28 позиций включительно для значения дробной части числа |
Допустимый диапазон зависит от числа знаков после запятой, например, ±79228162514264337593543950335 для чисел без дробной части или ±7,922816251426433759354 для чисел с 28 знаками после запятой |
Date |
Дата и время |
От 1 января 100 г. До 31 декабря 9999 г. |
Object |
Объект VBA |
Ссылка на любой объект |
String (переменной длины) |
Последовательность переменной длины, состоящая из символов |
Строковая переменная переменной длины может содержать от 0 до примерно двух миллиардов символов |
String (фиксированной длины) |
Последовательность заданной длины, состоящая из символов |
Строковая переменная фиксированной длины может содержать от 0 до примерно 65400 символов |
Variant |
Любое из допустимых данных |
Зависит от типа данных, содержащихся в переменной, в соответствии с вышеприведенными описаниями |
Пользовательский (требует использования оператора Туре) |
Группа переменных, используемых вместе как единое целое |
Для каждой из переменных в группе, зависит от ее типа в соответствии с вышеприведенными описаниями |
Использование конкретного типа данных по сравнению с типом Variant: за и против
Одни считают, что указание в объявлении переменной ее конкретного типа данных (т.е. типа, отличного от Variant ) - это хорошо, другие же считают, что это плохо. Объявление конкретного типа данных переменной помогает избежать одних ошибок, но обеспечивает массу возможностей для появления других. Такой подход способствует уменьшению и ускорению выполнения программ, но в большинстве реальных случаев эти усовершенствования, наверное, не будут слишком важны.
Вот некоторые обстоятельства, способствующие уменьшению числа ошибок. Если при объявлении переменной задается конкретный тип данных, VBA не позволит вам поместить а эту переменную данные других типов. Например, если переменная объявляется оператором
Dim dateAnniversary As Date
то VBA выведет на экран сообщение об ошибке, когда вы попытаетесь присвоить этой переменной текстовое значение, как здесь:
dateAnniversary = Поездка на Фиджи ' Ошибка
Сообщения об ошибках, наверное, будут раздражать, но все же это лучше, чем позволить программе работать с ошибочными данными.
Сообщение об ошибке не появилось бы, если dateAnniversary была объявлена как переменная типа Variant, т.е. как переменная, допускающая любой тип данных. Тип данных Variant можно объявить точно так же, как и любой другой, например:
Dim varToolsuite As Variant
Но поскольку тип данных Variant подразумевается по умолчанию, его явное указание можно опустить, оставив в объявлении только имя переменной:
Dim Toolsuite
Что же касается вопросов оптимизации, то, указывая конкретный тип, вы имеете возможность выбрать при этом тот тип данных, который обеспечивает в точности необходимый минимум для хранения соответствующей информации. Переменная типа Variant занимает больше памяти, чем переменная любого другого типа, да и доступ к такой переменной осуществляется медленнее. Однако такие аргументы начинают играть роль в программах с очень и очень большим числом переменных. Зато объявив все переменные как переменные типа Variant, вы получаете возможность избежать многих ошибок, сделать программный код более гибким, а также сделать более простой модификацию такого программного кода.
Я здесь не могу обсуждать этот вопрос подробнее, но вы должны знать, что некоторые очень хорошие программисты настоятельно рекомендуют программировать, используя исключительно переменные типа Variant.
Выберите подходящую для себя стратегию - объявление конкретного типа данных для каждой переменной или использование типа Variant для всех переменных - и придерживайтесь одной стратегии по крайней мере в рамках одной программы.
Явные объявления приветствуются
Независимо от того, решите вы назначать конкретные типы данных переменным или нет, каждую переменную перед использованием следует объявить. Как серьезный программист, вы можете сделать так, чтобы VBA заставлял вас объявлять переменные. Если в раздел объявлений модуля поместить оператор Option Explicit то при попытке использования предварительно не объявленной переменной VBA будет сообщать об ошибке. После такого своевременного предупреждения вы сможете добавить необходимое объявление в подходящем месте программы.
Такая требовательность VBA в деле явного объявления переменных дает и более ощутимые выгоды: тем самым предотвращается в перспективе вероятность появления в программе серьезных ошибок из-за банальных опечаток.
Читать дальшеИнтервал:
Закладка: