Foxtable(狐表)用户栏目专家坐堂 → [求助]多个DIM,怎么同时用?


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

主题:[求助]多个DIM,怎么同时用?

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


加好友 发短信
等级:幼狐 帖子:107 积分:1009 威望:0 精华:0 注册:2016/1/26 21:44:00
[求助]多个DIM,怎么同时用?  发帖心情 Post By:2016/2/3 18:43:00 [只看该作者]

Dim max1 As Double=math.max(Tables("表A").CURRENT("A列1"),Tables("表A").CURRENT("A列2"))
Dim max2 As Double=math.max(Tables("表A").CURRENT("A列3"),Tables("表A").CURRENT("A列4"))
Dim max3 As Double=math.max(max1,max2)
Tables("表A").CURRENT("A列汇总")=math.max(max3,Tables("表A").CURRENT("A列5"))

Dim max4 As Double=math.max(Tables("表A").CURRENT("B列1"),Tables("表A").CURRENT("B列2"))
Dim max5 As Double=math.max(Tables("表A").CURRENT("B列3"),Tables("表A").CURRENT("B列4"))
Dim max6 As Double=math.max(max4,max5)
Tables("表A").CURRENT("B列汇总")=math.max(max6,Tables("表A").CURRENT("B列5"))

Dim max7 As Double=math.max(Tables("表A").CURRENT("C列1"),Tables("表A").CURRENT("C列2"))
Dim max8 As Double=math.max(Tables("表A").CURRENT("C列3"),Tables("表A").CURRENT("C列4"))
Dim max9 As Double=math.max(max7,max8)
Tables("表A").CURRENT("C列汇总")=math.max(max9,Tables("表A").CURRENT("C列5"))

Dim max10 As Double=math.max(Tables("表A").CURRENT("D列1"),Tables("表A").CURRENT("D列2"))
Dim max11 As Double=math.max(Tables("表A").CURRENT("D列3"),Tables("表A").CURRENT("D列4"))
Dim max12 As Double=math.max(max10,max11)
Tables("表A").CURRENT("D列汇总")=math.max(max12,Tables("表A").CURRENT("D列5"))


表A有四个列,名称为:A列汇总,B列汇总,C列汇总,D列汇总
而这四个列,分别统计出某5个列的最大值

请问以上代码哪里错了?
(补充:以上代码单个填写是没问题的,现在问题是多个时,就有问题)

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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2016/2/3 19:41:00 [只看该作者]

多个的时候,具体有什么问题?你代码写到那里?

 

最好嘴哥例子发上来测试。


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


加好友 发短信
等级:幼狐 帖子:107 积分:1009 威望:0 精华:0 注册:2016/1/26 21:44:00
  发帖心情 Post By:2016/2/3 20:09:00 [只看该作者]

.NET Framework 版本:2.0.50727.5485
Foxtable 版本:2015.12.22.1
错误所在事件:窗口,测试窗口,Button2,Click
详细错误信息:
重载决策失败,必须进行收缩转换才能调用 Public“Max”: 
    'Public Shared Function Max(val1 As ULong, val2 As ULong) As ULong':
        与参数“val1”匹配的参数从“String”收缩到“ULong”。
        与参数“val2”匹配的参数从“String”收缩到“ULong”。
    'Public Shared Function Max(val1 As Long, val2 As Long) As Long':
        与参数“val1”匹配的参数从“String”收缩到“Long”。
        与参数“val2”匹配的参数从“String”收缩到“Long”。
    'Public Shared Function Max(val1 As Single, val2 As Single) As Single':
        与参数“val1”匹配的参数从“String”收缩到“Single”。
        与参数“val2”匹配的参数从“String”收缩到“Single”。
    'Public Shared Function Max(val1 As Decimal, val2 As Decimal) As Decimal':
        与参数“val1”匹配的参数从“String”收缩到“Decimal”。
        与参数“val2”匹配的参数从“String”收缩到“Decimal”。
    'Public Shared Function Max(val1 As Double, val2 As Double) As Double':
        与参数“val1”匹配的参数从“String”收缩到“Double”。
        与参数“val2”匹配的参数从“String”收缩到“Double”。
    'Public Shared Function Max(val1 As UInteger, val2 As UInteger) As UInteger':
        与参数“val1”匹配的参数从“String”收缩到“UInteger”。
        与参数“val2”匹配的参数从“String”收缩到“UInteger”。
    'Public Shared Function Max(val1 As Byte, val2 As Byte) As Byte':
        与参数“val1”匹配的参数从“String”收缩到“Byte”。
        与参数“val2”匹配的参数从“String”收缩到“Byte”。
    'Public Shared Function Max(val1 As SByte, val2 As SByte) As SByte':
        与参数“val1”匹配的参数从“String”收缩到“SByte”。
        与参数“val2”匹配的参数从“String”收缩到“SByte”。
    'Public Shared Function Max(val1 As Short, val2 As Short) As Short':
        与参数“val1”匹配的参数从“String”收缩到“Short”。
        与参数“val2”匹配的参数从“String”收缩到“Short”。
    'Public Shared Function Max(val1 As Integer, val2 As Integer) As Integer':
        与参数“val1”匹配的参数从“String”收缩到“Integer”。
        与参数“val2”匹配的参数从“String”收缩到“Integer”。
    'Public Shared Function Max(val1 As UShort, val2 As UShort) As UShort':
        与参数“val1”匹配的参数从“String”收缩到“UShort”。
        与参数“val2”匹配的参数从“String”收缩到“UShort”。


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


加好友 发短信
等级:幼狐 帖子:107 积分:1009 威望:0 精华:0 注册:2016/1/26 21:44:00
  发帖心情 Post By:2016/2/3 20:10:00 [只看该作者]

放在窗口的按钮控件里

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


加好友 发短信
等级:版主 帖子:5246 积分:33163 威望:0 精华:8 注册:2013/1/17 21:28:00
  发帖心情 Post By:2016/2/3 20:15:00 [只看该作者]

Dim max As Double
Dim t As Table = Tables("表A")
Dim r As Row = t.Current
For Each s As String In "第一列|第二列|第三列|第四列|第五列".Split("|")
    If r(s) > max Then
        max = r(s)
    End If
Next
Output.Show(max)
r("第六列") = max

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


加好友 发短信
等级:幼狐 帖子:107 积分:1009 威望:0 精华:0 注册:2016/1/26 21:44:00
  发帖心情 Post By:2016/2/3 21:11:00 [只看该作者]

可能我表达不清,,,其实我的意思是这样的

首先,我想在窗口的按钮控件A里设置代码,(自动筛选第一列至第五列中最大的数值,并在第六列显示出来),我用了以下这个代码,而且是正常可以用的
Dim max1 As Double=math.max(Tables("表A").CURRENT("第一列"),Tables("表A").CURRENT("第二列"))
Dim max2 As Double=math.max(Tables("表A").CURRENT("第三列"),Tables("表A").CURRENT("第四列"))
Dim max3 As Double=math.max(max1,max2)
Tables("表A").CURRENT("第六列")=math.max(max3,Tables("表A").CURRENT("第五列"))

然后,我想在窗口的按钮控件A里设置代码,(自动筛选第十一列至第十五列中最大的数值,并在第十六列显示出来),我用了以下这个代码,而且是正常可以用的
Dim max1 As Double=math.max(Tables("表A").CURRENT("第十一列"),Tables("表A").CURRENT("第十二列"))
Dim max2 As Double=math.max(Tables("表A").CURRENT("第十三列"),Tables("表A").CURRENT("第十四列"))
Dim max3 As Double=math.max(max1,max2)
Tables("表A").CURRENT("第十六列")=math.max(max3,Tables("表A").CURRENT("第十五列"))


最后,现在我想在窗口的按钮控件A里设置代码,(自动筛选第一列至第五列中最大的数值,并在第六列显示出来,自动筛选第十一列至第十五列中最大的数值,并在第十六列显示出来),我用了以下这个代码,但不能正常使用,提示错误,看截图

Dim max1 As Double=math.max(Tables("表A").CURRENT("第一列"),Tables("表A").CURRENT("第二列"))
Dim max2 As Double=math.max(Tables("表A").CURRENT("第三列"),Tables("表A").CURRENT("第四列"))
Dim max3 As Double=math.max(max1,max2)
Tables("表A").CURRENT("第六列")=math.max(max3,Tables("表A").CURRENT("第五列"))

Dim max4 As Double=math.max(Tables("表A").CURRENT("第十一列"),Tables("表A").CURRENT("第十二列"))
Dim max5 As Double=math.max(Tables("表A").CURRENT("第十三列"),Tables("表A").CURRENT("第十四列"))
Dim max6 As Double=math.max(max4,max5)
Tables("表A").CURRENT("第十六列")=math.max(max6,Tables("表A").CURRENT("第十五列"))




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










请问错在哪里?我应该如何修改代码?


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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2016/2/3 21:15:00 [只看该作者]

改一改就好

 

Dim max1 As Double=math.max(val(Tables("表A").CURRENT("A列1")), val(Tables("表A").CURRENT("A列2")))


 回到顶部