第一种,直接查询QQ进程,看它是否还在传送文件,这个比较难,似乎API函数可以做到
第二种,查询相关文件夹,看是否每一个文件都是【自由】的,原理就是当QQ在传文件时,该文件是不能被更改的(或者也可以说这个文件不能被打开编辑),那么用什么来查询呢,我觉得可以用【试着打开编辑】,如果出错,那么说明不【自由】,如果全部文件都可以正常打开,就说明QQ已经传输结束了
-----好了,现在关键在【试着打开编辑】,,C语言中,是用try{} catch(...){},来完成的,不知道VBA有什么类似的错误陷井没有,是否是ONERROR?,你自己摸索一下呗
方法/步骤1
首先声明下本方法主要通过 数据链接 加上SQL中的SELECT和WHERE语句实现的,当然你不需要知道具体的语法意义,只要会写这两个单词以及记住固定的格式就可以提取需要的数据了。下面进入主题
2
第一步当然是打开需要查询的工作表,为了方便大家理解,特别新创建了一张表格(如图一),可以看到里面包含了比较多的信息。
3
然后点击<数据>选项卡下的<现有连接>(如图二)在d出的<现有连接>对话框中选择<浏览更多>(如图三),
4
然后在d出的<选择数据源>对话框中找到需要提取数据的那张表所在工作簿的位置并选中,接着点打开(如图四),在d出的<选择表格>对话框中,同样选择数据所在的工作表,并勾选<数据首行包含列标题>然后点确定。(如图五)
5
出现(如图六)的<导入数据>对话框,这里需要说明下:因为我们是提取明细数据所以最好是选择默认的也就是区域1所表示表(如果对提取的数据还要进行分析统计的话建议选择数据透视表),关于数据的放置位置可以根据自己的需要选择,这里以现有的工作表为例。(注:现有的工作表的放置位置可以通过鼠标点选)。设置好这些后就进入最重要的语句输入了,点击属性按钮(区域3)
6
在d出的连接属性中点击<定义>选项卡,(如图七 八)在命令文本对话框中输入要提取的条件
7
关于条件的内容下面会举几个例子以供参考
这里首先说明下查询语句的格式如下:
select * from [要提取数据的工作表名称$] where 条件
注:1:由于我们提取的都是整行的数据所以这里直接用*代替所有
2:工作表的名称后面必须要加$
END
例一:如何提取单价大于25的记录
1
命令文本中输入
select * from [1$] where 单价>25
点击确定后回到图六对话框再点击确定,d出图九,需要的数据一下就提取到了,是不是很方便
END
例二:如何提取区域为AA的记录
1
在命令文本中输入
select * from [1$] where 区域="AA"
点击确定 结果如图十
注:字母,中文需要加""(英文状态下的双引号)
END
例三:如何提取区域为CC且(或)数量大于25且(或)单价大于30的数据
1
在命令文本中输入
select * from [1$] where 区域="CC" and 数量>25 and 单价>30
点击确定结果如图十一
注:多个条件且的关系用and连接
2
如何提取区域为CC或数量大于25或单价大于30的数据
在命令文本中输入
select * from [1$] where 区域="CC" or 数量>25 or 单价>30
注:或的关系用or连接结果如图十二
END
特别注意:
一、语句各个词之间一定要有空格连接
二、如果语句都是对的但是系统提示错误,要关闭文件并重新打开按前面的步骤重新 *** 作一遍即可,有可能是系统本身的原因导致的。如图
步骤阅读
3
三、查询好后如果需要再次查询需要先关闭文件再打开,不然很可能会出现上面二的错误。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)