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

📄 数据文件_录入f4.frm

📁 一个可以在文本中录入数据到ACCESS数据库中的源代码。
💻 FRM
字号:
VERSION 5.00
Object = "{5E9E78A0-531B-11CF-91F6-C2863C385E30}#1.0#0"; "MSFLXGRD.OCX"
Begin VB.Form frmGridArray 
   Appearance      =   0  'Flat
   BackColor       =   &H80000005&
   Caption         =   "录入显示数据"
   ClientHeight    =   8775
   ClientLeft      =   60
   ClientTop       =   345
   ClientWidth     =   12720
   LinkTopic       =   "Form1"
   ScaleHeight     =   8775
   ScaleWidth      =   12720
   StartUpPosition =   3  '窗口缺省
   Begin MSFlexGridLib.MSFlexGrid MSFlexGrid1 
      Height          =   8055
      Left            =   0
      TabIndex        =   1
      TabStop         =   0   'False
      Top             =   600
      Width           =   12615
      _ExtentX        =   22251
      _ExtentY        =   14208
      _Version        =   393216
      BackColorFixed  =   -2147483639
      BackColorBkg    =   16777215
      AllowUserResizing=   1
   End
   Begin VB.CommandButton cmdExit 
      Caption         =   "退  出"
      Height          =   375
      Left            =   6000
      TabIndex        =   5
      TabStop         =   0   'False
      ToolTipText     =   "结束程序运行"
      Top             =   120
      Width           =   1455
   End
   Begin VB.CommandButton cmdPrint 
      Caption         =   "打  印"
      Height          =   375
      Left            =   4560
      TabIndex        =   4
      TabStop         =   0   'False
      ToolTipText     =   "打印机打印录入数据"
      Top             =   120
      Width           =   1455
   End
   Begin VB.CommandButton cmdSave 
      Caption         =   "保  存"
      Height          =   375
      Left            =   3240
      TabIndex        =   3
      TabStop         =   0   'False
      ToolTipText     =   "将录入数据保存到数据文件"
      Top             =   120
      Width           =   1335
   End
   Begin VB.TextBox txtInput 
      Alignment       =   2  'Center
      Height          =   390
      Left            =   1440
      TabIndex        =   0
      Top             =   120
      Width           =   1455
   End
   Begin VB.Label Label1 
      Appearance      =   0  'Flat
      BackColor       =   &H80000005&
      Caption         =   "第1行:第1列"
      ForeColor       =   &H80000008&
      Height          =   255
      Left            =   240
      TabIndex        =   2
      Top             =   240
      Width           =   1095
   End
End
Attribute VB_Name = "frmGridArray"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = False
'网格录入窗体
Option Explicit
Dim intI As Integer, intJ As Integer
Dim intStartRow As Integer
Private Sub Form_Load()
    MSFlexGrid1.Rows = intRowAll + 1
    MSFlexGrid1.Cols = intCol + 1
'MSFlexGrid1.Cols-1为网格总列数
'MSFlexGrid1.Rows-1为网格总行数
'建立说明列
    For intI = 1 To MSFlexGrid1.Cols - 1
        MSFlexGrid1.Row = 0                     '说明列在第0行
        MSFlexGrid1.Col = intI                  '设定当前列
        MSFlexGrid1.Text = "第" & intI & "列"
    Next intI
    intStartRow = 1
'建立说明行
'第1行为列数
    MSFlexGrid1.Col = 0                         '说明行在第0列
    MSFlexGrid1.Row = intStartRow               '设定当前行
    MSFlexGrid1.Text = "列数"
    MSFlexGrid1.Col = 1                         '第1列为列数
    MSFlexGrid1.Text = intCol                   '列数
    If intCol >= 2 Then
        For intJ = 2 To MSFlexGrid1.Cols - 1
            MSFlexGrid1.Col = intJ              '设定当前列
            MSFlexGrid1.Text = "*********"
        Next intJ
    End If
    intStartRow = 2
'第2行为行数
    MSFlexGrid1.Col = 0                         '说明行在第0列
    MSFlexGrid1.Row = intStartRow               '设定当前行
    MSFlexGrid1.Text = "行数"
    MSFlexGrid1.Col = 1                         '第1列为行数
    MSFlexGrid1.Text = intRow                   '行数
    If intCol >= 2 Then
        For intJ = 2 To MSFlexGrid1.Cols - 1
            MSFlexGrid1.Col = intJ              '设定当前列
            MSFlexGrid1.Text = "*********"
        Next intJ
    End If
    intStartRow = 3
'第3行为总行数
    MSFlexGrid1.Col = 0                         '说明行在第0列
    MSFlexGrid1.Row = intStartRow               '设定当前行
    MSFlexGrid1.Text = "总行数"
    MSFlexGrid1.Col = 1                         '第1列为总行数
    MSFlexGrid1.Text = intRowAll                '总行数
    If intCol >= 2 Then
        For intJ = 2 To MSFlexGrid1.Cols - 1
            MSFlexGrid1.Col = intJ              '设定当前列
            MSFlexGrid1.Text = "*********"
        Next intJ
    End If
    intStartRow = 4
    '标题
    If blnTitle Then                            '有标题
        MSFlexGrid1.Col = 0                     '说明行在第0列
        MSFlexGrid1.Row = intStartRow           '设定当前行
        MSFlexGrid1.Text = "标题"
        If intCol >= 2 Then
            For intJ = 2 To MSFlexGrid1.Cols - 1
                MSFlexGrid1.Col = intJ          '设定当前列
                MSFlexGrid1.Text = "*********"
            Next intJ
        End If
        intStartRow = 5
    End If
    '行标
    If blnRowLabel Then                         '有行标
        For intI = 1 To intRow
            MSFlexGrid1.Col = 0                 '说明行在第0列
            MSFlexGrid1.Row = intI + intStartRow - 1
            MSFlexGrid1.Text = "行标" & intI
            If intCol >= 2 Then
                For intJ = 2 To intCol
                    MSFlexGrid1.Col = intJ      '设定当前列
                    MSFlexGrid1.Text = "*********"
                Next intJ
            End If
        Next intI
        intStartRow = intStartRow + intRow
    End If
    '列标
    If blnColLabel Then                         '有列标
        MSFlexGrid1.Col = 0                     '说明行在第0列
        MSFlexGrid1.Row = intStartRow
        MSFlexGrid1.Text = "列标"
        intStartRow = intStartRow + 1
    End If
    '数字行
    For intI = intStartRow To MSFlexGrid1.Rows - 1
        MSFlexGrid1.Col = 0                     '说明行在第0列
        MSFlexGrid1.Row = intI                  '设定当前行
        MSFlexGrid1.Text = "第" & (intI - intStartRow + 1) & "行"
    Next intI
    MSFlexGrid1.Row = 1
    MSFlexGrid1.Col = 1
    Label1.Caption = "第1行:第1列"
End Sub

'用户单击单元时,将该单元内容复制到文本框控件
'然后可以进行编辑
Private Sub MSFlexGrid1_EnterCell()
'将当前说明列和当前说明行赋予标签
    Label1 = MSFlexGrid1.TextMatrix(MSFlexGrid1.Row, 0) & ":" _
         & MSFlexGrid1.TextMatrix(0, MSFlexGrid1.Col)
'将当前单元格内容赋予文本框
    txtInput.Text = MSFlexGrid1.Text
End Sub

'文本框数据处理,按Enter键或Tab键结束一个网格数据的录入
Private Sub txtInput_KeyPress(KeyAscii As Integer)
    Dim intR As Integer, intC As Integer
    If KeyAscii = 13 Or KeyAscii = 9 Then   '13为Enter键,9为Tab键
        MSFlexGrid1.Text = txtInput.Text    '文本框数据送入网格
        intC = MSFlexGrid1.Col + 1          '焦点移到同行的下一列
        intR = MSFlexGrid1.RowSel           '单元格返回当前行
        If intC = MSFlexGrid1.Cols Then     '如果到了最后一列
            intC = MSFlexGrid1.FixedRows    'intC=1,FixedRows的缺省设置
'如果intR没有到边界行则取下一行
            If intR < MSFlexGrid1.Rows - MSFlexGrid1.FixedRows Then _
                intR = intR + 1
        End If
        MSFlexGrid1.Row = intR              '新的当前行
        MSFlexGrid1.Col = intC              '新的当前列
        MSFlexGrid1.ColSel = intC           '为单元格设置的当前列
        txtInput.Text = MSFlexGrid1.Text    '单元格数据赋予文本框
        txtInput.SetFocus                   '文本框取得焦点
    End If
End Sub

'保存
Private Sub cmdSave_Click()
    Dim intFileNumber As Integer
    Dim vntA As Variant
    MsgBox "开始保存数据,请耐心等待!"
    intFileNumber = FreeFile                        '取得空闲的文件号
    Open strFileName For Output As intFileNumber    '打开文件
    For intI = 1 To intRowAll
        For intJ = 1 To intCol
'将数组中的数据写到文件上
            Write #intFileNumber, MSFlexGrid1.TextMatrix(intI, intJ);
        Next intJ
    Next intI
'将对列的注释写入文件
    For intI = 1 To intCol
        Write #intFileNumber, MSFlexGrid1.TextMatrix(0, intI);
    Next intI
'将对行的注释写入文件
    For intI = 1 To intRowAll
        Write #intFileNumber, MSFlexGrid1.TextMatrix(intI, 0);
    Next intI
    Close                                           '关闭文件
    MsgBox "保存数据完成,请继续进行!"
End Sub

'打印
Private Sub cmdPrint_Click()
    Dim intI1 As Integer, intI2 As Integer
    intI1 = 1: intI2 = 8
    If intCol <= 8 Then intI2 = intCol
AA1:
    Printer.Print ,
    For intI = intI1 To intI2
        MSFlexGrid1.Row = 0                     '设定保存标志列的行(0行)
        MSFlexGrid1.Col = intI                  '设定当前列
        Printer.Print MSFlexGrid1.Text,         '打印列标志
    Next intI
    For intI = 1 To intRowAll
        Printer.Print
        MSFlexGrid1.Col = 0                     '设定保存标志行的列(0列)
        MSFlexGrid1.Row = intI                  '设定当前行
        Printer.Print MSFlexGrid1.Text,         '打印行标志
        For intJ = intI1 To intI2                  '打印数据
            MSFlexGrid1.Col = intJ
            Printer.Print MSFlexGrid1.Text,
        Next intJ
    Next intI
    If intI2 < intCol Then
        intI1 = intI1 + 8
        intI2 = intI2 + 8
        If intI2 > intCol Then intI2 = intCol
        Printer.Print
        Printer.Print
        GoTo AA1
    End If
    Printer.EndDoc                              '执行打印
End Sub

'退出
Private Sub cmdExit_Click()
    Unload Me
    End
End Sub


⌨️ 快捷键说明

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