As Variant, varValue As Variant) As Boolean
Dim prp As Variant
On Error GoTo 999 'Назначаем переход по ошибке
funChangeProperty = False 'Возвращаем результат при ошибке
fld.Properties(strName) = varValue 'Присваиваем значение полю
funChangeProperty = True 'Возвращаем результат
Exit Function 'Выходим из программы
999:
If Err = 3270 Then 'Свойство не найдено
Set prp = fld.CreateProperty(strName, varType, varValue) 'Создаем свойство
fld.Properties.Append prp 'Добавляем свойство
Err.Clear 'Очищаем поток от ошибки
Resume Next 'Возвращаемся к следующему оператору
End If
Err.Clear 'Очищаем от незнакомой ошибки