阳光网驿-企业信息化交流平台【DTC零售连锁全渠道解决方案】

 找回密码
 注册

QQ登录

只需一步,快速开始

扫描二维码登录本站

手机号码,快捷登录

老司机
查看: 4029|回复: 7

[求助] 勤哲8.4中,怎样用VBA实现自动保存并新打开一张表

[复制链接]
  • TA的每日心情
    开心
    6 小时前
  • 签到天数: 2873 天

    [LV.Master]伴坛终老

    发表于 2009-6-4 23:03:16 | 显示全部楼层 |阅读模式
    未标题-3.jpg
    如上图。

    做一个简易会计系统,
    有一些会计科目,如果用人工一张张点击,太累人了,用VBA自动完成。
    但如果不出这个提示,多个科目只会存最后一张。
    有提示,又要人一张张点“是”,很累人。
    我用的是 oAdd.saveCase(, True, True)

    肯请高人,老师指点一下。
    用VBA自动换会计科目后,能自动保存所有的科目报表。
    楼主热帖
    启用邀请码注册,提高发帖质量,建设交流社区
  • TA的每日心情
    无聊
    2017-5-25 11:38
  • 签到天数: 529 天

    [LV.9]以坛为家II

    发表于 2009-6-4 23:35:42 | 显示全部楼层
    帮你定下楼上的兄弟
    启用邀请码注册,提高发帖质量,建设交流社区
  • TA的每日心情
    郁闷
    2016-10-16 15:53
  • 签到天数: 105 天

    [LV.6]常住居民II

    发表于 2009-6-5 11:53:22 | 显示全部楼层
    建议看下EXCEL服务器的联机帮助,位置在 开始,程序,EXCEL服务器,联机帮助,在搜索里填入VBA,会搜索出与VBA有关的实例
    启用邀请码注册,提高发帖质量,建设交流社区
  • TA的每日心情
    开心
    6 小时前
  • 签到天数: 2873 天

    [LV.Master]伴坛终老

     楼主| 发表于 2009-6-16 00:33:50 | 显示全部楼层

    回复 3楼 tayoo 的帖子

    没有相关的呀,
    找了好多,好象是不行的.
    启用邀请码注册,提高发帖质量,建设交流社区
  • TA的每日心情
    郁闷
    2016-10-16 15:53
  • 签到天数: 105 天

    [LV.6]常住居民II

    发表于 2009-6-16 09:13:27 | 显示全部楼层
    SaveCase(beforeClose,noForm,askFillNext)
     
    功能:保存当前正在填报的报表实例
    参数:
           beforeClose              固定赋值 False
           noForm                 布尔型,是否弹出保存窗口, True 不弹出对话框,False 弹出对话框。
           askFillNext              布尔型,保存后是否询问填下一张, True 询问是否填写下一张, False 不询问是否填写下一张。 应用场合:模板上vba程序调用
    例程:
    Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    Dim oAdd As Object
    Dim bResult As Boolean

    '获取Excel服务器编程接口
    Set oAdd = Application.COMAddIns("ESClient.Connect").Object

    '如果光标跳转到C3单元格
    If Target.Address = "$C$3" Then
    '保存当前报表,不弹出保存对话框,但成功后询问是否填报下一张
    bResult = oAdd.saveCase(, True, True)
    If bResult = False Then
    '若保存失败,提示
    MsgBox "保存失败!"
    Else
    '保存成功,光标自动跳转到C2,等待输入下一张
    Range("C2").Select
    End If
    End If

    '释放对象
    Set oAdd = Nothing

    End Sub
    ※ 注 意1:本论坛为技术交流论坛,无交流意义帖子会被删除或扣分。
    ※ 注 意2:为了网友们能更快地理解你的回复,请详细表述你的交流内容,并最好附上问题图片。
    ※ 注 意3:对于能够提供关于楼主附件的测试报告,经审核合格者,补偿购买额的50%。

    对于不符合以上要求的帖子,管理员将进行扣分和删除处理。
    以上内容请在提交帖子前删除

    领取不了红包?参考:http://bbs.sunwy.org/thread-23277-1-1.html
    启用邀请码注册,提高发帖质量,建设交流社区
  • TA的每日心情
    开心
    2021-6-9 09:02
  • 签到天数: 1750 天

    [LV.Master]伴坛终老

    发表于 2009-6-16 09:15:23 | 显示全部楼层
    系统中本身可以,有相应的函数的。
    启用邀请码注册,提高发帖质量,建设交流社区
  • TA的每日心情
    开心
    6 小时前
  • 签到天数: 2873 天

    [LV.Master]伴坛终老

     楼主| 发表于 2009-6-19 07:34:44 | 显示全部楼层

    回复 5楼 tayoo 的帖子

    谢谢,这个能存的。
    但是,没法新打开一张。
    如果用bResult = oAdd.saveCase(, True, True)
    可以新打开,但一张张的点,太累人了,
    如果用bResult = oAdd.saveCase(, True, False)
    不会自动打开一张新表。达不到自动处理所有表的目的。
    启用邀请码注册,提高发帖质量,建设交流社区
  • TA的每日心情
    奋斗
    2013-11-21 23:06
  • 签到天数: 14 天

    [LV.3]偶尔看看II

    发表于 2013-10-14 01:51:31 | 显示全部楼层
    jackrong 发表于 2009-6-19 07:34
    谢谢,这个能存的。
    但是,没法新打开一张。
    如果用bResult = oAdd.saveCase(, True, True)

    请问楼主实现这个功能了么?
    我现在也卡在这里了,请回复一下
    启用邀请码注册,提高发帖质量,建设交流社区
    您需要登录后才可以回帖 登录 | 注册

    本版积分规则

    快速回复 返回顶部 返回列表