Office中国论坛/Access中国论坛

标题: [已解决]按百份比调度利润关系问题(表达式比较多,疑似很复杂,烦请达人帮忙,THKS!) [打印本页]

作者: sunny-xie    时间: 2008-1-19 16:57
标题: [已解决]按百份比调度利润关系问题(表达式比较多,疑似很复杂,烦请达人帮忙,THKS!)
[attach]28107[/attach]

库中的窗体Quotation根据附件的EXCEL表做的,想要的效果是根据EXCEL表里各行表达式,
由用户输入Lsshare,Nlshare的百份比值,程序自动算出Quotation窗体所有空白文本框的值,

表达式较多, 困饶多时,恳请达人帮忙,谢谢!

[ 本帖最后由 sunny-xie 于 2008-1-22 11:18 编辑 ]
作者: haemon    时间: 2008-1-19 17:17
可是你的EXECL表里的N,O,P各是什么东西?看不见
作者: sunny-xie    时间: 2008-1-19 17:21
[attach]28109[/attach]N,O,P请看
作者: haemon    时间: 2008-1-19 17:28
可以在LSshare和NLshare的更新后增加事件:
Private Sub LSshare_AfterUpdate()
    If Me.LSshare > 0 And Me.LSshare < 1 Then
        If Me.Nlshare > 0 And Me.Nlshare < 1 Then
            '计算各相应的文本框
        Else
            Me.Nlshare.SetFocus
        End If
    Else
        Me.LSshare.SetFocus
    End If

End Sub

Private Sub Nlshare_AfterUpdate()
    If Me.Nlshare > 0 And Me.Nlshare < 1 Then
        If Me.LSshare > 0 And Me.LSshare < 1 Then
            '计算各相应的文本框
        Else
            Me.LSshare.SetFocus
        End If
    Else
        Me.Nlshare.SetFocus
    End If
End Sub
作者: sunny-xie    时间: 2008-1-19 17:33
标题: 回复 4# 的帖子
相应的文本框运算如何做?如LFM的,他的表达式是G3+H3
作者: haemon    时间: 2008-1-19 17:37
比如LFM就是这样:
Me.LFM = Me.产品材料 + Me.白盒包材
其它的反正按你的文本框名字和公式来计算就可以了.

也可以把所有的计算做成一个子程序来调用就可以了, 这样可以少写代码.
作者: haemon    时间: 2008-1-19 17:39
要注意各参数的计算顺序,否则可能会出错吧
作者: haemon    时间: 2008-1-19 17:42
还有发现你把所有的字段格式都设成了文本,有点不合适吧
作者: sunny-xie    时间: 2008-1-19 17:51
标题: 回复 8# 的帖子
格式我会改过来,ACCESS可以+ - * /这样直接运算,也是写在需运算的文本框的
Private Sub LFOTP_AfterUpdate()

End Sub里就可?
作者: sunny-xie    时间: 2008-1-19 18:07
有点明白了,VBA不熟悉,我试试一个个写
作者: haemon    时间: 2008-1-19 18:14
直接写在文本框里就不能绑定在表里了.
其实需要计算的值不需要在表里设字段. 可以通过查询得到.
作者: ttstory    时间: 2008-2-3 15:29
太强了~~~学习中,谢谢楼主分享~~^_^




欢迎光临 Office中国论坛/Access中国论坛 (http://www.office-cn.net/) Powered by Discuz! X3.3