如何在VB中调用EXCEL表格数据?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何在VB中调用EXCEL表格数据?相关的知识,希望对你有一定的参考价值。

VB中有如下控件:Text1、Command1、Label1。在F盘根目录上有一个为1.xlsx的工作表,工作表的A列为身份证号码,B列为姓名。要求当单击Command1时,如果Text1与A列的身份证号码相同则在Label1上显示编号对应的姓名。

补充:经过调试,如果A列为简单的序号时,测试成功,但为身份证号码时则不行。我的代码如下,请看看错在哪里。
Private Sub Command1_Click()
Dim xlsApp As Excel.Application '声明对象变量
Set xlsApp = Excel.Application '实例化对象
xlsApp.Visible = False '使Excel隐藏不可见
xlsApp.Workbooks.Open ("F:\1.xls") '打开EXCEL文件,假设文件在c盘根目录
Dim i As Long
i = 1
Do While xlsApp.ActiveWorkbook.Sheets("sheet1").Cells(i, 1) <> ""
If xlsApp.ActiveWorkbook.Sheets("sheet1").Cells(i, 1).Value = Text1.Text Then
Label1.Caption = xlsApp.ActiveWorkbook.Sheets("sheet1").Cells(i, 2).Value
Exit Do
End If
i = i + 1
Loop
xlsApp.ActiveWorkbook.Close savechanges:=False '关闭活动工作簿同时不保存对它的更改。
xlsApp.Quit '关闭EXCELL
Set xlsApp = Nothing '释放资源
End Sub

1、打开VB-》在form1上增加一个command1按钮,双击command1按钮,把以下代码放入窗体内; 2、运行前,在菜单的选“工程”->“引用”->找到Microsoft Excel 12.0 Object Library->确定;然后才可以运行; 3、代码如下: Dim ExApp As New Excel.Application Dim Exb As Excel.Workbook Dim Exsh As Excel.Worksheet Dim arr(6, 6) As Integer \'定义一... 1、打开VB-》在form1上增加一个command1按钮,双击command1按钮,把以下代码放入窗体内;
2、运行前,在菜单的选“工程”->“引用”->找到Microsoft Excel 12.0 Object Library->确定;然后才可以运行;
3、代码如下:
Dim ExApp As New Excel.Application
Dim Exb As Excel.Workbook
Dim Exsh As Excel.Worksheet
Dim arr(6, 6) As Integer \'定义一个二维数组,数据类型为整数
ExApp.Workbooks.Open "c:\\book1.xls" \'打开EXEL文件,路径和文件名自己根据实际修改
Set Exb = ExApp.Workbooks(1)
Set Exsh = Exb.Worksheets("Sheet1")
For i = 1 To 6 \'假设是读取A1:F6的6X6区域数据
For j = 1 To 6
arr(i, j) = Exsh.Cells(i, j)
Next j
Next i
\'把自己需要对数组数据进一步处理的部分加进去...
ExApp.Workbooks.Close
ExApp.Quit
Set ExApp = Nothing 全部
参考技术A If xlsApp.ActiveWorkbook.Sheets("sheet1").Cells(i, 1).Value - Text1.Text = 0 Then本回答被提问者和网友采纳

VB.NET中的DATAGRIDVIEW怎样只能在表格中输入数字呢

如标题

第一部、先定义一个单元格操作变量,如下
Dim cellEdit As DataGridViewTextBoxEditingControl = Nothing
第二部、然后在在控件的EditingControlShowing事件中添加入下代码,参考如下:
Private Sub DataGridView3_EditingControlShowing(ByVal sender As System.Object, ByVal e As System.Windows.Forms.DataGridViewEditingControlShowingEventArgs) Handles DataGridView3.EditingControlShowing
cellEdit = CType(e.Control, DataGridViewTextBoxEditingControl)
cellEdit.SelectAll()
AddHandler cellEdit.KeyPress, AddressOf dataGridView3_KeyPress
End Sub
第三部:在要控制的列加入控件键盘按钮的代码,如下面ROLL列是要控制的列
Private Sub dataGridView3_KeyPress(ByVal sender As Object, ByVal e As KeyPressEventArgs) Handles DataGridView3.KeyPress
Dim i As Integer = DataGridView3.CurrentCellAddress.X
Dim ColumnName As String = DataGridView3.Columns(i).Name

If (ColumnName = "rollno") Then
If Not Char.IsDigit(e.KeyChar) And e.KeyChar <> Chr(8) Then
e.Handled = True
End If
End If
End Sub
参考技术A http://bbs.csdn.net/topics/390501048

以上是关于如何在VB中调用EXCEL表格数据?的主要内容,如果未能解决你的问题,请参考以下文章

excel如何用VB实现对表格中内容进行搜索定位?

怎样用VB读取Excel文件中表格中的数据?

VB 如何读取 Excel 所有列和行

用jxl如何实现在已有的excel表中添加数据

如何从使用 VB Excel POST 方法的网站获取表格数据?

vb6怎么使用EXCEL的表格