here is just the general declarations of my modulus in a program I'm working on, this is a short part of the program

the full program is about 100,000 lines of code with over 50 forms so it's pretty small

!!!
As you can see I don't care for variants all that much!
Public mcnn As ADODB.Connection 'Connection string
Public usrs As ADODB.Recordset 'Users recordset
Public cors As ADODB.Recordset 'Company recordset
Public zprs As ADODB.Recordset 'Zip Code recordset
Public fzrs As ADODB.Recordset 'Foreign city/zip recordset
Public cncd As ADODB.Recordset 'Country codes recordset
Public nxno As ADODB.Recordset 'Next assigned number
Public cntl As ADODB.Recordset 'Control file
Public WebPath As String 'Path for storing web pictures
Public CoName As String 'Current co name
Public CoCode As String 'Current co code
Public CoColor As String 'Current co color
Public CoFulFill As String 'Current fulfillment status
Public CoDefPrice As String 'Current co default price level
Public varSrchType As Integer 'Type of search to make
Public strCallingForm As String 'Form name making a call to another form
Public strFormType As String 'Type of form to process
Public strReason As String 'Reason for printing form
Public lngCustNo As Long 'Customer number
Public lngEMktID As Long 'Emarket ID number
Public strEMktName As String 'Emarket dealer name
Public EMktPrcLvl As String 'Emarket dealer price level
Public lngOrdNo As Long 'Order number
Public lngInvNo As Long 'Invoice number
Public strInvNo As String 'Invoice number as text
Public lngRANo As Long 'RA number
Public strRANo As String 'RA number as string
Public lngPONo As Long 'Purchase order number
Public lngSKUNo As Long 'Product SKU number
Public strOrdNo As String 'Order number converted to string
Public CustName As String 'Customer name
Public RetailName As String 'Business name on PT and Inv
Public strZipCode As String 'Zip code to lookup
Public CustState As String 'State
Public CustCity As String 'City
Public strCountry As String 'Country
Public strFornCity As String 'Foreign city/zip
Public strFornZip As String 'Foreign postal code
Public strShCntry As String 'Ship-to country
Public strCntryCode As String 'Country code
Public UserName As String 'user name
Public UserID As String 'User ID
Public UserPermits As String 'User permissions
Public UserOK As Boolean 'User verification indicator
Public ARCoArray(8) As Variant 'Multi-dimensional array
Public ARCoCode() As String 'Array of company codes
Public ARCoName() As String 'Array of company names
Public ARCoColor() As String 'Array of company colors
Public ARCoFulfill() As String 'Array of company fulfillment codes
Public ARCODefPrice() As String 'Array of company default price levels
Public CoCount As Integer 'Number of companies
Public arrBookMark() 'Array of inventory bookmarks
Public arrProduct() 'Array of products ordered
Public dbPath As String 'Database path
Public InqOrUpd As Byte 'Sets the comportament for frmOrdInqUpd
Public TMAction 'Store telemarketer process selected
Public OnlyUnShipped As Byte 'Used in OrderSelect
Public MfgCode As String '4-character mfg code
Public curMSRP As Currency 'Mfg suggested retail
Public curVendCost As Currency 'Vendor cost
Public curActualCost As Currency 'Actual cost
Public strCostFormula As String 'Cost formula
Public boolwork As Boolean 'Yes/no work field
Public boolAction As Boolean 'Process flag
Public UpNextNum As Boolean 'Next number switch
Public arrStrText(20) 'Array of text fields
Public arrCurrency(10) 'Array of currency fields
Public arrInteger(10) 'Array of integer fields
Public arrChkBox(10) 'Array of check boxes
Public DispScope As String 'Backorder scope to display
Public strMfgCode As String 'Manufacturer code
Public strCategory As String 'Category code
Public curShipHand As Currency 'Shipping & handling total
'All inventory price levels
Public curRegPrice As Currency 'Green's regular price level
Public curVolPrice As Currency 'Green's volume price level
Public curL3Price As Currency 'Green's level 3 price
Public curL4Price As Currency 'Fourth level price
Public curL5Price As Currency 'Fifth level price
Public curL0Price As Currency 'Level 0(EM) price
Public curItemCost As Currency 'Item cost
Public curMSRPCost As Currency 'MSRP
Public curMinCost As Currency 'Minimum price
Public PckArray() As Currency
Public Num As Integer
Public LineNo2 As Integer
Public Form As Integer
Public HazCode(4) 'Array of haz mat codes per order
Public bkmWorkBookmark As Variant
Public GlobalEMarket As Integer 'EMarket processing only
Public Xtwips As Integer, Ytwips As Integer
Public Xpixels As Integer, Ypixels As Integer
Public IsHazard As Boolean 'Hazardous material flag
'Variables used in caclulating order figures
Private LineNo As Integer 'Line item to work with
Private LineTotal As Currency 'Total cost for line item
Private intRunTot As Currency 'Total cost of all items ordered
Private intItemTot As Currency 'total cost of items in stock to be shipped
Private intOrderTot As Currency 'Ord total including all fees
Private intBOTotal As Currency 'Total cost of BO items
Public BOStatus As Byte 'Backorder status flag
Private WasSaved As Byte
Private KeyHit As Integer 'Was key hit
----------------
Joe