Вычисляемое поле в сводной таблице - VB
Формулировка задачи:
Здравствуйте!
Создаю формулу с условием. Если в поле больше 30%, то пишет "Завышенный", иначе пусто. Но в результате пишет "#ЗНАЧ!"
Почему так? Как правильно написать?
Создаю формулу с условием. Если в поле больше 30%, то пишет "Завышенный", иначе пусто. Но в результате пишет "#ЗНАЧ!"
Почему так? Как правильно написать?
Решение задачи: «Вычисляемое поле в сводной таблице»
textual
Листинг программы
Sub Макрос1()
Const VivodVozvrati As String = "Вывод возвраты"
Const VozvratiSummBezNDSOtOtr As String = "Процент возврата от отгрузки"
Const VozvratZav As String = "Возврат завышенный"
Dim PTCache As PivotCache
Dim PT As PivotTable
Cells(1, 1) = "Клиент"
Cells(1, 2) = VozvratiSummBezNDSOtOtr
For i = 1 To 10
Cells(i + 1, 1) = "Клиент " & i
Cells(i + 1, 2) = i / 10
Next i
Set PTCache = ThisWorkbook.PivotCaches.Create( _
SourceType:=xlDatabase, _
SourceData:=Range("A1:B11"))
Set PT = ThisWorkbook.Sheets(1).PivotTables.Add( _
PivotCache:=PTCache, _
TableDestination:=Cells(1, 5), _
TableName:="1")
ActiveSheet.PivotTables(1).CalculatedFields.Add VivodVozvrati, _
"= IF('" & VozvratiSummBezNDSOtOtr & "'>0.3," & """" & VozvratZav & """" & ","""")", True
ActiveSheet.PivotTables("1").PivotFields("Клиент").Orientation = xlRowField
ActiveSheet.PivotTables("1").PivotFields("Клиент").Position = 1
ActiveSheet.PivotTables("1").AddDataField ActiveSheet.PivotTables("1"). _
PivotFields("Процент возврата от отгрузки"), _
"Сумма по полю Процент возврата от отгрузки", xlSum
ActiveSheet.PivotTables("1").AddDataField ActiveSheet.PivotTables("1"). _
PivotFields(VivodVozvrati), "Сумма по полю Вывод возвраты", xlSum
End Sub