以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- 关于数据排序问题 (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=152384) |
-- 作者:yacity -- 发布时间:2020/7/11 9:31:00 -- 关于数据排序问题 关于数据排序问题,如图所示, 排序代码 If
txt.IndexOf(" ") = -1 Then \'如果没有空格 tbl.filter =
"chanpinname Like " & txt & " or guige Like " &
txt & " or JM Like " & txt & " " tbl.Sort = "chanpinname desc,guige
desc,danwei desc" 本来是想要按从小到大排序的。 实际情况产品名称相同的情况下,10CM排在了 2CM 3CM 的前面,这明显不是我想要的。 在不改变数据内容的情况下,如何按从小到大排序? |
-- 作者:y2287958 -- 发布时间:2020/7/11 9:43:00 -- 添加辅助列 |
-- 作者:有点蓝 -- 发布时间:2020/7/11 9:43:00 -- 正常。字符串是按顺序从左到右进行排序的。10CM的从左第1位是1,比2CM的左第1位2小,所以排前面。 方法1、增加一个排序列,手工排序,然后按照这个排序列排序 2、增加一个双精度列,把规格里的数值提取放到双精度列里,然后按这个双精度列排序
|
-- 作者:yacity -- 发布时间:2020/7/15 16:21:00 -- 那么如果新增paixu列,怎么样提取 guige(规格)列中的的内容,把其中的数字填充入排序列呢? |
-- 作者:有点蓝 -- 发布时间:2020/7/15 16:36:00 -- 比如: Dim pattern As String = "[^\\d+.]" Dim txt = "2.5cm" Dim str = System.Text.RegularExpressions.Regex.Replace(txt , pattern ,"") Output.Show(str) |