|
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用 · 内置多项VBA编程加强工具 ★ 免费下载 ★ ★ 使用手册★
select "期初" as 收发存,材料编码,材料名称,数量*1 as 数量,金额 from [期初$]====意思是:在你“期初
”这个表添加一个字段叫“收发存”,并且它对应的单元格全部填上“期初”两个字,这一句的作用就是给你“期初
”这个表加了一个列,同时把数量对应的数据全部转化成了数字。
“收发存”是在你的每个表里添加的一个字段名称,既然是个名称,叫什么无所谓,就像你的那些个名称一样,比如“材料编码”,你也可以改成“编码”,还可以改成“代码”,所以说,这个“收发存”,他可以改为其他任意名字,你也可把他叫汪精卫,或者萨达姆都行,不影响你出的数据结果,(当然我们实际取名肯定要和你的数据属性相关,以便于你理解,别人理解)。
语句的作用其实就是11楼的意思,所以,你也可以完全手动,把表合到一起再透视,就不要语句了。
个人认为:运用SQL的确能组合强大的数据源给透视表调用,但是能不用最好不用,原因有:1、因为有些数据直接透视一点问题没有,加了SQL语句后反而不能求和,我发生过几次这样事情,我们试想一下,假如数据庞大,用什么方法保证数据正确,(可能不管三七二十一,都加上*1保险);2、组后的数据源前8行数据是个天生的硬伤,特别是动态组合成数据源时(这个动态不是指数据动态扩展,而是指在已经不变的数据表里进行诸如筛选效果的取数再提供给透视表)是个伤脑筋的问题;3、SQL语句做出来的透视表其数据源表有固定的文件存放位置,位置改变随即不能刷新(当然,你可以加论坛里的VBA代码)。----我也学的不多,只是个人见解,再进一步学下去,也许有一天会发现这些个都不是问题。 |
|