Шаг 350.
VBA в MSExcel. Модель прогнозирования денежных потоков... . Описание таблицы исходных данных. Автоматизация ввода курса валют

    На этом шаге мы рассмотрим проблему автоматизации ввода курса валют.

    В создаваемой таблице в столбец L курс валют необходимо вводить с клавиатуры, что не совсем удобно. Желательно, чтобы курс валюты, наименование которой указанно в столбце К, вводился самостоятельно и на указанную в столбце D дату. При изменении даты курс должен изменяться автоматически. Далее, предположим, что валютные операции предприятию не в диковинку, оно отслеживает изменение курсов валют и ведет таблицу, по которой зафиксировано их изменение по данным Центробанка, а также вводится будущая возможная их тенденция.

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


Рис.1. Рабочая книга Курс

    При создании формулы расчета эквивалента валюты по курсу Центробанка в ячейке L10 файл Курс должен быть открыт. Формула определения курса по введенной в ячейку К10 наименованию валюты и дате, введенной в ячейку D10, следующая:

  =ЕСЛИ(K10=0;0;ВПР(D10;[Курс.xls]Курс!$A:$D;
    ЕСЛИ(K10="USD";2;ЕСЛИ(K10="EUR";3;4));ЛОЖЬ))

    Основной функцией поиска курса валюты, несомненно, является функция ВПР. Она ничем не отличается от рассмотренных ранее примеров, кроме того, что для определения номера столбца, по которому она производит поиск искомого значения, указанного в первом аргументе (дата проведения операции), функция использует переменное значение, в зависимости от наименования текста валюты, введенной в ячейку К10. В зависимости от текста наименования валюты, функцией ЕСЛИ задается номер столбца поиска данных. Кроме того, формула осуществляет поиск данных не в этой книге, а в другой под именем Курс. Поэтому в формуле присутствует ссылка не только на имя рабочего листа, но и на имя файла (Курс), которые формируются автоматически при выделении столбцов A:D в этом файле.

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

  =ЕСЛИ(K10=0;0;ВПР(D10;'<Путь к файлу>\[Курс.xls]Курс'!$A:$D;
    ЕСЛИ(K10="USD";2;ЕСЛИ(K10="EUR";3;4));ЛОЖЬ))

    Если эта формула будет находиться в строке, в которой не указана дата, то для того, чтобы функция ВПР не возвращала значение ошибки #Н/Д, она находится в третьем аргументе первой функции ЕСЛИ, вычисления по которой происходят только в том случае, если введена дата в ячейку К10. Если дата введена, а наименование валюты нет, то формула возвратит также значение, равное нулю.

    На следующем шаге мы опишем расчеты, производимые в таблице.




Предыдущий шаг Содержание Следующий шаг