以文本方式查看主题

-  易表在线答疑  (http://www.egrid2000.com/dvbbs/index.asp)
--  用户社区  (http://www.egrid2000.com/dvbbs/list.asp?boardid=2)
----  根据列名称判断该列在该表中列位置公式  (http://www.egrid2000.com/dvbbs/dispbbs.asp?boardid=2&id=6113)

--  作者:Tyeb
--  发布时间:2007/1/13 17:15:00
--  根据列名称判断该列在该表中列位置公式
len(eval("Split(""|"+ListCols([%表%])+""","""+[%列%]+""",1)"))-len(Substitute(eval("Split(""|"+ListCols([%表%])+""","""+[%列%]+""",1)"),"|",""))
--  作者:czy
--  发布时间:2007/1/13 17:33:00
--  
收下了,谢谢!!
--  作者:gdlgh
--  发布时间:2007/1/14 23:15:00
--  
呵。也可以这样!
eval(eval("Find("""+ColName+""","""+Substitute(ListCols(GridName),"|",""",""")+""")")+1)
--  作者:czy
--  发布时间:2007/1/14 23:23:00
--  
呵呵,楼上的公式不通用。

既已知ColName了,就无需这么麻烦,直接col就可以。


--  作者:gdlgh
--  发布时间:2007/1/14 23:39:00
--  
下面引用由czy2007/01/14 11:23pm 发表的内容:
呵呵,楼上的公式不通用。
既已知ColName了,就无需这么麻烦,直接col就可以。

呵。。班竹睇清点:(楼主的公式是知表列名称后求位置的!)

eval(eval("Find("""+[%列%]+""","""+Substitute(ListCols([%表%]),"|",""",""")+""")")+1)

只不过是我不转为变量嘛!


--  作者:czy
--  发布时间:2007/1/14 23:46:00
--  
我明白啊,ColName只指当前列的列标题,将ColName转换为列位置就是col,我应该没理解错吧。
--  作者:gdlgh
--  发布时间:2007/1/14 23:52:00
--  
呵。。不知点讲好!
现在是求位置,不知列名如何求位置呢?
我就不明班竹点会讲我的公式不通用呢?
与楼主的公式有什么不同呢?

-=-=-=- 以下内容由 gdlgh2007年01月14日 11:57pm 时添加 -=-=-=-
应不会是我理解错楼主的意思吧!
--  作者:czy
--  发布时间:2007/1/14 23:57:00
--  
呵呵,因为你的公式只能求出当前焦点所在列的列位置,我这样理解对吗?

比如在一张空表中,现在焦点在第一列,你的公式是:Find("第一列","第一列","第二列","第三列","第四列","第五列","第六列","第七列","第八列")+1

如果焦点在第二列公式则:Find("第二列","第一列","第二列","第三列","第四列","第五列","第六列","第七列","第八列")+1


--  作者:gdlgh
--  发布时间:2007/1/15
--  
是呀!看下这个:

egd文件下载

-=-=-=- 以下内容由 gdlgh2007年01月15日 00:01am 时添加 -=-=-=-
若我的公式不通用的话,那楼主的公式是点样通用呢?

-=-=-=- 以下内容由 gdlgh2007年01月15日 00:03am 时添加 -=-=-=-
我想班竹应是忙过头啦!睇花眼吧!呵。


--  作者:czy
--  发布时间:2007/1/15 0:03:00
--  
楼上的文件没问题。

-=-=-=- 以下内容由 czy2007年01月15日 00:04am 时添加 -=-=-=-

3楼和9楼有质的区别。