分享

Excel设置重要文档自动生成随机校验码,禁止用其他机器改动重印

 和兴图书馆 2019-03-23

导读:一、校验码的防伪原理,二、校验码的应用需求,三、Excel生成校验码的方法,四、使用效果预览

一、校验码的防伪原理

校验码,相信大家都熟悉,看过、接触过,因为所有的机打发票都有校验码(或叫电子指纹)。

顾名思义校验是用来防伪的,然而,它是如何防伪的呢?要知道如何防伪得先了解校验码是如何生成?

校验码的生成,是通过随机数产生函数来实现的,即在每次操作的同时系统产生一个随机的不规则的唯一的数,不同机器,不同时间操作产生的随机数是不一样的,人为也是无法预知的。

了解校验码生成机制后,只要把正式打印生成的校验码做一个备份,拿纸质文档的校验码与备份校验码进行比对。如果相符就是正确的;不符就有可能是通过非指定机器打印的,就有修改虚伪嫌疑。这就是校验码的防伪原理。

校验码也就是简单算法的数字签名,即数字证书。有关数字证书,敬请【关注】头条号@Excel财务VBA,了解后续文章介绍。

二、校验码的应用需求

既然校验码能防伪,那么,有哪些领域需要用到校验码呢?简单说就是所提供的文档必须确保真实有效时,都有必要附加校验码以备核实。比如:自制所有报销凭证;打印具有证明功能的文书;各种毕业证书;获奖证书;职称证书等等。既然用途这么多具有校验码的文档如何创建呢?是简单、省事的方法就是利用Excel制作文档,并在其中插入一个校验码。本文就以'差旅费报销单'为例,介绍Excel设置在重要文档中自动生成随机校验码,防止用其他机器修改打印的方法。

三、Excel生成校验码的方法有三种

第一种方法的设置流程:选择插入校验码的单元格(L5)→在编辑栏输入公式【=100000+INT(RAND()*900000)】→回车键→OK(详见图1) 。函数含义说明:INT含义:INT(取生成的随机数的整数部分);RAND含义:RAND()无参数函数,生成大于等于 0 及小于 1 的随机实数。公式含义说明:随机生成大于10万,小于100万的六位整数。第二种方法的设置流程:选择插入校验码的单元格(L5)→在编辑栏输入公式【=RANDBETWEEN(100000,999999)】→回车键→OK(详见图2)。函数含义说明:RANDBETWEEN含义:RANDBETWEEN (要生成的最小整数, 要生成的最大整数);公式含义同第一种方法。第三种方法的设置流程:点击【开发工具】,接着点击【Visual Basic】,再接着双击工作表名称,最后,在弹出的代码窗口考录以下代码(详见图3)。

Private Sub Worksheet_SelectionChange(ByVal Target As Range) '——单击格事件 If Target.Address = '$Q$15' Then '——点击打印提交 Randomize '——初始化随机数生成器 yanzengma = Int(Rnd * 900000) + 100000 '——生成随机6位数校验码 Range('L5') = yanzengma '——写入校证码 End IfEnd Sub
Excel设置重要文档自动生成随机校验码,禁止用其他机器改动重印

图1 编辑生成校验码方法一

Excel设置重要文档自动生成随机校验码,禁止用其他机器改动重印

图2 编辑生成校验码方法二

Excel设置重要文档自动生成随机校验码,禁止用其他机器改动重印

图3 编辑生成校验码方法三

四,使用效果预览(详见图4)

Excel设置重要文档自动生成随机校验码,禁止用其他机器改动重印

图4 预览


    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多