⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 modfunc.bas

📁 sql的实例源码
💻 BAS
字号:
Attribute VB_Name = "modFunc"
'将单引号“'”替换成双引号“"”
Public Function StrReplace(ByVal paraStr As String) As String
  '将'替换成''
  StrReplace = Trim(Replace(paraStr, "'", "''"))
End Function

'计算字符长度,汉字算两个字符
Public Function CharLen(ByVal paraStr As String) As Long
  CharLen = LenB(StrConv(paraStr, vbFromUnicode))
End Function

'向树型结构增加部门信息
Public Sub Add_DeptToTree(TreeView1 As TreeView, _
                          ByVal paraKey As String)
  '定义树型变量
  Dim ChildKey As String      '定义子结点的名称
  '定义RecordSet对象
  Dim rs As New ADODB.Recordset
  
  '使用SELECT语句读取所有部门数据
  SQLStmt = "SELECT * FROM DeptInfo"
  Set rs = SQLQuery(SQLStmt)
  While Not rs.EOF
    '读取部门编号
    objDept.DeptID = rs.Fields(0)
    '读取部门名称
    objDept.DeptName = rs.Fields(1)
    '读取部门的描述信息
    If IsNull(rs.Fields(2)) Then
      objDept.Describes = ""
    Else
      objDept.Describes = rs.Fields(2)
    End If
    '生成子节点名称
    ChildKey = TREENAME + Trim(Str(objDept.DeptID))
    '向树型结构添加新的子节点
    TreeView1.Nodes.Add paraKey, tvwChild, ChildKey, objDept.DeptName
    rs.MoveNext
  Wend

  '断开连接
  DBDisconnect
End Sub

'往Combo控件中添加数据
Public Sub Addcbo(ByVal paraCombo As ComboBox, ByVal paraSQLStmt As String, ByVal index As Integer)
  Dim rs As New ADODB.Recordset
  Set rs = SQLQuery(paraSQLStmt)
  While Not rs.EOF
    '向ComboBox控件中添加数据
    paraCombo.AddItem rs.Fields(index).Value
    rs.MoveNext
  Wend

  '断开连接
  DBDisconnect
End Sub

'向ListBox控件中添加数据,用于刷新用户名、用户类型等信息
Public Sub AddList(ByVal paraList As ListBox, ByVal paraSQLStmt As String)
  '定义RecordSet对象
  Dim rs As New ADODB.Recordset
  SQLStmt = "SELECT * FROM PasswdInfo"
  Set rs = SQLQuery(SQLStmt)
  
  paraList.Clear
  While Not rs.EOF
    paraList.AddItem rs.Fields(0) & Space(30 - CharLen(rs.Fields(0))) _
                   & IIf(rs.Fields(2) = 1, "超级用户", "普通用户")
    rs.MoveNext
  Wend

  '断开连接
  DBDisconnect
End Sub

'看所修改内容是否在Combo控件内容中
Public Function InCombo(ByVal paraStr As String, _
                         ByVal paraCombo As ComboBox) As Boolean
  i = 0
  Do While i < paraCombo.ListCount
    If paraCombo.List(i) = Trim(paraStr) Then
      '如果在就可以返回True
      InCombo = True
      Exit Function
    End If
    '如果不在就继续找
    i = i + 1
  Loop
  '所有的数据都与想要输入的值不相同,弹出错误警告对话框,并返回False
  MsgBox paraStr + " 不在列表中,请重新设置", vbOKOnly + vbCritical, "错误警告"
  InCombo = False
End Function

'根据税率计算个人所得税
Public Function ComputeTax(ByVal paraWage As Double) As Double
  Select Case paraWage
    Case 0 To 500
      ComputeTax = paraWage * 0.05
    Case 501 To 1999
      ComputeTax = paraWage * 0.1
    Case 2000 To 4999
      ComputeTax = paraWage * 0.15
    Case 5000 To 19999
      ComputeTax = paraWage * 0.2
    Case 20000 To 39999
      ComputeTax = paraWage * 0.25
    Case 40000 To 59999
      ComputeTax = paraWage * 0.3
    Case 60000 To 79999
      ComputeTax = paraWage * 0.35
    Case 80000 To 99999
      ComputeTax = paraWage * 0.4
    Case Is >= 100000
      ComputeTax = paraWage * 0.45
    Case Else
      ComputeTax = 0
  End Select
End Function

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -