设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

12下一页
返回列表 发新帖
查看: 2799|回复: 14
打印 上一主题 下一主题

[模块/函数] 如何转换成for ..next i这样的形式(问题已经解决)

[复制链接]
跳转到指定楼层
1#
发表于 2008-1-21 16:17:59 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
原程序如下:

Private Sub Form_Load()
Dim i As Integer

  If (Me.Ctl1月.C) Then
     Me.Ctl1月合计.C
  Else
     Me.Ctl1月合计.C
  End If

If (Me.Ctl2月.C) Then
     Me.Ctl2月合计.C
  Else
     Me.Ctl2月合计.C
  End If
  
   If (Me.Ctl3月.C) Then
     Me.Ctl3月合计.C
  Else
     Me.Ctl3月合计.C
  End If
  
   If (Me.Ctl4月.C) Then
     Me.Ctl4月合计.C
  Else
     Me.Ctl4月合计.C
  End If
  
   If (Me.Ctl5月.C) Then
     Me.Ctl5月合计.C
  Else
     Me.Ctl5月合计.C
  End If


End Sub想要改变成:所有的数据换成I,本人试了好几种都说程序错误

Private Sub Form_Load()
Dim i As Integer
for i=1 to 5

'所有的数据换成变量i,本人试了好几种都说程序错误,我知道现成这种加"i"肯定是错误,就是想把上面N个if语句改成for ..next i这样,请高手帮忙改一下,谢谢了

     If (Me.Ctl"i"月.C) Then
     Me.Ctl"i"月合计.C
  Else
     Me.Ctl"i"月合计.Ci"月])"
  End If
next i
End Sub

[ 本帖最后由 su_xx 于 2008-1-22 15:34 编辑 ]
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 分享淘帖 订阅订阅
2#
发表于 2008-1-21 17:39:12 | 只看该作者
Private Sub Form_Load()
    Dim I As Byte
    For I = 1 To 5
        If Me.Controls("Ctl" & I & "月").C Then
            Me.Controls("Ctl" & I & "月").C
        Else
            Me.Controls("Ctl" & I & "月").C & I & "月])"
        End If
    Next I
      
End Sub

[ 本帖最后由 咱家是猫 于 2008-1-21 17:40 编辑 ]
3#
发表于 2008-1-21 17:41:29 | 只看该作者
奇怪了,每次发出来代码都变呢?
4#
发表于 2008-1-21 17:41:51 | 只看该作者
既然都不上传例子,想要医生隔空把脉,那么我也来个隔山打牛,开创收费新纪元好了


本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
5#
发表于 2008-1-21 17:42:25 | 只看该作者
再发一次试试
Private Sub Form_Load()

    Dim I As Byte
    For I = 1 To 5
        If Me.Controls("Ctl" & I & "月").ControlSource = "" Then
            Me.Controls("Ctl" & I & "月").ControlSource = "=0"
        Else
            Me.Controls("Ctl" & I & "月").ControlSource = "=sum([" & I & "月])"
        End If
    Next I
      
End Sub
6#
发表于 2008-1-21 17:42:43 | 只看该作者
晕,转眼间前面又多出只猫咪
7#
发表于 2008-1-21 17:43:33 | 只看该作者
R兄的收费估计又要泡汤了.
8#
发表于 2008-1-21 17:45:54 | 只看该作者
你看我,用图片多好

一来不会改变格式,二来让楼主又能手工敲一遍加强印象和记忆
9#
发表于 2008-1-21 17:45:59 | 只看该作者
原来没看清楼主的代码,现做以修正
Private Sub Form_Load()

    Dim I As Byte
    For I = 1 To 5
        If Me.Controls("Ctl" & I & "月").ControlSource = "" Then
            Me.Controls("Ctl" & I & "月合计").ControlSource = "=0"
        Else
            Me.Controls("Ctl" & I & "月合计").ControlSource = "=sum([" & I & "月])"
        End If
    Next I
      
End Sub
10#
发表于 2008-1-21 17:59:59 | 只看该作者

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|站长邮箱|小黑屋|手机版|Office中国/Access中国 ( 粤ICP备10043721号-1 )  

GMT+8, 2024-5-31 20:32 , Processed in 1.096972 second(s), 35 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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