如上图,想在数据透视表中只显示红色区域的内容,手动勾选就比较繁琐。

实现思路:

  • 先复制红色的内容。
  • 鼠标停留在数据透视表【型号】列的任意数据上(通过该单元格可以获取数据透视表和字段)
  • 由于数据透视表的字段不能全部取消筛选(至少要保留一项),所以先找到红色内的第一个有效值(本例中的红字本来就是数据源,所以都是有效的,实际使用可能会有不在列表的内容),让数据透视表只显示这一项
  • 再循环红色内容,如果在列表内的全部显示(不在列表的也可以提取出来)
        clip := Trim(Clipboard, " `t`r`n")
    pt := xl.ActiveCell.PivotTable
    pf := xl.ActiveCell.PivotField
    xl.ScreenUpdating := False
    ;先找到第一个存在的项目firstItem
    Loop, Parse, clip, `n, `r
    {
    Try
    {
    pf.PivotItems(A_LoopField)
    firstItem := A_LoopField
    ;MsgBox,% firstItem
    Break
    }
    }
    ;只显示firstItem
    For k In pf.PivotItems
    {
    If (k.Value = firstItem)
    k.Visible := True
    Else If k.Visible
    k.Visible := False
    }
    ;显示剪切板项目
    Loop, Parse, clip, `n, `r
    {
    Try ;可能项目不在PivotItems里
    pf.PivotItems(A_LoopField).Visible := True
    ;Catch ;记录失败项
    ;MsgBox,% A_LoopField . "`n显示失败"
    }
    xl.ScreenUpdating := True
    Return

      

AutoHotkey调用VBA实现批量精确筛选数据透视表某字段内容。的更多相关文章

  1. 【Excle数据透视表】如何隐藏数据透视表中行字段的”+/-”按钮

    如下图:新建的数据透视表中有存在"+/-"符号,导致数据透视图不太美观,那么怎么处理呢? 解决方案 单击"显示"组中的"+/-"按钮显示或隐 ...

  2. Excel2010数据透视表1

    “透视”作为一个动词,意思是旋转.如果将数据看成是一个物体,数据透视表允许旋转数据汇总,从不同角度或观点来看它.数据透视表能够轻松地移动字段,交换字段位置,设置创建项目的特定组. 如果给出一个陌生的物 ...

  3. 【Excle数据透视表】如何创建非共享缓存的数据透视表

    一般情况下,利用同一个数据源创建多个数据表时,默认创建的是共享缓存的数据透视表.刷新一个数据透视表时会影响其他数据透视表的展示结果. 解决方案 创建非共享缓存的多个数据透视表 步骤一 单击工作表数据任 ...

  4. VBA学习之关于数据透视表的应用

    工作中很多地方需要同时处理多个数据表,而且用数据透视表进行排版,排序,计算字段,一个一个的做非常累,这里给出批量处理的方法. 学习VBA之前最好懂一点点VB的基础知识,因为里面的很多语法问题都是由VB ...

  5. Excel 批量快速合并相同的单元格:数据透视表、宏代码、分类汇总

    Excel 批量快速合并相同的单元格   在制作Excel表格的时候,为了使得自己制作的报表更加简洁明了,方便查阅,经常需要合并很多相同的单元格,如果有几千几万条记录需要合并的话,真的会让人发疯.怎样 ...

  6. 【Excle数据透视表】如何水平并排显示报表筛选区域的字段

    原始效果 目标效果 解决方案 设置数据透视表"在报表区域筛选显示字段"为"水平并排" 步骤 方法① 单击数据透视表任意单元格→数据透视表工具→分析→选项→布局和 ...

  7. VSTO学习笔记(十四)Excel数据透视表与PowerPivot

    原文:VSTO学习笔记(十四)Excel数据透视表与PowerPivot 近期公司内部在做一种通用查询报表,方便人力资源分析.统计数据.由于之前公司系统中有一个类似的查询使用Excel数据透视表完成的 ...

  8. 数据透视表sql:用SQL行列转换实现数据透视的一些思考

    用SQL行列转换实现数据透视的一些思考 摘要:根据对报表开发过程中碰到的需要用SQL行列转换进行解决的一类查询统计问题的分析,逐步探索求解得到一种较通用的解决思路,并用函数进行实现.该解决思路及函数实 ...

  9. EXCEL 2010学习笔记 —— 数据透视表

    今天整理一下EXCEL2010 数据透视表的课程笔记,数据透视表可以对多组数据进行统计和整理,是一种基本的数据可视化工具. 记录6个方面的总结: 1.创建数据透视表 2.更改数据透视表的汇总方式 3. ...

随机推荐

  1. Delphi对Word一些进阶操作

    利用VBA 编程,可以使许多日常的任务自动完成,使用户的工作更有效率. 1.在启动时显示打开对话框 一般情况下启动Word,Word 会认为是创建一个新文档.如果只是想打开一个旧文档进行编辑,在Wor ...

  2. GITHUB一个新的项目发布

    经过一段时间的积累,写了一些代码,发现好多功能有好几个系统都在用,但是公司的开发过程中,并没有一个对通用功能提取整合普遍化的一个流程,所以就自己将在项目开发过程中遇到的一些功能提取出来,并尽量做到普适 ...

  3. 编写规范的javascript

    js代码,前端都会写.但细节决定成败,代码是否优雅.规范,可以看得出一个JScoder的水平来. 曾经多次被项目组长吐槽,并被授予一本秘笈,上面有关于JS编程规范的一些总结. 无奈秘笈不能长借,无奈只 ...

  4. PLC编程逻辑思路

    PLC编程逻辑思路 在整个执行过程的流程中,都是在不断地找启动条件,停止条件以及输出结果.当条件不够时,就得想办法如果添加标志位,根据已有条件去构造条件:当结果开发耦合时,就制造中间继电器去除耦合. ...

  5. 我所理解的js闭包

    举个例子: function f1(){ var n=; function f2(){ alert(n); } } 上面代码中,f2()可以读取f1()中的局部变量n的值,但是f1()不能反过来读取f ...

  6. 缓存与DB数据一致性问题解决的几个思路

    使用缓存必然会碰到缓存跟真实数据不一致的问题,虽然我们会在数据发生变化时通知缓存,但是这个延迟时间内必然会导致数据不一致,如何解决一般有下面几个思路: 首先,当这个延迟如果在业务上时可以接受的,比如文 ...

  7. 基于easyUI实现权限管理系统(一)一—组织结构树图形

    此文章是基于 EasyUI+Knockout实现经典表单的查看.编辑 一. 相关文件介绍 1. organize.jsp:组织结构树的主界面 <!DOCTYPE html PUBLIC &quo ...

  8. Linux 更新python至2.7后ImportError: No module named _ssl

    原文:http://blog.51cto.com/hunt1574/1630961 编译安装python 2.7后无法导入ssl包 解决办法: 1 下载地址:http://www.openssl.or ...

  9. Java读取粘贴板内容

    package com.test.jvm.oom.design; import java.awt.Image; import java.awt.Toolkit; import java.awt.dat ...

  10. JavaScript常用类

    JS常用类 一.Number 1.常用数字 整数:10 小数:3.14 科学计数法:1e5 | 1e-5 正负无穷:Infinity | -Infinity 2.常用进制 二进制:0b1010 八进制 ...