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

📄 newjinbin.bas

📁 一个票务管理软件
💻 BAS
📖 第 1 页 / 共 3 页
字号:
intx = 60 + ((50 - Len(jb)) / 2)
Printer.Font.Size = 6
jb1 = Left(jb, 15)
jb2 = Mid(jb, 17, 15)
jb4 = Right(jb, 15)
Printer.CurrentX = intx
Printer.CurrentY = intw
Printer.Print jb1
Printer.CurrentX = intx
Printer.CurrentY = intz
Printer.Print jb2
Printer.CurrentX = intx
Printer.CurrentY = inth
Printer.Print jb4
ElseIf Len(jb) > 15 Then
intx = 47 + ((50 - Len(jb)) / 2)
Printer.Font.Size = 8
jb1 = Left(jb, 15)
jb2 = Right(jb, 15)
intw = 67.5
intz = 71
Printer.CurrentX = intx
Printer.CurrentY = intw
Printer.Print jb1
Printer.CurrentX = intx
Printer.CurrentY = intz
Printer.Print jb2
Else
intx = 41 + ((50 - Len(jb) * 2) / 2)
Printer.Font.Size = 12
Printer.CurrentX = intx
Printer.CurrentY = inty
Printer.Print jb
End If

'打印20元票起始票号
inty = 75.5
intw = 74
intz = 76.2
inth = 78.5
jb = Trim(.Fields!ph20.Value)
If Len(jb) > 45 Then
intx = 60 + ((50 - Len(jb)) / 2)
Printer.Font.Size = 6
jb1 = Left(jb, 15)
jb2 = Mid(jb, 17, 15)
jb4 = Right(jb, 15)
Printer.CurrentX = intx
Printer.CurrentY = intw
Printer.Print jb1
Printer.CurrentX = intx
Printer.CurrentY = intz
Printer.Print jb2
Printer.CurrentX = intx
Printer.CurrentY = inth
Printer.Print jb4
ElseIf Len(jb) > 15 Then
intx = 47 + ((50 - Len(jb)) / 2)
Printer.Font.Size = 8
jb1 = Left(jb, 15)
jb2 = Right(jb, 15)
intw = 74.5
intz = 78
Printer.CurrentX = intx
Printer.CurrentY = intw
Printer.Print jb1
Printer.CurrentX = intx
Printer.CurrentY = intz
Printer.Print jb2
Else
intx = 41 + ((50 - Len(jb) * 2) / 2)
Printer.Font.Size = 12
Printer.CurrentX = intx
Printer.CurrentY = inty
Printer.Print jb
End If

'打印30元票起始票号
inty = 82.5
intw = 81
intz = 83.2
inth = 85.5
jb = Trim(.Fields!ph30.Value)
If Len(jb) > 45 Then
intx = 60 + ((50 - Len(jb)) / 2)
Printer.Font.Size = 6
jb1 = Left(jb, 15)
jb2 = Mid(jb, 17, 15)
jb4 = Right(jb, 15)
Printer.CurrentX = intx
Printer.CurrentY = intw
Printer.Print jb1
Printer.CurrentX = intx
Printer.CurrentY = intz
Printer.Print jb2
Printer.CurrentX = intx
Printer.CurrentY = inth
Printer.Print jb4
ElseIf Len(jb) > 15 Then
intx = 47 + ((50 - Len(jb)) / 2)
Printer.Font.Size = 8
jb1 = Left(jb, 15)
jb2 = Right(jb, 15)
intw = 81.5
intz = 85
Printer.CurrentX = intx
Printer.CurrentY = intw
Printer.Print jb1
Printer.CurrentX = intx
Printer.CurrentY = intz
Printer.Print jb2
Else
intx = 41 + ((50 - Len(jb) * 2) / 2)
Printer.Font.Size = 12
Printer.CurrentX = intx
Printer.CurrentY = inty
Printer.Print jb
End If

'打印5元票额的张数
Printer.Font.Size = 12
jb = CStr(rstjinbin.Fields!zs5.Value)
intx = 93 + ((20 - Len(jb)) / 2)
inty = 55
Printer.CurrentX = intx
Printer.CurrentY = inty
Printer.Print jb

'打印5元票额的现金
jb = CStr(rstjinbin.Fields!je5.Value)
intx = 113 + ((25 - Len(jb)) / 2)
inty = 55
Printer.CurrentX = intx
Printer.CurrentY = inty
Printer.Print jb


'打印10元票额的张数
Printer.Font.Size = 12
jb = CStr(rstjinbin.Fields!zs10.Value)
intx = 93 + ((20 - Len(jb)) / 2)
inty = 62
Printer.CurrentX = intx
Printer.CurrentY = inty
Printer.Print jb

'打印10元票额的现金
jb = CStr(rstjinbin.Fields!je10.Value)
intx = 113 + ((25 - Len(jb)) / 2)
inty = 62
Printer.CurrentX = intx
Printer.CurrentY = inty
Printer.Print jb


'打印15元票额的张数
Printer.Font.Size = 12
jb = CStr(rstjinbin.Fields!zs15.Value)
intx = 93 + ((20 - Len(jb)) / 2)
inty = 69
Printer.CurrentX = intx
Printer.CurrentY = inty
Printer.Print jb

'打印15元票额的现金
jb = CStr(rstjinbin.Fields!je15.Value)
intx = 113 + ((25 - Len(jb)) / 2)
inty = 69
Printer.CurrentX = intx
Printer.CurrentY = inty
Printer.Print jb


'打印20元票额的张数
Printer.Font.Size = 12
jb = CStr(rstjinbin.Fields!zs20.Value)
intx = 93 + ((20 - Len(jb)) / 2)
inty = 76
Printer.CurrentX = intx
Printer.CurrentY = inty
Printer.Print jb

'打印20元票额的现金
jb = CStr(rstjinbin.Fields!je20.Value)
intx = 113 + ((25 - Len(jb)) / 2)
inty = 76
Printer.CurrentX = intx
Printer.CurrentY = inty
Printer.Print jb

'打印30元票额的张数
Printer.Font.Size = 12
jb = CStr(rstjinbin.Fields!zs30.Value)
intx = 93 + ((20 - Len(jb)) / 2)
inty = 83
Printer.CurrentX = intx
Printer.CurrentY = inty
Printer.Print jb

'打印30元票额的现金
jb = CStr(rstjinbin.Fields!je30.Value)
intx = 113 + ((25 - Len(jb)) / 2)
inty = 83
Printer.CurrentX = intx
Printer.CurrentY = inty
Printer.Print jb

'打印票的总张数
jb = CStr(.Fields!hjzs.Value)
intx = 93 + ((20 - Len(jb)) / 2)
inty = 90
Printer.CurrentX = intx
Printer.CurrentY = inty
Printer.Print jb

'打印总金额
jb = CStr(.Fields!hjje.Value)
intx = 113 + ((25 - Len(jb)) / 2)
inty = 90
Printer.CurrentX = intx
Printer.CurrentY = inty
Printer.Print jb

'打印应交小写金额
jb = CStr(.Fields!hjje.Value)
intx = 128 + Len("(小写):") + 2
intx = 145
Printer.CurrentX = intx
Printer.CurrentY = inty + 7
Printer.Print jb

'打印应交大写金额
jb = wt.Up(CLng(.Fields!hjje.Value))
intx = 45 + Len("(大写):") + 2
intx = 62
Printer.CurrentX = intx
Printer.CurrentY = inty + 7
Printer.Print jb


'打印表外头的字段

jb = Left(CStr(.Fields!station.Value), Len(.Fields!station.Value) - 1)
intx = 23
inty = 31.8
Printer.CurrentX = intx
Printer.CurrentY = inty
Printer.Print jb

jb = CStr(.Fields!bz.Value)
intx = 43 + 4 + 8
Printer.CurrentX = intx + 2
Printer.CurrentY = inty
Printer.Print jb

jb = CStr(.Fields!bc.Value)
intx = intx + 8 + 10
Printer.CurrentX = intx + 6
Printer.CurrentY = inty
Printer.Print jb

jb3 = Day(.Fields!riqi.Value)
jb2 = Month(.Fields!riqi.Value)
jb1 = Year(.Fields!riqi.Value)

jb = CStr(jb1)
intx = intx + 10 + 24
Printer.CurrentX = intx
Printer.CurrentY = inty
Printer.Print jb

jb = CStr(jb2)
intx = intx + Len("年") + 7
intx = intx + 8
Printer.CurrentX = intx
Printer.CurrentY = inty
Printer.Print jb

jb = CStr(jb3)
intx = intx + Len("月") + 7
intx = intx + 1
Printer.CurrentX = intx
Printer.CurrentY = inty
Printer.Print jb

jb = CStr(.Fields!sxm.Value)
intx = intx + 4 + 7 + 15 + 6
inty = 33.2
Printer.CurrentX = intx
Printer.CurrentY = inty
Printer.Print jb
.MoveNext
Loop
End With
Printer.EndDoc
rstjinbin.Close
Set rstjinbin = Nothing

'报错处理
PRINT_ERR:
    Beep
    MsgBox "错误"

End Function


'转换函数
Function Up(Dxs As String) As String
'检测为空时
 If Trim(Dxs) = "" Then
    MsgBox "没有数字,不能转换!", vbOKOnly + 32
    Exit Function
End If
  Dim Sw As Integer, SzP As Integer, SzUp As Integer, TempStr As String, DXStr As String
    Sw = Len(Trim(Dxs))
    SzP = InStr(1, Trim(Dxs), ".")
If SzP = 0 Then
   Dim i As Integer
     For i = 1 To Sw
         TempStr = Right(Trim(Dxs), i)
         TempStr = Left(TempStr, 1)
         TempStr = Converts(TempStr)
         Select Case i
           Case 1
               If TempStr = "零" Then
                  TempStr = "元整"
                   Else
                  TempStr = TempStr + "元整"
               End If
           Case 2
               If TempStr = "零" Then
                  TempStr = "零"
                Else
                  TempStr = TempStr + "拾"
               End If
           Case 3
               If TempStr = "零" Then
                  TempStr = "零"
                   Else
                  TempStr = TempStr + "佰"
               End If
            Case 4
               If TempStr = "零" Then
                  TempStr = "零"
                   Else
                  TempStr = TempStr + "仟"
               End If
            Case 5
               If TempStr = "零" Then
                  TempStr = "万"
                   Else
                  TempStr = TempStr + "万"
               End If
            Case 6
               If TempStr = "零" Then
                  TempStr = "零"
                   Else
                  TempStr = TempStr + "拾"
               End If
            Case 7
               If TempStr = "零" Then
                  TempStr = "零"
                   Else
                  TempStr = TempStr + "佰"
               End If
            Case 8
               If TempStr = "零" Then
                  TempStr = "零"
                   Else
                  TempStr = TempStr + "仟"
               End If
            Case 9
               If TempStr = "零" Then
                  TempStr = "亿"
                   Else
                  TempStr = TempStr + "亿"
               End If
         End Select
    Dim TempA As String
        TempA = Left(Trim(DXStr), 1)
    If TempStr = "零" Then
      Select Case TempA
       Case "零"
            DXStr = DXStr
       Case "元"
            DXStr = DXStr
       Case "万"
            DXStr = DXStr
       Case "亿"
            DXStr = DXStr
       Case Else
            DXStr = TempStr + DXStr
      End Select
      Else
       DXStr = TempStr + DXStr
    End If
     Next
  Else
    For i = 1 To SzP - 1
         TempStr = Right(Trim(Dxs), i + (Sw - SzP + 1))
         TempStr = Left(TempStr, 1)
         TempStr = Converts(TempStr)
         Select Case i
           Case 1
               If TempStr = "零" Then
                  TempStr = "元整"
                   Else
                  TempStr = TempStr + "元整"
               End If
           Case 2
               If TempStr = "零" Then
                  TempStr = "零"
                Else
                  TempStr = TempStr + "拾"
               End If
           Case 3
               If TempStr = "零" Then
                  TempStr = "零"
                   Else
                  TempStr = TempStr + "佰"
               End If
            Case 4
               If TempStr = "零" Then
                  TempStr = "零"
                   Else
                  TempStr = TempStr + "仟"
               End If
            Case 5
               If TempStr = "零" Then
                  TempStr = "万"
                   Else
                  TempStr = TempStr + "万"
               End If
            Case 6
               If TempStr = "零" Then
                  TempStr = "零"
                   Else
                  TempStr = TempStr + "拾"
               End If
            Case 7
               If TempStr = "零" Then
                  TempStr = "零"
                   Else
                  TempStr = TempStr + "佰"
               End If
            Case 8
               If TempStr = "零" Then
                  TempStr = "零"
                   Else
                  TempStr = TempStr + "仟"
               End If
            Case 9
               If TempStr = "零" Then
                  TempStr = "亿"
                   Else
                  TempStr = TempStr + "亿"
               End If
            Case Else
              '超过999999999时自动删除
              TempStr = ""
         End Select
        TempA = Left(Trim(DXStr), 1)
    If TempStr = "零" Then
      Select Case TempA
       Case "零"
            DXStr = DXStr
       Case "元"
            DXStr = DXStr
       Case "万"
            DXStr = DXStr
       Case "亿"
            DXStr = DXStr
       Case Else
            DXStr = TempStr + DXStr
      End Select
      Else
       DXStr = TempStr + DXStr
    End If
     Next
'计算小数
   Dim DxstrX As String, XStr As String
      XStr = Right(Trim(Dxs), Sw - SzP)
        For i = 1 To Sw - SzP
         TempStr = Left(XStr, i)
         TempStr = Right(TempStr, 1)
         TempStr = Converts(TempStr)
         Select Case i
           Case 1
            If TempStr = "零" Then
               TempStr = ""
               Else
               TempStr = TempStr + "角整"
            End If
           Case 2
            If TempStr = "零" Then
               TempStr = ""
               Else
               TempStr = TempStr + "分整"
               End If
            Case Else
              '超过两位小数时,自动删除
              TempStr = ""
         End Select
        DxstrX = DxstrX + TempStr
     Next
     DXStr = DXStr + DxstrX
End If
    Up = DXStr
End Function

Function Converts(NumStr As String) As String
    Select Case Val(NumStr)
      Case 0
        Converts = "零"
      Case 1
        Converts = "壹"
      Case 2
        Converts = "贰"
      Case 3
        Converts = "叁"
      Case 4
        Converts = "肆"
      Case 5
        Converts = "伍"
      Case 6
         Converts = "陆"
      Case 7
         Converts = "柒"
      Case 8
         Converts = "捌"
      Case 9
         Converts = "玖"
    End Select
End Function


Function NumberTrue(keyNumber As Integer, NumberStr As TextBox) As Boolean
   '转入退格键时
   If keyNumber = 8 Then
      If Len(NumberStr.Text) > 0 Then
      NumberStr.Text = Left(NumberStr.Text, Len(NumberStr.Text) - 1)
      NumberStr.SelStart = Len(NumberStr.Text)
      NumberStr.SelLength = 0
      NumberTrue = True
      Exit Function
      End If
      End If
   If keyNumber >= 46 And keyNumber <= 57 And keyNumber <> 47 Then
       NumberTrue = True
        Else
       NumberTrue = False
   End If
End Function

⌨️ 快捷键说明

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