1*b1cdbd2cSJim JagielskiVERSION 1.0 CLASS 2*b1cdbd2cSJim JagielskiBEGIN 3*b1cdbd2cSJim Jagielski MultiUse = -1 'True 4*b1cdbd2cSJim JagielskiEND 5*b1cdbd2cSJim JagielskiAttribute VB_Name = "DocumentAnalysis" 6*b1cdbd2cSJim JagielskiAttribute VB_GlobalNameSpace = False 7*b1cdbd2cSJim JagielskiAttribute VB_Creatable = False 8*b1cdbd2cSJim JagielskiAttribute VB_PredeclaredId = False 9*b1cdbd2cSJim JagielskiAttribute VB_Exposed = False 10*b1cdbd2cSJim Jagielski'************************************************************************* 11*b1cdbd2cSJim Jagielski' 12*b1cdbd2cSJim Jagielski' Licensed to the Apache Software Foundation (ASF) under one 13*b1cdbd2cSJim Jagielski' or more contributor license agreements. See the NOTICE file 14*b1cdbd2cSJim Jagielski' distributed with this work for additional information 15*b1cdbd2cSJim Jagielski' regarding copyright ownership. The ASF licenses this file 16*b1cdbd2cSJim Jagielski' to you under the Apache License, Version 2.0 (the 17*b1cdbd2cSJim Jagielski' "License"); you may not use this file except in compliance 18*b1cdbd2cSJim Jagielski' with the License. You may obtain a copy of the License at 19*b1cdbd2cSJim Jagielski' 20*b1cdbd2cSJim Jagielski' http://www.apache.org/licenses/LICENSE-2.0 21*b1cdbd2cSJim Jagielski' 22*b1cdbd2cSJim Jagielski' Unless required by applicable law or agreed to in writing, 23*b1cdbd2cSJim Jagielski' software distributed under the License is distributed on an 24*b1cdbd2cSJim Jagielski' "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 25*b1cdbd2cSJim Jagielski' KIND, either express or implied. See the License for the 26*b1cdbd2cSJim Jagielski' specific language governing permissions and limitations 27*b1cdbd2cSJim Jagielski' under the License. 28*b1cdbd2cSJim Jagielski' 29*b1cdbd2cSJim Jagielski'************************************************************************* 30*b1cdbd2cSJim JagielskiOption Explicit 31*b1cdbd2cSJim Jagielski 32*b1cdbd2cSJim JagielskiConst CMAX_NUM_ISSUETYPES = 100 33*b1cdbd2cSJim Jagielski 34*b1cdbd2cSJim JagielskiPrivate mName As String 35*b1cdbd2cSJim JagielskiPrivate mApplication As String 36*b1cdbd2cSJim JagielskiPrivate mPageCount As Long 37*b1cdbd2cSJim JagielskiPrivate mCreated As Date 38*b1cdbd2cSJim JagielskiPrivate mModified As Date 39*b1cdbd2cSJim JagielskiPrivate mAccessed As Date 40*b1cdbd2cSJim JagielskiPrivate mPrinted As Date 41*b1cdbd2cSJim JagielskiPrivate mSavedBy As String 42*b1cdbd2cSJim JagielskiPrivate mRevision As Long 43*b1cdbd2cSJim JagielskiPrivate mTemplate As String 44*b1cdbd2cSJim JagielskiPrivate mHasMacros As Boolean 45*b1cdbd2cSJim Jagielski 46*b1cdbd2cSJim JagielskiPrivate mDocIssuesCosts As Long 47*b1cdbd2cSJim JagielskiPrivate mPreparableIssuesCosts As Long 48*b1cdbd2cSJim JagielskiPrivate mMacroCosts As Long 49*b1cdbd2cSJim Jagielski 50*b1cdbd2cSJim JagielskiPrivate mReferences As Collection 51*b1cdbd2cSJim JagielskiPrivate mIssues As Collection 52*b1cdbd2cSJim JagielskiPrivate mIssuesCountArray(1 To CMAX_NUM_ISSUETYPES) As Long 53*b1cdbd2cSJim JagielskiPrivate mTotalIssueTypes As Long 54*b1cdbd2cSJim JagielskiPrivate mMinorIssuesCount As Long 55*b1cdbd2cSJim JagielskiPrivate mMacroIssuesCount As Long 56*b1cdbd2cSJim JagielskiPrivate mPreparableIssuesCount As Long 57*b1cdbd2cSJim Jagielski 58*b1cdbd2cSJim JagielskiPrivate mDocOverallIssueClass As EnumDocOverallIssueClass 59*b1cdbd2cSJim Jagielski 60*b1cdbd2cSJim JagielskiPrivate mMacroTotalNumLines As Long 61*b1cdbd2cSJim JagielskiPrivate mMacroNumUserForms As Long 62*b1cdbd2cSJim JagielskiPrivate mMacroNumUserFormControls As Long 63*b1cdbd2cSJim JagielskiPrivate mMacroNumUserFormControlTypes As Long 64*b1cdbd2cSJim JagielskiPrivate mMacroNumOLEControls As Long 65*b1cdbd2cSJim JagielskiPrivate mMacroNumFieldsUsingMacros As Long 66*b1cdbd2cSJim JagielskiPrivate mMacroNumExternalRefs As Long 67*b1cdbd2cSJim JagielskiPrivate mMacroOverallClass As EnumDocOverallMacroClass 68*b1cdbd2cSJim JagielskiPrivate mbBelowIssuesLimit As Boolean 69*b1cdbd2cSJim Jagielski 70*b1cdbd2cSJim JagielskiPublic Property Get BelowIssuesLimit() As Boolean 71*b1cdbd2cSJim Jagielski BelowIssuesLimit = mbBelowIssuesLimit 72*b1cdbd2cSJim JagielskiEnd Property 73*b1cdbd2cSJim JagielskiPublic Property Let BelowIssuesLimit(vNewValue As Boolean) 74*b1cdbd2cSJim Jagielski mbBelowIssuesLimit = vNewValue 75*b1cdbd2cSJim JagielskiEnd Property 76*b1cdbd2cSJim Jagielski 77*b1cdbd2cSJim JagielskiPublic Property Get MacroOverallClass() As EnumDocOverallMacroClass 78*b1cdbd2cSJim Jagielski MacroOverallClass = mMacroOverallClass 79*b1cdbd2cSJim JagielskiEnd Property 80*b1cdbd2cSJim JagielskiPublic Property Let MacroOverallClass(vNewValue As EnumDocOverallMacroClass) 81*b1cdbd2cSJim Jagielski mMacroOverallClass = vNewValue 82*b1cdbd2cSJim JagielskiEnd Property 83*b1cdbd2cSJim Jagielski 84*b1cdbd2cSJim JagielskiPublic Property Get MacroNumExternalRefs() As Long 85*b1cdbd2cSJim Jagielski MacroNumExternalRefs = mMacroNumExternalRefs 86*b1cdbd2cSJim JagielskiEnd Property 87*b1cdbd2cSJim JagielskiPublic Property Let MacroNumExternalRefs(vNewValue As Long) 88*b1cdbd2cSJim Jagielski mMacroNumExternalRefs = vNewValue 89*b1cdbd2cSJim JagielskiEnd Property 90*b1cdbd2cSJim Jagielski 91*b1cdbd2cSJim JagielskiPublic Property Get MacroNumFieldsUsingMacros() As Long 92*b1cdbd2cSJim Jagielski MacroNumFieldsUsingMacros = mMacroNumFieldsUsingMacros 93*b1cdbd2cSJim JagielskiEnd Property 94*b1cdbd2cSJim JagielskiPublic Property Let MacroNumFieldsUsingMacros(vNewValue As Long) 95*b1cdbd2cSJim Jagielski mMacroNumFieldsUsingMacros = vNewValue 96*b1cdbd2cSJim JagielskiEnd Property 97*b1cdbd2cSJim Jagielski 98*b1cdbd2cSJim JagielskiPublic Property Get MacroNumOLEControls() As Long 99*b1cdbd2cSJim Jagielski MacroNumOLEControls = mMacroNumOLEControls 100*b1cdbd2cSJim JagielskiEnd Property 101*b1cdbd2cSJim JagielskiPublic Property Let MacroNumOLEControls(vNewValue As Long) 102*b1cdbd2cSJim Jagielski mMacroNumOLEControls = vNewValue 103*b1cdbd2cSJim JagielskiEnd Property 104*b1cdbd2cSJim Jagielski 105*b1cdbd2cSJim JagielskiPublic Property Get MacroNumUserFormControlTypes() As Long 106*b1cdbd2cSJim Jagielski MacroNumUserFormControlTypes = mMacroNumUserFormControlTypes 107*b1cdbd2cSJim JagielskiEnd Property 108*b1cdbd2cSJim JagielskiPublic Property Let MacroNumUserFormControlTypes(vNewValue As Long) 109*b1cdbd2cSJim Jagielski mMacroNumUserFormControlTypes = vNewValue 110*b1cdbd2cSJim JagielskiEnd Property 111*b1cdbd2cSJim Jagielski 112*b1cdbd2cSJim JagielskiPublic Property Get MacroNumUserFormControls() As Long 113*b1cdbd2cSJim Jagielski MacroNumUserFormControls = mMacroNumUserFormControls 114*b1cdbd2cSJim JagielskiEnd Property 115*b1cdbd2cSJim JagielskiPublic Property Let MacroNumUserFormControls(vNewValue As Long) 116*b1cdbd2cSJim Jagielski mMacroNumUserFormControls = vNewValue 117*b1cdbd2cSJim JagielskiEnd Property 118*b1cdbd2cSJim Jagielski 119*b1cdbd2cSJim JagielskiPublic Property Get MacroNumUserForms() As Long 120*b1cdbd2cSJim Jagielski MacroNumUserForms = mMacroNumUserForms 121*b1cdbd2cSJim JagielskiEnd Property 122*b1cdbd2cSJim JagielskiPublic Property Let MacroNumUserForms(vNewValue As Long) 123*b1cdbd2cSJim Jagielski mMacroNumUserForms = vNewValue 124*b1cdbd2cSJim JagielskiEnd Property 125*b1cdbd2cSJim Jagielski 126*b1cdbd2cSJim JagielskiPublic Property Get MacroTotalNumLines() As Long 127*b1cdbd2cSJim Jagielski MacroTotalNumLines = mMacroTotalNumLines 128*b1cdbd2cSJim JagielskiEnd Property 129*b1cdbd2cSJim JagielskiPublic Property Let MacroTotalNumLines(vNewValue As Long) 130*b1cdbd2cSJim Jagielski mMacroTotalNumLines = vNewValue 131*b1cdbd2cSJim JagielskiEnd Property 132*b1cdbd2cSJim Jagielski 133*b1cdbd2cSJim JagielskiPublic Property Get MacroCosts() As Long 134*b1cdbd2cSJim Jagielski MacroCosts = mMacroCosts 135*b1cdbd2cSJim JagielskiEnd Property 136*b1cdbd2cSJim JagielskiPublic Property Let MacroCosts(vNewValue As Long) 137*b1cdbd2cSJim Jagielski mMacroCosts = vNewValue 138*b1cdbd2cSJim JagielskiEnd Property 139*b1cdbd2cSJim Jagielski 140*b1cdbd2cSJim JagielskiPublic Property Get DocIssuesCosts() As Long 141*b1cdbd2cSJim Jagielski DocIssuesCosts = mDocIssuesCosts 142*b1cdbd2cSJim JagielskiEnd Property 143*b1cdbd2cSJim JagielskiPublic Property Let DocIssuesCosts(vNewValue As Long) 144*b1cdbd2cSJim Jagielski mDocIssuesCosts = vNewValue 145*b1cdbd2cSJim JagielskiEnd Property 146*b1cdbd2cSJim Jagielski 147*b1cdbd2cSJim JagielskiPublic Property Get PreparableIssuesCosts() As Long 148*b1cdbd2cSJim Jagielski PreparableIssuesCosts = mPreparableIssuesCosts 149*b1cdbd2cSJim JagielskiEnd Property 150*b1cdbd2cSJim JagielskiPublic Property Let PreparableIssuesCosts(vNewValue As Long) 151*b1cdbd2cSJim Jagielski mPreparableIssuesCosts = vNewValue 152*b1cdbd2cSJim JagielskiEnd Property 153*b1cdbd2cSJim Jagielski 154*b1cdbd2cSJim JagielskiPublic Property Get DocOverallIssueClass() As EnumDocOverallIssueClass 155*b1cdbd2cSJim Jagielski DocOverallIssueClass = mDocOverallIssueClass 156*b1cdbd2cSJim JagielskiEnd Property 157*b1cdbd2cSJim Jagielski 158*b1cdbd2cSJim JagielskiPublic Property Let DocOverallIssueClass(ByVal vNewValue As EnumDocOverallIssueClass) 159*b1cdbd2cSJim Jagielski mDocOverallIssueClass = vNewValue 160*b1cdbd2cSJim JagielskiEnd Property 161*b1cdbd2cSJim Jagielski 162*b1cdbd2cSJim JagielskiPublic Property Get TotalIssueTypes() As Long 163*b1cdbd2cSJim Jagielski TotalIssueTypes = mTotalIssueTypes 164*b1cdbd2cSJim JagielskiEnd Property 165*b1cdbd2cSJim Jagielski 166*b1cdbd2cSJim JagielskiPublic Property Let TotalIssueTypes(ByVal vNewValue As Long) 167*b1cdbd2cSJim Jagielski mTotalIssueTypes = vNewValue 168*b1cdbd2cSJim JagielskiEnd Property 169*b1cdbd2cSJim JagielskiPublic Property Get name() As String 170*b1cdbd2cSJim Jagielski name = mName 171*b1cdbd2cSJim JagielskiEnd Property 172*b1cdbd2cSJim Jagielski 173*b1cdbd2cSJim JagielskiPublic Property Let name(ByVal vNewValue As String) 174*b1cdbd2cSJim Jagielski mName = vNewValue 175*b1cdbd2cSJim JagielskiEnd Property 176*b1cdbd2cSJim Jagielski 177*b1cdbd2cSJim JagielskiPublic Property Get Application() As String 178*b1cdbd2cSJim Jagielski Application = mApplication 179*b1cdbd2cSJim JagielskiEnd Property 180*b1cdbd2cSJim Jagielski 181*b1cdbd2cSJim JagielskiPublic Property Let Application(ByVal vNewValue As String) 182*b1cdbd2cSJim Jagielski mApplication = vNewValue 183*b1cdbd2cSJim JagielskiEnd Property 184*b1cdbd2cSJim JagielskiPublic Property Get PageCount() As Long 185*b1cdbd2cSJim Jagielski PageCount = mPageCount 186*b1cdbd2cSJim JagielskiEnd Property 187*b1cdbd2cSJim Jagielski 188*b1cdbd2cSJim JagielskiPublic Property Let PageCount(ByVal vNewValue As Long) 189*b1cdbd2cSJim Jagielski mPageCount = vNewValue 190*b1cdbd2cSJim JagielskiEnd Property 191*b1cdbd2cSJim Jagielski 192*b1cdbd2cSJim JagielskiPublic Property Get Created() As Date 193*b1cdbd2cSJim Jagielski Created = mCreated 194*b1cdbd2cSJim JagielskiEnd Property 195*b1cdbd2cSJim Jagielski 196*b1cdbd2cSJim JagielskiPublic Property Let Created(ByVal vNewValue As Date) 197*b1cdbd2cSJim Jagielski mCreated = vNewValue 198*b1cdbd2cSJim JagielskiEnd Property 199*b1cdbd2cSJim Jagielski 200*b1cdbd2cSJim JagielskiPublic Property Get Modified() As Date 201*b1cdbd2cSJim Jagielski Modified = mModified 202*b1cdbd2cSJim JagielskiEnd Property 203*b1cdbd2cSJim Jagielski 204*b1cdbd2cSJim JagielskiPublic Property Let Modified(ByVal vNewValue As Date) 205*b1cdbd2cSJim Jagielski mModified = vNewValue 206*b1cdbd2cSJim JagielskiEnd Property 207*b1cdbd2cSJim Jagielski 208*b1cdbd2cSJim JagielskiPublic Property Get Accessed() As Date 209*b1cdbd2cSJim Jagielski Accessed = mAccessed 210*b1cdbd2cSJim JagielskiEnd Property 211*b1cdbd2cSJim Jagielski 212*b1cdbd2cSJim JagielskiPublic Property Let Accessed(ByVal vNewValue As Date) 213*b1cdbd2cSJim Jagielski mAccessed = vNewValue 214*b1cdbd2cSJim JagielskiEnd Property 215*b1cdbd2cSJim JagielskiPublic Property Get Printed() As Date 216*b1cdbd2cSJim Jagielski Printed = mPrinted 217*b1cdbd2cSJim JagielskiEnd Property 218*b1cdbd2cSJim Jagielski 219*b1cdbd2cSJim JagielskiPublic Property Let Printed(ByVal vNewValue As Date) 220*b1cdbd2cSJim Jagielski mPrinted = vNewValue 221*b1cdbd2cSJim JagielskiEnd Property 222*b1cdbd2cSJim Jagielski 223*b1cdbd2cSJim JagielskiPublic Property Get SavedBy() As String 224*b1cdbd2cSJim Jagielski SavedBy = mSavedBy 225*b1cdbd2cSJim JagielskiEnd Property 226*b1cdbd2cSJim Jagielski 227*b1cdbd2cSJim JagielskiPublic Property Let SavedBy(ByVal vNewValue As String) 228*b1cdbd2cSJim Jagielski mSavedBy = vNewValue 229*b1cdbd2cSJim JagielskiEnd Property 230*b1cdbd2cSJim Jagielski 231*b1cdbd2cSJim JagielskiPublic Property Get Revision() As Long 232*b1cdbd2cSJim Jagielski Revision = mRevision 233*b1cdbd2cSJim JagielskiEnd Property 234*b1cdbd2cSJim Jagielski 235*b1cdbd2cSJim JagielskiPublic Property Let Revision(ByVal vNewValue As Long) 236*b1cdbd2cSJim Jagielski mRevision = vNewValue 237*b1cdbd2cSJim JagielskiEnd Property 238*b1cdbd2cSJim Jagielski 239*b1cdbd2cSJim JagielskiPublic Property Get Template() As String 240*b1cdbd2cSJim Jagielski Template = mTemplate 241*b1cdbd2cSJim JagielskiEnd Property 242*b1cdbd2cSJim Jagielski 243*b1cdbd2cSJim JagielskiPublic Property Let Template(ByVal vNewValue As String) 244*b1cdbd2cSJim Jagielski mTemplate = vNewValue 245*b1cdbd2cSJim JagielskiEnd Property 246*b1cdbd2cSJim JagielskiPublic Property Get HasMacros() As Boolean 247*b1cdbd2cSJim Jagielski HasMacros = mHasMacros 248*b1cdbd2cSJim JagielskiEnd Property 249*b1cdbd2cSJim Jagielski 250*b1cdbd2cSJim JagielskiPublic Property Let HasMacros(ByVal vNewValue As Boolean) 251*b1cdbd2cSJim Jagielski mHasMacros = vNewValue 252*b1cdbd2cSJim JagielskiEnd Property 253*b1cdbd2cSJim Jagielski 254*b1cdbd2cSJim JagielskiPublic Property Get References() As Collection 255*b1cdbd2cSJim Jagielski Set References = mReferences 256*b1cdbd2cSJim JagielskiEnd Property 257*b1cdbd2cSJim Jagielski 258*b1cdbd2cSJim JagielskiPublic Property Let References(ByVal vNewValue As Collection) 259*b1cdbd2cSJim Jagielski Set mReferences = vNewValue 260*b1cdbd2cSJim JagielskiEnd Property 261*b1cdbd2cSJim Jagielski 262*b1cdbd2cSJim JagielskiPublic Property Get Issues() As Collection 263*b1cdbd2cSJim Jagielski Set Issues = mIssues 264*b1cdbd2cSJim JagielskiEnd Property 265*b1cdbd2cSJim Jagielski 266*b1cdbd2cSJim JagielskiPublic Property Let Issues(ByVal vNewValue As Collection) 267*b1cdbd2cSJim Jagielski Set mIssues = vNewValue 268*b1cdbd2cSJim JagielskiEnd Property 269*b1cdbd2cSJim Jagielski 270*b1cdbd2cSJim JagielskiPublic Property Get IssuesCountArray(ByVal index As Integer) As Long 271*b1cdbd2cSJim Jagielski If index >= LBound(mIssuesCountArray) And index <= UBound(mIssuesCountArray) Then 272*b1cdbd2cSJim Jagielski IssuesCountArray = mIssuesCountArray(index) 273*b1cdbd2cSJim Jagielski Else 274*b1cdbd2cSJim Jagielski IssuesCountArray = Null 275*b1cdbd2cSJim Jagielski End If 276*b1cdbd2cSJim JagielskiEnd Property 277*b1cdbd2cSJim Jagielski 278*b1cdbd2cSJim JagielskiPublic Property Let IssuesCountArray(ByVal index As Integer, ByVal vNewValue As Long) 279*b1cdbd2cSJim Jagielski If index >= LBound(mIssuesCountArray) And index <= UBound(mIssuesCountArray) Then 280*b1cdbd2cSJim Jagielski mIssuesCountArray(index) = vNewValue 281*b1cdbd2cSJim Jagielski End If 282*b1cdbd2cSJim JagielskiEnd Property 283*b1cdbd2cSJim Jagielski 284*b1cdbd2cSJim JagielskiPublic Property Get IssuesCount() As Long 285*b1cdbd2cSJim Jagielski IssuesCount = mIssues.count 286*b1cdbd2cSJim JagielskiEnd Property 287*b1cdbd2cSJim Jagielski 288*b1cdbd2cSJim JagielskiPublic Property Get ComplexIssuesCount() As Long 289*b1cdbd2cSJim Jagielski Dim complexCount As Long 290*b1cdbd2cSJim Jagielski complexCount = mIssues.count - mMinorIssuesCount - mMacroIssuesCount 291*b1cdbd2cSJim Jagielski ComplexIssuesCount = IIf(complexCount > 0, complexCount, 0) 292*b1cdbd2cSJim JagielskiEnd Property 293*b1cdbd2cSJim Jagielski 294*b1cdbd2cSJim JagielskiPublic Property Get MacroIssuesCount() As Long 295*b1cdbd2cSJim Jagielski MacroIssuesCount = mMacroIssuesCount 296*b1cdbd2cSJim JagielskiEnd Property 297*b1cdbd2cSJim Jagielski 298*b1cdbd2cSJim JagielskiPublic Property Let MacroIssuesCount(ByVal vNewValue As Long) 299*b1cdbd2cSJim Jagielski mMacroIssuesCount = vNewValue 300*b1cdbd2cSJim JagielskiEnd Property 301*b1cdbd2cSJim Jagielski 302*b1cdbd2cSJim JagielskiPublic Property Get MinorIssuesCount() As Long 303*b1cdbd2cSJim Jagielski MinorIssuesCount = mMinorIssuesCount 304*b1cdbd2cSJim JagielskiEnd Property 305*b1cdbd2cSJim Jagielski 306*b1cdbd2cSJim JagielskiPublic Property Let MinorIssuesCount(ByVal vNewValue As Long) 307*b1cdbd2cSJim Jagielski mMinorIssuesCount = vNewValue 308*b1cdbd2cSJim JagielskiEnd Property 309*b1cdbd2cSJim Jagielski 310*b1cdbd2cSJim JagielskiPublic Property Get PreparableIssuesCount() As Long 311*b1cdbd2cSJim Jagielski PreparableIssuesCount = mPreparableIssuesCount 312*b1cdbd2cSJim JagielskiEnd Property 313*b1cdbd2cSJim Jagielski 314*b1cdbd2cSJim JagielskiPublic Property Let PreparableIssuesCount(ByVal vNewValue As Long) 315*b1cdbd2cSJim Jagielski mPreparableIssuesCount = vNewValue 316*b1cdbd2cSJim JagielskiEnd Property 317*b1cdbd2cSJim Jagielski 318*b1cdbd2cSJim JagielskiPrivate Sub Class_Initialize() 319*b1cdbd2cSJim Jagielski mApplication = "" 320*b1cdbd2cSJim Jagielski mTotalIssueTypes = 0 321*b1cdbd2cSJim Jagielski mHasMacros = False 322*b1cdbd2cSJim Jagielski Set mIssues = New Collection 323*b1cdbd2cSJim Jagielski Set mReferences = New Collection 324*b1cdbd2cSJim Jagielski mPreparableIssuesCount = 0 325*b1cdbd2cSJim Jagielski mMacroOverallClass = enNone 326*b1cdbd2cSJim Jagielski mDocOverallIssueClass = enNone 327*b1cdbd2cSJim Jagielski mDocIssuesCosts = 0 328*b1cdbd2cSJim Jagielski mPreparableIssuesCosts = 0 329*b1cdbd2cSJim Jagielski mMacroCosts = 0 330*b1cdbd2cSJim Jagielski mbBelowIssuesLimit = False 331*b1cdbd2cSJim JagielskiEnd Sub 332*b1cdbd2cSJim JagielskiPrivate Sub Class_Terminate() 333*b1cdbd2cSJim Jagielski Set mIssues = Nothing 334*b1cdbd2cSJim Jagielski Set mReferences = Nothing 335*b1cdbd2cSJim JagielskiEnd Sub 336*b1cdbd2cSJim Jagielski 337