VBA分享专栏

Excel VBA之函数篇-3.5时间录入无烦恼

2021-01-20  本文已影响0人  Excel和VBA

前景提要

之前我们分享了一个能够实现简单录入的choose函数,其他它本身是一个选择函数,不过我们灵活掌握了它的功能和用处之后,将他转换在实际的工作中,实现了一个简单的数据快速录入的功能,也算是一个活学活用的例子吧(请允许我自夸下),今天我们继续分享一个可以提高数据录入效率的函数,日期函数。

在我们平时的工作中,很多时候都需要登记当天的日期,还是我们上次讲过的场景,商场录入进入的销售数据的时候,为了方便月底的数据统计,很多的时候基本上都是将一整个月的数据放在一个表格中的,那么我怎么知道我每天的销售数据呢?我不小心瞄到过一眼,有些商城会分成N个小sheet,也是一个不错的方法,但是这样数据统计的话,就非常的麻烦了 ,当然你是VBA高手,可以通过VBA代码实现多个表格数据的合并的话,另当别论。今天就继续分享一个在数据录入过程中,能够字段登记日期的方法。

函数说明

今天我们的功能还是通过VBA自带的函数来实现,日期函数:date(),很简单的日期函数,返回的结果就是今天的日期,考虑到录入数据的过程中,可能某些场景我们也可需要精确到具体的时间,时分秒,所以今天一起介绍下另外一个时间函数,time(),他返回的是现在的时间,时分秒。和excel本身的函数功能差不多,好了,有了我们需要的函数,我们就可以继续完善上次的简易录入的功能了。

上代码

我们还是在昨天的表格的基础上,继续添加两列数据,让我们的每日销售表变得更加的完善

image.png

我们在最后面增加两列,一列是录入销售日期,一列是录入登记数据的具体时间,这样我们一方面可以清楚的了解每日的销售数据,同时也可以知道这份数据录入的具体时间,方面我们事后统计分析客流高峰,销售高峰等数据,这样能够更方便我们掌握实际市场数据。

Sub test()

Dim num&, ShopName$

line:

num = Application.InputBox("请输入商品的序号", "输入准确的序号", , , , , , 3)

If num <> 0 Then

    ShopName = Choose(num, "苹果手机", "vivo", "华为", "OPPO  X27", "摩托罗拉", "红米 小辣椒XR", "百度音响5-5")

    LastCol = Cells(Rows.Count, 6).End(xlUp).Row

    Cells(LastCol + 1, 6) = ShopName

    Cells(LastCol + 1, 9) = Date

    Cells(LastCol + 1, 9).Offset(0, 1) = Time

    GoTo line

End If

End Sub

效果如图:

假设我们现在需要输入苹果手机,我们输入1,调试下代码,我们发现苹果手表已经输入到了第一个起始位置了

image.png

再来继续执行下一步,就是来到了我们进入要学习的date函数了,直接得到今天的日期,很简单

image.png

再来下一步,我们要获得当前登记的时间

image.png

完美,这样我们就成功的将我们登记这个数据的具体时间,日期都详细准确的录入到了表格中,我们并不需要做任何的操作。这样完全释放了我们的精力,让我们能够投入更多的时间和精力在产品的销售上面,同时有了完整的数据,我们也能够更好的分析当前产品的市场行情和门店的其他信息。

代码解析

本次并没有太多的代码上的知识点需要讲解,基本上都是套用上一次的代码,增加了两行,分别是自动录入当前时间和当前日期的,就是非常简单的两句话

    Cells(LastCol + 1, 9) = Date

    Cells(LastCol + 1, 9).Offset(0, 1) = Time

相信经过之前的一系列的学习,这两句话对于大家来说并不算是很难理解了,这里我采用了两种不同的方法来展示单元格的移动,一种是直接填入行号和列号来实现的,另外一种就是通过offset()这个位移函数来实现的,这个在之前也有简单的描述,忘记了也不要紧,我们后面讲到单元格的操作的时候,会 详细讲述一系列的函数的。今天我们还是重点学习,日期和时间函数的直接使用。

上一篇下一篇

猜你喜欢

热点阅读