如何用VB读取和写入EXCEL表格

公司有个人事表格,文件比较大,经常打开不方便。现在想自己用VB写个小程序,用程序来向EXCEL表格写入和读取数据。由于在学校本专业不是编程,虽然学了一点,但忘了很多了,来这里求教
比如:我的表格中的字段有工号,姓名,部门,二级小组,三组小组那些,我只需要在程序里把员工信息输入到程序里,就可以添加到EXCEL里面。如果他离职,可以通过程序搜索工号或姓名来查找他的信息,然后导入到另一个叫“离职人员档案”里面,本表格的信息自动删除。

希望大家指教,如果可以,代码上还希望注释一下,谢谢。
我只有一百分了,希望大家帮忙。

因为ADO不支持Excel的删除

所以用Excel+access的方法解决

新建access,在access里面添加2个表,一个"在职"表,一个"离职"表,(都将工号设置主键)

Excel按Ctrl+F11打开vbe编辑器,插入窗体

按以下步骤建立对应控件

最重要的一点就是将文本框的名称属性依次改成"工号", "姓名", "部门", "二级小组", "三组小组",因为代码里要用到

建立好之后   双击窗体将以下代码复制到代码窗口中

Dim Con As Object

Dim Rst As Object

Dim Sql As String

Dim FieldArr

Const ProvidSr$ = "provider=microsoft.jet.oledb.4.0;data source="


Private Sub CommandButton1_Click()

Dim FieldSr$, ValueSr$, x%

If 工号.Text = "" Then MsgBox "工号必填": Exit Sub

For x = 0 To 4

FieldSr = FieldSr & FieldArr(x) & ", "

ValueSr = ValueSr & Me.Controls(FieldArr(x)).Text & "', '"

Next

FieldSr = Left(FieldSr, Len(FieldSr) - 2)

ValueSr = Left(ValueSr, Len(ValueSr) - 3)

Sql = "Insert into 在职 (" & FieldSr & ") VALUES('" & ValueSr & ")"

Con.Execute Sql

MsgBox "操作完成"

End Sub


Private Sub CommandButton2_Click()

Dim Wsr$, TBox$

For x = 0 To 1

TBox = Me.Controls(FieldArr(x)).Text

If TBox <> "" Then Wsr = Wsr & FieldArr(x) & "='" & TBox & "' or "

Next

If Wsr = "" Then MsgBox "请输入工号或姓名": Exit Sub

Wsr = Left(Wsr, Len(Wsr) - 4)

If MsgBox("确定删除?", vbQuestion + vbYesNo) = vbYes Then

Sql = "insert into 离职 select * from 在职 where " & Wsr

Con.Execute Sql

Sql = "delete from 在职 where " & Wsr

Con.Execute Sql

MsgBox "操作完成"

End If

End Sub



Private Sub UserForm_Initialize()

Dim AccPath$

FieldArr = Array("工号", "姓名", "部门", "二级小组", "三组小组")

Set Con = CreateObject("adodb.connection")

AccPath = "d:/Database/data.MDB"  ''''这里设置数据库路径

Con.Open ProvidSr & AccPath

End Sub


Private Sub UserForm_QueryClose(Cancel As Integer, CloseMode As Integer)

Set Con = Nothing

End Sub

好了  运行就可以了

说的的excel中vba的方法  如果要做成vb软件的话,在vb中的步骤也是一样的

代码和上面一样的  只是控件名称有些不同

追问

能加下你扣扣吗?我调试的时候出了点问题!!

追答

扣扣 1996 后面 4040

温馨提示:内容为网友见解,仅供参考
第1个回答  2015-07-10
努力学习吧,这方面资料这里很多。

vb中怎么读取excel文件?
1、调用Excel对象打开EXCEL文件后,读取文件内容\\x0d\\x0a***\\x0d\\x0a在VB中要想调用Excel,需要打开VB编程环境“工程”菜单中的“引用”项目,并选取项目中的“MicrosoftExcel 11.0 object library”项。由于你的Excel版本不同,所以这个选项的版本号也是不同的。\\x0d\\x0a \\x0d\\x0a因为EXC...

vb怎么打开Excel文件并向特定的单元格填写内容excelvb打开文件...
从\\"工程\\"菜单中选择\\"引用\\"栏;选择MicrosoftExcel 9.0 Object Library(EXCEL2000),然后选择\\"确定\\"。表示在工程中要引用EXCEL类型库。2、在通用对象的声明过程中定义EXCEL对象:Dim xlApp AsExcel.Application Dim xlBook As Excel.WorkBook Dim xlSheet AsExcel.Worksheet 3、在程序中操作EXCEL...

怎样实现用vb导入excel表格
首先,在VB中添加对Excel对象库的引用。然后,通过创建Excel应用程序对象(Application)实例来打开Excel文件。接着,获取工作簿(Workbook)和工作表(Worksheet)对象,从而访问Excel中的数据。使用合适的函数(例如Range或Cells)来读取工作表中的数据,并将其导入到VB的本地数据结构中。此外,可以使用循环结...

vb如何读取excel中数据?
1、首先,在Excel表格中输入如图内容,以方便在VBA中进行读取和处理操作。2、进入VBA环境,可以按键盘上的“Alt+F11”进入。右击“Microsoft Excel对象”,从其右键菜单中选择“插入”-“用户窗体”项。3、接着向窗体中拖动一个“标签”和一个“按钮”,右击“按钮”,从其扩展菜单中选择“属性”项。...

如何用vb提取excel表格中的数据如何用vb提取excel表格中的数据和...
用vb提取excel表格中的数据方法:1、在汇总表中的A列,将多个工作表的表名依次排列。2、在B1单元格输入以下公式,然后向右向下填充公式=OFFSET(INDIRECT($A1&"!A1"),,COLUMN(A1)-1)&""公式表示:以A1单元格的内容作为表名引用,通过OFFSET函数将表名引用的A1单元格作为基准单元格,每向右移动一列...

vb如何读取excel数据并存入数组?
读写EXCEL表: \\x0d\\x0a1、在工程中引用Microsoft Excel类型库: \\x0d\\x0a\\x0d\\x0a从"工程"菜单中选择"引用"栏;选择Microsoft Excel 12.0 Object Library(EXCEL2007),然后选择"确定"。表示在工程中要引用EXCEL类型库。 \\x0d\\x0a\\x0d\\x0a2、在通用对象的声明过程中定义EXCEL对象: ...

vb怎样读取excel中指定单元格内容并显示vb怎样读取excel中指定单元格...
1.打开一个Excel的文件,在表格中输入简单的表格,比如学生成绩表格。2.接着,鼠标左键单击【开发工具】菜单标签,在VBA控件下拉菜单中,并选择按钮控件,...3.然后,在表格中绘制出按钮控件,并修改控件名称。4.接着,鼠标左键单击【查看代码】按钮 5然后,在代码窗口中输入VBA语句,比如输入定义变量语句,...

vb数据写入excel,请问如何用vb提取excel表格中的数据有一ex
以此为例,在Excel中读取VBA程序的操作步骤如下(Excel2007为例):1.选择”开发工具“选项卡,点击”Visual Basic“(或者用快捷键Alt+F11)2.出现VBA编辑界面,注意看左侧,选择需要运行代码的工作表,此例为Sheet1;双击进入Sheet1相关程序编辑界面 3.在程序编辑区域,复制上上述代码 4.点击上面的...

怎样用VB读取Excel文件中表格中的数据?
2、 VB读写EXCEL表:VB本身提自动化功能可以读写EXCEL表,其方法如下:第一步:在工程中引用Microsoft Excel类型库:从"工程"菜单中选择"引用"栏;选择Microsoft Excel 9.0 Object Library(EXCEL2000),然后选择"确定"。表示在工程中要引用EXCEL类型库。第二步:在通用对象的声明过程中定义EXCEL对象...

请教请问如何用vb提取excel表格中的数据
首先需要知道你要引用的数据在Excel中的位置,然后在VB里面引用Excel,然后打开Excel文件读数据 Dim scxls As Excel.Application Dim scbook As Excel.Workbook Dim scsheet As Excel.Worksheet ‘Set scxls = CreateObject("excel.application")‘Set scbook = scxls.Workbooks.Add Set scbook = sc...

相似回答