Office学院 加入收藏
Office学院 Access Word Excel Powerpoint Wps Access Outlook Tags  
您现在的位置: Office学院 - Access - 统计代码行的源程序

统计代码行的源程序

添加记录: 统计代码行的源程序 类别: Access 发布日期: 2007.01.09

当您有开发完一个作品时,也许你希望知道你的代码写了多少行,这时你可以使用下面的代码来统计它,不过有些耗时,我统计了一下我开发的一个软件,共8108行,运行了近20分钟:-D

在你的程序中新增一模块,命名为:mdlCountLines,并复制下面的代码到该模块中:

Public Function fCountLines() As Long
'   Code to count the number of lines of code in the current database
    On Error GoTo E_Handle
    Dim db As Database
    Dim ctr As Container
    Dim doc As Document
    Dim frm As Form
    Dim rpt As Report
    Dim mdl As Module
    Dim lngCount As Long
    Dim intCount As Integer, intLoop As Integer
    Set db = CurrentDb
    Set ctr = db.Containers!Forms
    For Each doc In ctr.Documents
        DoCmd.OpenForm doc.Name, acDesign, , , , acHidden
        Set frm = Forms(doc.Name)
        If frm.HasModule = True Then
            Set mdl = frm.Module
            intCount = mdl.CountOfLines
            For intLoop = 1 To intCount
                If Len(mdl.Lines(intLoop, 1)) > 0 And Left(Trim(mdl.Lines(intLoop, 1)), 1) <> "'" Then
                    lngCount = lngCount + 1
                End If
            Next intLoop
            Set mdl = Nothing
        End If
        DoCmd.Close acForm, doc.Name
        Set frm = Nothing
    Next doc
    Set ctr = db.Containers!Reports
    For Each doc In ctr.Documents
        DoCmd.OpenReport doc.Name, acViewDesign
        Set rpt = Reports(doc.Name)
        If rpt.HasModule = True Then
            Set mdl = rpt.Module
            intCount = mdl.CountOfLines
            For intLoop = 1 To intCount
                If Len(mdl.Lines(intLoop, 1)) > 0 And Left(Trim(mdl.Lines(intLoop, 1)), 1) <> "'" Then
                    lngCount = lngCount + 1
                End If
            Next intLoop
            Set mdl = Nothing
        End If
        DoCmd.Close acReport, doc.Name
        Set rpt = Nothing
    Next doc
    Set ctr = db.Containers!Modules
    For Each doc In ctr.Documents
        If doc.Name <> "mdlCountLines" Then
            DoCmd.OpenModule doc.Name
            Set mdl = Modules(doc.Name)
            intCount = mdl.CountOfLines
            For intLoop = 1 To intCount
                If Len(mdl.Lines(intLoop, 1)) > 0 And Left(Trim(mdl.Lines(intLoop, 1)), 1) <> "'" Then
                    lngCount = lngCount + 1
                End If
            Next intLoop
            DoCmd.Close acModule, doc.Name
            Set mdl = Nothing
        End If
    Next doc
    fCountLines = lngCount
fExit:
    On Error Resume Next
    Set ctr = Nothing
    Set db = Nothing
    Exit Function
E_Handle:
    MsgBox Err.Description & vbCrLf & "fCountLines", vbOKOnly + vbCritical, "Error: " & Err.Number
    Resume fExit
End Function

原作者:未知
原文地址:http://www.applecore99.com/gen/gen072.asp

顶一下
上一篇:用VB制作文件下载程序
下一篇:获取文件夹名称的函数
Tags:

相关信息
  • 用VB制作文件下载程序
  • 利用Winsock控件实现局域网通信
  • 在VB中如何使用 Winsock 控件
  • 菜单和工具栏知识(9)-菜单项和工具栏控件的IDs
  • 菜单和工具栏知识(8)-对工具栏的运行时刻修改
  • 菜单和工具栏知识(7)-工具栏
  • 菜单和工具栏知识(6)-菜单系统的运行时刻修改
  • 菜单和工具栏知识(5)-菜单系统的设计时刻修改
  • 菜单和工具栏知识(4)-菜单系统
  • 菜单和工具栏知识(3)-选择对用户界面进行最佳增强
  • 菜单和工具栏知识(2)-用户界面的更改范围
  • 菜单和工具栏知识(1)-修改用户界面的工具
  • 使用 Access 2003 对象模型的 XML 功能
  • 运行 Visual Basic 代码
  • 关于与 Access 一起工作的应用程序
  • 获取文件夹名称的函数
  • 英文姓名转换案例
  • 远程连接access数据库的方法
  • 第三届网站之星评选活动
  • 赞助ACCESS软件网
  • 赞助帐号与付款方式
  • 招北京ACCESS编程人员
  • Access无需DSN文件快速连接SQL Server的方法!
  • 无需*.DSN文件创建对SQL SEVER数据库的链接
  • 控件自适应屏幕分辩率或调整窗体大小变化
  • ACCESS编程技巧数据库
  • 网站赞助名单
  • 解决联合查询溢出的一个方法
  • 用ADOX创建一个新的ACCESS2000数据库
  • 窗体间变量的传值方法汇总














  • 生日密码
    血型分析
    生肖分析



    制作单位 Office学院 © 版权所有


    联系我们 关于我们 友情链接 站点地图 免责声明


    Office学院,致力于打造专业的OFFICE应用交流平台。