有没有办法编写一个将禁用在工作簿中插入数据透视表的功能的子?VBA块数据透视表创建
0
A
回答
0
您可以protect the worksheets没有启用“使用数据透视表' 选项。这将禁用与Pivot相关的功能区按钮。
如果你喜欢VBA,下面的代码应该做的伎俩。
Private Sub Workbook_SheetPivotTableUpdate(ByVal Sh As Object, ByVal Target As PivotTable)
If Target.VisibleFields.Count = 0 Then
Debug.Print "Blocked creation of Pivot " & Target.Name & " on sheet " & Sh.Name
Target.TableRange2.Clear
End If
End Sub
0
如果拆卸Excel中的数据透视插入供应那么你的目的,尽量
文件菜单>选项>自定义Rebbions>展开插入(右手侧)>选择表并单击删除按钮。
请注意,这种意志,删除表中插入选项也:(
1
这是一个黑客位的 - 但你可以通过以下逻辑后创建删除:
- 陷阱的
Workbook_SheetChange
事件和测试,如果Target
范围有PivotTable
财产 - 如果是的话,得到
PivotTable
的TableRange2
和删除Range
Workbook_SheetChange
事件代码(ThisWorkbook
):
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
On Error Resume Next
If Not Target.PivotTable Is Nothing Then
RemovePivotFromRange Target
End If
End Sub
代码删除包含范围枢轴(在Module
):
Option Explicit
Sub RemovePivotFromRange(rngTarget As Range)
Dim pvt As PivotTable
Dim rngPivot As Range
Set pvt = rngTarget.PivotTable
Set rngPivot = pvt.TableRange2
rngPivot.Delete Shift:=xlUp
End Sub
相关问题
- 1. 在VBA中创建数据透视表
- 2. 创建数据透视表的Excel VBA
- 3. VBA:创建数据透视表
- 4. vba创建数据透视表excel 2015
- 5. VBA:创建透视表
- 6. 创建数据透视表
- 7. VBA Excel数据透视表
- 8. 数据透视表与VBA
- 9. Excel VBA从表中创建数据透视表
- 10. 使用VBA创建动态数据透视表
- 11. 如何创建数据透视表并使用VBA命名它?
- 12. 使用VBA创建数据透视表时出错
- 13. 删除空列以使用excel-vba创建数据透视表
- 14. 如何在Excel VBA中创建数据透视表?
- 15. 在VBA中创建数据透视表时出错
- 16. 使用VBA错误创建数据透视表
- 17. 如何使用vba创建数据透视表
- 18. 在无透视函数的SQL中创建数据透视表
- 19. 创建数据透视表时出错
- 20. SQL 2000 TSQL - 创建数据透视表
- 21. laravel创建的数据透视表
- 22. 在UNIX中创建数据透视表
- 23. VBA数据透视表过滤器
- 24. 在VBA中复制数据透视表
- 25. VBA数据透视表彼此之间
- 26. 数据透视表展开“值”VBA
- 27. VBA无法显示数据透视表
- 28. 使用VBA填充数据透视表
- 29. VBA,数据透视表向导方法
- 30. 使用VBA隐藏数据透视表