摘要:在日常工作中,数据录入是一项必不可少的任务。然而,有时我们可能会不小心更改了原有的数据。
先看看一下动态效果图:
在日常工作中,数据录入是一项必不可少的任务。然而,有时我们可能会不小心更改了原有的数据。
为了解决这个问题,我们可以将数据录入界面和数据存储表分开设置。
(1)录入界面:这是我们的主要工作区域,用于输入数据。
(2)数据表:用于存储已录入的数据。
(3)产品与价格表:包含产品名称和对应的价格等信息。
接下来,我们将详细讲解如何制作录入界面:
一、制作下拉菜单
1、选中需要制作下拉菜单的单元格A2。
2、点击“数据”选项卡,然后选择“数据验证”。
3、在弹出的对话框中,选择“序列”作为允许的类型,并在“来源”框中输入产品名称的列表。
4、点击“确定”按钮,完成下拉菜单的制作。
二、实现单价自动读取
在需要显示单价的单元格中输入以下公式:
=IFERROR(VLOOKUP(A2,信息表!A:B,2,0),"")
意思是:在“信息表”工作表的A列中查找与A2单元格内容完全匹配的值,如果找到了,就返回该行B列的值;
因为A2单元格是输入后,才显示单价,所以当A2是空值时发生错误,只有VLOOKUP函数时会提示#N/A 。
所以加IFERROR函数就让返回一个空值。
三、制作保存按钮
1、在“插入”选项卡中选择“形状”,然后选择一个喜欢的形状(例如圆角矩形)作为保存按钮
2、在录入表中绘制该形状,并设置填充色、形状轮廓等样式。
3、右键点击形状,选择“编辑文字”,然后输入“保存”两字。
4、选中“保存”两字,设置字体、大小,并使其居中显示。
四、编写自动保存的代码
我们需要编写一段VBA代码来实现数据的自动保存。
右键点击“录入界面”工作表标签,选择“查看代码”,
然后在代码窗口中输入以下代码:
把代码复制到这里,你可以直接拷贝使用:
Sub 录入
I = Sheets("数据表").Cells(Rows.Count, 1).End(xlUp).Row + 1
Sheets("数据表").Range("A" & I & ":D" & I) = [a2:d2].Value
[a2].ClearContents
[C2].ClearContents
End Sub
这段代码的作用是:找到“数据表”工作表的最后一行,并在其下一行插入从“录入界面”工作表的A2到D2单元格中输入的数据。
然后清空“录入界面”工作表的A2到C2单元格,以便下次输入。
五、将按钮与代码关联
右键点击保存按钮,选择“指定宏”,然后在弹出的对话框中选择我们刚才编写的代码名(即“录入”)。点击“确定”按钮。
这样你就可以进行数据的录入了。
六、保存文件
最后一步,别忘了将文件保存为启用了宏的工作簿格式(例如.xlsm),因为.xlsx文件是无法保存VBA代码的。
现在,你已经学会了如何创建数据录入界面并实现自动保存。
快去试试吧!并将这篇文章收藏起来以备不时之需。
来源:科技奇闻木子李x