Управление файлами с помощью VBA

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

 

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

Подробнее...
 

Массивы VBA (ч.3)

Функции LBound, UBound

Функции LBound, UBound возвращают нижнее и верхнее граничные значения индексов статического или динамического массива.

 

Синтаксис:

LBound (array_Name [, dimension])
UBound (array_Name [, dimension])

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

Нижеприведенный листинг демонстрирует использование функций LBound, UBound:

Подробнее...
 

Массивы VBA (ч.2). Объявление и использование массивов

Объявление массивов

Объявление массива с использованием оператора Dim имеет следующий синтаксис:


Dim VarName([Subscripts]) [As Type]

VarName - любое имя массива, использующее допустимый идентификатор имени;
Subscripts - измерение массива. Если размерность массива больше единицы, то Subscripts разделяются запятыми.

 

Оператор Subscripts имеет следующий синтаксис:


[lower To] upper [,[lower To] upper]..

lower - определяет нижний диапазон допустимых индексов для массива (необязательный аргумент);
upper - определяет верхний предел для индексов массива (обязательный аргумент).

 

Примеры правильного объявления массивов:

Dim Array_Str (1 To 10) As String - одномерный статический строковый массив, включающий 10 элементов;
Dim Array_Var() - динамический массив;
Dim Array_Mult (0 To 5, 0 To 7) As Integer - двумерный статический массив целых чисел, включающий 6*8=48 элементов.

 

При объявлении массивов следует помнить, что включение оператора Subscripts в объявлении массива создает статический массив с фиксированным числом элементов, пропуск оператора Subscripts в объявлении массива создает динамический массив, а установка директивы компилятора Option Base влияет на общее число элементов в массиве.

Подробнее...
 

Массивы VBA (ч.1). Понятие и размерность массива. Статические и динамические массивы.

Массив - это коллекция переменных, которые имеют общие имя и базовый тип. Все элементы данных, сохраняемых в массиве, должны иметь один и тот же тип. Информация, сохраненная в массиве, может быть доступна в любом порядке.

Массив позволяет сохранять и манипулировать многими элементами данных посредством единственной переменной. Обработку массивов значительно упрощает использование циклов.

Одномерные массивы

Одномерный массив - это самый простой вариант массива, использующий обыкновенный список данных. Например:

Вася, Петя, Коля, Миша, Ваня, Слава, Игорь, Юра, Саша, Вова

Это строковый массив, состоящий из 10 элементов. Дадим ему название My_Array.

 

Нумерация элементов в массиве начинается с 0. Такая система нумерации довольно распространена в программировании и называется нумерацией с нулевой базой.

Подробнее...
 

Циклы VBA (ч.3). Вложенные циклы

Циклы можно помещать внутрь друг друга. Помещение одной структуры цикла в другую называется вложением циклов. Можно делать вложение структур циклов разного типа.

При вложении циклов надо соблюдать определенные правила:

  • При вложении циклов For..Next каждый цикл должен иметь свою уникальную переменную счетчика;
  • При вложении циклов For Each..Next каждый цикл должен иметь свою уникальную element-переменную;
  • Если используется оператор Exit For или Exit Do во вложенном цикле, этим оператором заканчивается только выполняемый в данный момент цикл. VBA продолжает выполнение следующего цикла более высокого уровня.

 

В нижеприведенном листинге показан простейший пример использования вложенных циклов For..Next:

Подробнее...
 

Циклы VBA (ч.2). Циклы тестирующие условия до и после выполнения тела цикла

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

Цикл Do .. While

Конструкция цикла, тестирующая свое условие детерминанта до выполнения цикла.

Синтаксис:


Do While Condition
Statements
Loop

 

Condition - логическое выражение для детерминанта цикла

Statements - один, ни одного или несколько операторов, которые составляют тело цикла

Loop - ключевое слово, указывает на окончание тела цикла и обозначает место, из которого VBA возвращается в начало цикла для проверки условия

 

VBA выполняет цикл пока логическое выражение, представленное с помощью Condition, равно True.

При выполнении цикла Do While сначала тестируется логическое выражение (Condition); если оно равно True - выполняется тело цикла. При достижении ключевого слова Loop управление опять передается в начало цикла и снова проверяется логическое выражение. Так происходит до тех пор, пока логическое выражение не станет False. Когда логическое выражение становится False - управление передается оператору, следующему за ключевым словом Loop.

 

Обратите внимание! Если логическое выражение равно False при первом выполнении цикла Do While, то управление сразу передается оператору, следующему за Loop, а операторы, находящиеся в теле цикла соответственно пропускаются. Другими словами говоря, цикл Do While позволяет ни разу не выполнять операторы внутри него.

 

В нижеприведенном листинге представлен элементарный цикл Do While, подсчитывающий сумму цифр от 1 до 10:

Подробнее...
 

Страница 1 из 6

Дистанционное обучение

Сейчас на сайте

Сейчас 58 гостей и ни одного зарегистрированного пользователя на сайте

Besucherzahler
счетчик посещений
Рейтинг@Mail.ru