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

本文介绍了一种使用 VBA 在 Visual Basic 应用程序中从 Excel 工作表动态创建数据网格的方法。通过读取指定路径下的 Excel 文件并利用其中的工作表数据,程序能够自动在界面上构建出由文本框组成的数据网格。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

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
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值