以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  问题没有解决,继续发贴  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=11131)

--  作者:小狐
--  发布时间:2011/7/8 16:55:00
--  问题没有解决,继续发贴

一列为:100201   100202 1002033333333333

要筛选出 100201   100202 两行,下列公式为何无效:

Dim a As String
a = "1002" & "??"
Tables("会计科目表").Filter = "[科目代码] like \'"& a &"\' "

为什么没有显示结果?

用#也不行

Dim a As String
a = "1002" & "##"
Tables("会计科目表").Filter = "[科目代码] like \'"& a &"\' "

为什么没有结果?


--  作者:狐狸爸爸
--  发布时间:2011/7/8 17:03:00
--  

表达式的通配符好事是*,请看:

http://help.foxtable.com/topics/0102.htm

 


--  作者:小狐
--  发布时间:2011/7/8 17:08:00
--  

狐爸没有理解我的意思:

只要筛选出1002 加两个数字,其它不要。

用*则会筛选出1002为开头的所有值

[此贴子已经被作者于2011-7-8 17:08:19编辑过]

--  作者:狐狸爸爸
--  发布时间:2011/7/8 17:12:00
--  
这个似乎没有办法的
--  作者:小狐
--  发布时间:2011/7/8 17:13:00
--  
图片点击可在新窗口打开查看
--  作者:小狐
--  发布时间:2011/7/8 17:15:00
--  

为什么这样都可以:红色部分

 

Like运算符

Like使用通配符来比较字符串。

可用的通配符有:

字符 说明
? 任何单个字符
* 零或多个字符
# 任何单个数字(0 到 9)
[字符列表] 字符列表中的任何单个字符,例如[abx]表示a、b、x三个字符中的任何一个。
[!字符列表] 不在字符列表中的任何单个字符,例如[!abx]表示除a、b、x之外的任何一个字符。

方括号中的字符列表,可以使用连字符 (–) 将范围的上下限分开,例如[a-e]表示字母a到e中的任意一个,[a-z]就表示任意一个字母,而[0-9]表示任意一数字。

将下面的代码复制到命令窗口执行,请留意注释和执行结果:

\'任意3个字符,后接3个数字
Output.Show( 
"ABC123" Like "???###"\'匹配


--  作者:狐狸爸爸
--  发布时间:2011/7/8 17:19:00
--  
这是代码,不是表达式。
--  作者:小狐
--  发布时间:2011/7/8 17:22:00
--  
那怎么办?
--  作者:狐狸爸爸
--  发布时间:2011/7/8 17:26:00
--  

用辅助列:

 

http://www.datasoft.com.cn/dispbbs.asp?BoardID=2&ID=11065&skin=0

 


--  作者:blackzhu
--  发布时间:2011/7/8 17:32:00
--  
以下是引用狐狸爸爸在2011-7-8 17:12:00的发言:
这个似乎没有办法的
用in行不?