|
|
|
| Есть запрос содержащий поля:
ID_PISMA K1 K2 K3
1 0,5 0,3
2 0,2 0,1
В данном примере поле K3 не содержит значений, это может бытьс любым из полей (строк полей.
Задача найти значение функции W = к1+к2 +к3
Для решения этой задачи разработана функция:
Public Function W(K1 As Variant, k2 As Variant, k3 As Variant) As Variant
Dim X1 As Variant
Dim X2 As Variant
Dim X3 As Variant
X1 = X2 = X3 = 0
W = 0
If K1 Is Not Null Then
X1 = K1
End If
If k2 Is Not Null Then
X2 = k2
End If
If k3 Is Not Null Then
X3 = k3
End If
W = X1 + X2 + X3
End Function
|
Вопрос в чем ошибка! Помогите разобраться. | |
|
| |
|
|
|
| if isnull(K1)
или
if nz(k1,0) = 0 | |
|
| |
|
|
|
| Огромное спасибо все залетало! | |
|
| |
|
54 Кб. |
|
| Function W(K1 As Variant, k2 As Variant, k3 As Variant) As Variant
Dim X1 As Variant
Dim X2 As Variant
Dim X3 As Variant
X1 = X2 = X3 = 0
W = 0
If IsNull(K1) Then
X1 = 0
Else
X1 = K1
End If
If IsNull(k2) Then
X2 = 0
Else
X2 = k2
End If
If IsNull(k3) Then
X3 = 0
Else
X3 = k3
End If
W = X1 + X2 + X3
End Function | |
|
| |
|
|
|
| BИз хелпа:
Optional Необязательный. Указывает, что этот аргумент необязателен. При использовании этого элемента все последующие аргументы, которые содержит списокАргументов, также должны быть необязательными и быть описаны с помощью ключевого слова Optional
В итоге получаем более простую функцию
Public Function W(Optional K1 As Variant = 0, Optional k2 As Variant = 0, Optional k3 As Variant = 0) As Variant
W = K1 + k2 + k3
End Function
|
| |
|
| |