Visual Basic 6. Руководство разработчика


Использование


Excel для вычисления математических выражений

В одном из предыдущих параграфов ("Проверка орфографии документов") рассматривался способ заимствования функций проверки орфографии " из Word. Теперь нечто подобное будет проделано с Excel. Excel — превосходное средство для выполнения математических операций. В то же время Visual Basic не содержит функций и методов, позволяющих выполнять вычисления математических выра­жений (заданных в виде строки — прим. ред.). Если Excel установлен на хост-компьютере, можно обратиться к нему непосредственно из приложения Visual Basic и использовать его для вычисления сложного математического выражения.

Самый простой способ вычисления математического выражения заключается в вызове метода Evaluate объекта Excel.Application. Пусть имеется инициализированная объектная переменная ExcelApp, тогда можно, например, вычислить математическое выражение:

1/cos(0.335) * cos(12.45)

Для этого следует вызвать метод Evaluate объекта ExcelApp и передать ему это выражение в виде параметра (строки):

у = ExcelApp.Evaluate "1/cos(0.335) * cos(12.45)"

Именно это происходит при выполнении щелчка на кнопке

Calculate Expression (Вычислить выражение) в форме ExcelVBA. Ниже приводится текст программы обработчика команды Calculate Expression.

Программа 14.17. Команда Calculate Expression

Private Sub bttnCalculate_Click()

Dim wSheet As Worksheet

Dim wBook As Workbook

Dim expression

 

StartExcel

expression = InputBox ("Enter math expression to evaluate _

i.e., 1/cos(3.45) * log (19.004)")

'(Введите вычисляемое выражение, например...)

On Error GoTo CalcError

If Trim(expression)

<> "" Then

MsgBox AppExcel.Evaluate(expression)

End If

GoTo Terminate

Exit Sub

 

CalcError:

MsgBox "Excel returned the following error" &   vbCrLf & _

Err.Description

' (Excel возвратил сообщение об ошибке...)

Terminate:

AppExcel.Quit

Set AppExcel = Nothing

End Sub

Программа предлагает пользователю ввести любое математическое выражение. Организовать вычисление произвольных математических выражений, используя программные средства Visual Basic затруднительно. В гл. 20 "Объекты, используемые в сценариях" будет рассматриваться использование элемента управления Script, позволяющего реализовывать вычисление математических выражений.




Начало  Назад  Вперед



Книжный магазин