Foxtable(狐表)用户栏目专家坐堂 → 提取科目间不重复的值,来设置计算公式


  共有2188人关注过本帖树形打印复制链接

主题:提取科目间不重复的值,来设置计算公式

帅哥哟,离线,有人找我吗?
有点蓝
  11楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:107680 积分:547721 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2023/7/14 10:29:00 [只看该作者]

那就只能使用效率不高的土办法了,就是原来1楼使用的方法,遍历所有行逐个判断。去重的话,把符合条件的值放入集合判断即可,大概

dim lst as new list(of string)
for 循环遍历
dim s as string = 当前科目
if 符合条件 then
if lst.contains(s) = false then ‘如果不在集合里。(如果在集合里就不需要重复添加了)
lst.add(s) 就添加
end if

 回到顶部
帅哥哟,离线,有人找我吗?
zhuxinhui
  12楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:八尾狐 帖子:1858 积分:5242 威望:0 精华:0 注册:2017/11/8 17:37:00
  发帖心情 Post By:2023/7/14 11:58:00 [只看该作者]

应该两者结合起来使用会好些

 回到顶部
帅哥哟,离线,有人找我吗?
zhuxinhui
  13楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:八尾狐 帖子:1858 积分:5242 威望:0 精华:0 注册:2017/11/8 17:37:00
  发帖心情 Post By:2023/7/14 12:36:00 [只看该作者]

Dim s1 As String = e.Form.Controls("ComboBox1").text
Dim s2 As String = e.Form.Controls("ComboBox2").Text
Dim ss As String = DataTables("表A").SQLGetComboListString("Left(科目,4)", "科目 >'" & s1 & "' and Left(科目," & s1.Length & ") < '" & s2.Substring(0, 4) & "'")

ss = ss & "|" & DataTables("表A").SQLGetComboListString("科目", "科目 >'" & s2.Substring(0, 4) & "' and 科目 <= '" & s2 & "'")


Dim s As String = s2
If ss.Contains(s) = True Then ‘如果不在集合里。(如果在集合里就不需要重复添加了)
ss.Remove(s)
End If

MessageBox.Show(ss)


此主题相关图片如下:qq截图20230714123508.png
按此在新窗口浏览图片

 回到顶部
帅哥哟,离线,有人找我吗?
zhuxinhui
  14楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:八尾狐 帖子:1858 积分:5242 威望:0 精华:0 注册:2017/11/8 17:37:00
  发帖心情 Post By:2023/7/14 12:49:00 [只看该作者]

移除字符出错了

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  15楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:107680 积分:547721 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2023/7/14 14:02:00 [只看该作者]

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:科目.zip


 回到顶部
帅哥哟,离线,有人找我吗?
zhuxinhui
  16楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:八尾狐 帖子:1858 积分:5242 威望:0 精华:0 注册:2017/11/8 17:37:00
  发帖心情 Post By:2023/7/14 14:14:00 [只看该作者]

还是不行,如果科目级数复杂点就不对了

思维有了,现在就是看如何移除了


 回到顶部
帅哥哟,离线,有人找我吗?
zhuxinhui
  17楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:八尾狐 帖子:1858 积分:5242 威望:0 精华:0 注册:2017/11/8 17:37:00
  发帖心情 Post By:2023/7/14 14:37:00 [只看该作者]

Dim s1 As String = e.Form.Controls("ComboBox1").text
Dim s2 As String = e.Form.Controls("ComboBox2").Text
Dim ss As String = DataTables("表A").SQLGetComboListString("Left(科目,4)", "科目 >'" & s1 & "' and Left(科目," & s1.Length & ") < '" & s2.Substring(0, 4) & "'")

ss = ss & "|" & DataTables("表A").SQLGetComboListString("科目", "科目 >'" & s2.Substring(0, 4) & "' and 科目 <= '" & s2 & "'")


Dim s As String = s2
If ss.Contains(s) = True Then
ss.Remove(s)
End If

MessageBox.Show(ss)

 

判断数组是否有此字符,如有则删除指定字符.

Dim s As String = s2
If ss.Contains(s) = True Then
ss.Remove(s)
End If

 

这个出错了

 

 


 回到顶部
帅哥哟,离线,有人找我吗?
zhuxinhui
  18楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:八尾狐 帖子:1858 积分:5242 威望:0 精华:0 注册:2017/11/8 17:37:00
  发帖心情 Post By:2023/7/15 11:13:00 [只看该作者]

ss0 = DataTables("表A").sqlGetValues("科目", "科目 >= '" & s1 & "' and 科目.Length <= '" & s1.Length & "‘")

 

想判断科目的字符长度,使用这个 ”科目.Length “应该是不对的

该如何写


 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  19楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:107680 积分:547721 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2023/7/15 11:36:00 [只看该作者]


 回到顶部
帅哥哟,离线,有人找我吗?
zhuxinhui
  20楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:八尾狐 帖子:1858 积分:5242 威望:0 精华:0 注册:2017/11/8 17:37:00
  发帖心情 Post By:2023/7/15 11:42:00 [只看该作者]

搞了我成个星期,终于搞定

 


 回到顶部
总数 24 上一页 1 2 3 下一页