Foxtable(狐表)用户栏目专家坐堂 → 将一列的字符串全排列


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

主题:将一列的字符串全排列

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


加好友 发短信
等级:五尾狐 帖子:1015 积分:8851 威望:0 精华:0 注册:2015/8/12 16:28:00
将一列的字符串全排列  发帖心情 Post By:2016/7/7 20:26:00 [显示全部帖子]

Dim arr() As String

Dim a,ind As Integer
a= Tables("表A").Find("", 0, 0, False, True, True)
For ind = 0 To a-1
arr(Ind) =Tables("表A").Rows(ind)("第一列")
Next ind
'
''求排列
'Dim lst_Permutation As List(Of String()) = PermutationAndCombination(Of String).GetPermutation(arr)
'
'Dim s1 As String = ""
'For Each ary As String() In lst_Permutation
   's1 &= ary(0) & ary(1) & ary(2) & ary(3)  & ary(4)
'Next
MessageBox.Show(arr(1))

以上是我的代码,借鉴了部分狐表大大提供的全排列代码。
但是在赋值阶段总是提示“未将对象引用设置到对象的实例。”
即使将全排列部分注释掉也是如此


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


加好友 发短信
等级:五尾狐 帖子:1015 积分:8851 威望:0 精华:0 注册:2015/8/12 16:28:00
  发帖心情 Post By:2016/7/7 21:00:00 [显示全部帖子]

。。。
为毛这种搭配总是猜不透。。。好几次了
记得有一次就是e.datarow可以用在findrow里面。。。

Dim wz As Integer = Tables("订单").FindRow(e.DataRow)


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


加好友 发短信
等级:五尾狐 帖子:1015 积分:8851 威望:0 精华:0 注册:2015/8/12 16:28:00
  发帖心情 Post By:2016/7/7 21:03:00 [显示全部帖子]

就是arr(x)里面的X可以用行的index。而不能直接用数字。。。

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


加好友 发短信
等级:五尾狐 帖子:1015 积分:8851 威望:0 精华:0 注册:2015/8/12 16:28:00
  发帖心情 Post By:2016/7/8 8:53:00 [显示全部帖子]

以下是引用大红袍在2016/7/7 23:49:00的发言:

 

肯定可以直接用数字。但是这个数字,必须在0到arr元素个数-1这个范围内。

For ind = 0 To a-1
arr(Ind) =Tables("表A").Rows(ind)("第一列")
.......
MessageBox.Show(arr(1))
 
 
那么为什么这里按照这样赋值不行?
最后arr(1)总是没有值
 

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


加好友 发短信
等级:五尾狐 帖子:1015 积分:8851 威望:0 精华:0 注册:2015/8/12 16:28:00
  发帖心情 Post By:2016/7/8 8:55:00 [显示全部帖子]


图片点击可在新窗口打开查看此主题相关图片如下:capture.png
图片点击可在新窗口打开查看

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


加好友 发短信
等级:五尾狐 帖子:1015 积分:8851 威望:0 精华:0 注册:2015/8/12 16:28:00
  发帖心情 Post By:2016/7/8 20:30:00 [显示全部帖子]

Dim a,ind As Integer
a= Tables("表A").Find("", 0, 0, False, True, True)
Dim arr(a-1) As String
For ind = 0 To a-1
arr(Ind) =Tables("表A").Rows(ind)("第一列")
Next ind

我更新了下代码,加入判断空行的数字a。再定义好数组的数量后就没有报错了

 回到顶部