VB中如何与EXCEL关联,请教代码

我想设计一个身份证归属地的计算器,大概如图所示。我通过增加部件,已经往VB里加入了一份地址代码的XLS文件,但是我不懂怎么把它们关联起来,比如说,我在TEXT1中输入的内容要同步到我加入的EXCEL中的SHEET2中的A1单元格,然后将B1同步显示在TEXT2中,谢谢!

用FlexGrid类似控件输出查询excel结果,修改数据后保存到excel,同时重新读取excel数据到控件,我个人比较熟悉这样的操作方式,一般不直接引用excel对象。
读取excel的代码:
Dim objExcelFile As Excel.Application
Dim objImportSheet As Excel.Worksheet
Dim objWorkBook As Excel.Workbook
Set objExcelFile = New Excel.Application '´´创建新的excel应用程序
objExcelFile.DisplayAlerts = False 'Excel不可见
Set objWorkBook = objExcelFile.Workbooks.Open(App.Path & "\公司在册人员名单.xls")
Set objImportSheet = objWorkBook.Sheets(1) '选定工作表单1

objWorkBook.RunAutoMacros (xlAutoOpen)

Do Until line = 3000
line = line + 1
a(line)= objImportSheet.Cells(line, 2)
b(line)= objImportSheet.Cells(line, 3)
Loop

objWorkBook.RunAutoMacros (xlAutoClose) '''后台关闭excel
objWorkBook.Close (True)
objExcelFile.Quit
保存excel数据的代码:
Dim objExcelFile As Excel.Application
Dim objImportSheet As Excel.Worksheet
Dim objWorkBook As Excel.Workbook
Set objExcelFile = New Excel.Application
objExcelFile.DisplayAlerts = False
Set objWorkBook = objExcelFile.Workbooks.Open(App.Path & "\公司在册人员.xls")
Set objImportSheet = objWorkBook.Sheets(1)

objWorkBook.RunAutoMacros (xlAutoOpen)

objImportSheet.Cells(PrizeLine, 7) = a
objImportSheet.Cells(PrizeLine, 8) = b
objImportSheet.Cells(PrizeLine, 9) =c

objExcelFile.SaveWorkspace '''保存表单
objWorkBook.RunAutoMacros (xlAutoClose)
objWorkBook.Close (True)
objExcelFile.Quit
温馨提示:内容为网友见解,仅供参考
第1个回答  2013-06-27
引用用EXCEL对象。具体使用比较复杂。引用对象以后,建立一个新的EXCEL应用,然后打开EXCEL表book,这个会有很多属性,用得最多的是SHEET,可以用SHEET(1,1)代表第一行第一列。可以赋值。
第2个回答  2013-07-08
你那个OLE对象完全没必要用。
在VB中,直接用Excel.Application对象读写 .xls文件就行了。
相似回答