Foxtable(狐表)用户栏目专家坐堂 → [求助]数据计算


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

主题:[求助]数据计算

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


加好友 发短信
等级:幼狐 帖子:105 积分:1201 威望:0 精华:0 注册:2015/8/10 22:49:00
[求助]数据计算  发帖心情 Post By:2016/1/21 17:17:00 [只看该作者]

表的金额列和进价列,售价列是数据列,其余是表达式列,希望通过输入金额,进价,售价,然后得出整数的数量和不大于售价和四位小数的修正进价并且差异小余0.05
请各位大师写一个循环判断的代码.谢谢.
图片点击可在新窗口打开查看此主题相关图片如下:fa piao计算.bmp
图片点击可在新窗口打开查看
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:fa piao计算.zip


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


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

不明白你想说什么逻辑是什么啊?

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


加好友 发短信
等级:幼狐 帖子:105 积分:1201 威望:0 精华:0 注册:2015/8/10 22:49:00
  发帖心情 Post By:2016/1/21 19:27:00 [只看该作者]

回复大师,我不知道该如何表述,举个例子吧:一般的fa piao是根据商品清单数量X单价=fa piao金额的,转到我这里没有清单了只有fa piao的金额了,并且现在的单价也变了,我需要根据fa piao的金额反推商品的数量和单价,本来是金额/单价=数量的,可是数量总应该是整数吧.但是取整后就无法和金额相同了.比如说一瓶饮料进价3.5售价5元我订购了15瓶X3.5元进价=应该是52.5元金额的fa piao,可是当时没有开fa piao,现在饮料涨价了一瓶4.5元进价售价5.5,按52.5元的金额/4.5元进价=11.66666...瓶,显然行不通.按11瓶算的话金额成了49.5元.fa piao的总金额不能差异到0.09元,如果按7.5元一瓶的话7瓶刚好52.5元金额,但进价都高于售价了.我的逻辑是根据显有总金额和商品的进价和售价推算出整数的数量和不大于售价的进价并且进价的小数位在四位以内金额差异在0.09以内.fa piao有很多张.
  这个表格不会删除             
   重做            
               
现有金额    已知进价    已知售价   未知数量  未知进价   金额差异           
   52.5   3.5   5   动态   动态   <0.09         
   52.5   4.5 6                  
我这样表述可以吗?是不是用枚举代码解决啊?
谢谢指导.


[此贴子已经被作者于2016/1/21 19:50:39编辑过]

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


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

参考代码

 

Dim je As Double = 778.96 '金额
Dim jj As Double = 3.78 '进价
Dim sj As Double = 5 '售价
Dim wc As Double = 0.05 '最大误差

Dim jd As Double = 0
Do While jd <= wc
Dim xzjj As Double = jj
    Do While xzjj < sj
        Dim max As Double = (je+jd) / xzjj
        Dim min As Double = (je-jd) / xzjj
        Dim sl As Integer = min
        Do While sl <= max
            If xzjj*sl >= je-jd AndAlso xzjj*sl <= je+jd Then
                output.show(Round2(xzjj,4) & " " & Round2(sl,4) & " " & round2(xzjj * sl,4))
                Return ""
            End If
            sl += 1
           
        Loop
        xzjj += 0.0001
    Loop
    jd += 0.0001
Loop


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


加好友 发短信
等级:幼狐 帖子:105 积分:1201 威望:0 精华:0 注册:2015/8/10 22:49:00
  发帖心情 Post By:2016/1/21 21:34:00 [只看该作者]

不知道代码该放哪里,放在按钮里提示
图片点击可在新窗口打开查看此主题相关图片如下:错误提示.bmp
图片点击可在新窗口打开查看
---------------------------
错误
---------------------------
编译错误:'Return' statement in a Sub or a Set cannot return a value.



错误代码:Return ""



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


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

如下

 

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:fa piao计算.table


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


加好友 发短信
等级:幼狐 帖子:105 积分:1201 威望:0 精华:0 注册:2015/8/10 22:49:00
  发帖心情 Post By:2016/1/21 22:06:00 [只看该作者]

谢谢大红袍大师.这么晚了还耐心帮助,祝你晚安.

 回到顶部