分享

vb读取excel中的数据并在窗体上显示

 nxhujiee 2019-01-23
Public ExcelTable As Workbook  'excel 工作表对象
Private TextBoxA() As Control      '以编辑框为基础动态构造数据网格
Private FormWidth As Integer       '窗体宽度
'以下子程序是用来建立数据网格
Sub CreateGrid(No, Data)
    For i = 1 To CInt(UBound(Data, 1))
        For j = 1 To CInt(UBound(Data, 2))
            Set a = Form1.Controls.Add("VB.TextBox""textbox" CStr(i) & CStr(j) & CStr(No))
            ReDim TextBoxA(1 To i, 1 To j)  '重新定义动态数组!
            Set TextBoxA(i, j) = a
            With TextBoxA(i, j)            '设置文本框属性
                .Text = Data(i, j)
                .Visible = True
                .Height = 200
                .Width = 500
                .Top = .Height * (i - 1)
                .Left = .Width * (j - 1) + FormWidth
            End With
        Next
    Next
   
End Sub
Private Sub Command1_Click()
    Set ExcelTable = CreateObject("Excel.sheet"'建立对象实例
    ExcelTable.Application.Workbooks.Open (App.Path + "\address.xls"'打开数据文档address.xls
    For i = 1 To ExcelTable.Application.Worksheets.Count    '获得工作表数目
        Data = ExcelTable.Application.Worksheets(i).UsedRange.Value   '获取每个工作表的数据
        DataType = VarType(Data)      '跳过没有数据的空表
        Select Case DataType
        Case vbArray + vbVariant
            Call CreateGrid(i, Data)   '传递数据,建立以文本框为基础的数据网格
        Case vbEmpty
        End Select
    Next
End Sub

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多