excel自动化数据录入与查询,让你上班可以摸鱼了!

B站影视 2025-01-04 04:00 3

摘要:你是否试过在一个工作表中录入数据,然后这些数据能自动存入到另一个工作表中?还可以马上查询数据。

你是否试过在一个工作表中录入数据,然后这些数据能自动存入到另一个工作表中?还可以马上查询数据。

这样的设置能够确保两个表格互不干扰,避免不小心更改已录入的数据。

看一下动态效果图:

下面,我将为你详细介绍如何实现这样的表格。

1、点击“插入”选项卡。在“插入”组中,选择“形状”按钮。

2、从弹出的形状菜单中选择一个你想要的按钮形状,圆角矩形。

3、在工作表上拖动鼠标,绘制出你想要的按钮大小和位置。

4、使用“形状格式”选项卡中的工具来调整按钮的外观,包括填充颜色、线条颜色、阴影效果等。

5、在按钮上显示文本,可以右键点击按钮,选择“添加文本”。然后输入你想要的按钮文本,如“录入”

1、在开发工具选项卡中,点击“Visual Basic”按钮

2、这将打开一个新的窗口,称为Visual Basic for Applications (VBA) 编辑器,在VBA编辑器的左侧窗格中,你会看到一个名为“录入表 ”的项目。

3、在左侧窗格中,找到并右击sheet1,在弹出的右键菜单中,选择“插入” > “模块”

4、双击新创建的模块,输入两段代码

我把代码放在下面,你可以直接拷贝就可以用。

Sub 录入数据

Set conn = CreateObject("adodb.connection")

conn.Open "provider= microsoft.ace.oledb.12.0;" & _

"extended properties=excel 8.0;data source=" & _

ThisWorkbook.Path & "\数据库.xls"

For i = 1 To 5

If i = 1 Then

a = "'" & Cells(i, "b") & "'"

Else

a = a & ",'" & Cells(i, "b") & "'"

End If

Next i

conn.Execute "insert into [sheet1$] values(" & a & ")"

conn.Close

Set conn = Nothing

MsgBox "保存成功 "

End Sub

Sub 查询数据

Set conn = CreateObject("adodb.connection")

Set rs = CreateObject("adodb.recordset")

conn.Open "provider= microsoft.ace.oledb.12.0;" & _

"extended properties=excel 8.0;data source=" & _

ThisWorkbook.Path & "\数据库.xls"

a = "出入库 like '%" & [b1] & "%' and 名称 like '%" & _

[b2] & "%' and 领用人 like '%" & [b4] & "%'"

rs.Open "select * from [sheet1$] where " & a, conn

[a8:e65536] = ""

[a8].CopyFromRecordset rs

rs.Close: Set rs = Nothing

conn.Close: Set conn = Nothing

End Sub

如果开发工具选项卡找不到,步骤如下:

1、点击Excel左上角的“文件”按钮,然后选择“选项”。

2、在Excel选项对话框中,选择左侧的“自定义功能区”。

3、在右侧的主选项卡列表中,找到并勾选“开发工具”。

4、点击“确定”按钮以保存设置。

1、右击录入按钮,Excel会自动弹出一个“指定宏”对话框。

2、在“宏名”下拉列表中,选择你刚刚编写的宏(录入数据)。

3、点击“确定”。

4、同样的方法,为查询按钮指定宏。

第四步:保存工作簿

请注意,为了确保VBA代码能够保存,你需要将录入表的工作簿保存为支持宏的文件格式,例如“.xlsm”后缀名(而不是“.xlsx”,因为“.xlsx”后缀名的Excel表无法保存VBA代码)。

而数据库这个表格,你可以直接保存为“.xlsx”文件。

至此,我们已经完成了Excel自动化数据录入和查询功能的全部设置。

通过简单的按钮点击,你就可以轻松地将数据录入到另一个工作表中,同时确保两个表格的数据互不干扰,大大提高了工作效率和准确性。

希望这篇文章能够帮助你更好地掌握Excel的高级功能,并在日常工作中发挥更大的作用。

来源:瞎搞制作

相关推荐