第十套教程序言:阻止对Sub和Functions的直接访问

news2024/11/27 1:17:29

【分享成果,随喜正能量】引擎利用后退的力量,引发更大的动能;空气经过压缩,更具爆破的威力。所谓"退一步想,海阔天空。"正可点破我们迷妄执着的盲点。。

《VBA高级应用30例》(10178985),是我推出的第十套教程,教程是专门针对高级学员在学习VBA过程中提高路途上的案例展开,这套教程案例与理论结合,紧贴“实战”,并做“战术总结”,以便大家能很好的应用。教程的目的是要求大家在实际工作中分发VBA程序,写好的程序可以升级。本套教程共三册三十个专题,今日内容是第5个专题“利用VBA制作一个转盘游戏”,今日讲解:第十套教程序言:阻止对Sub和Functions的直接访问3b41ba0cf3aaf6b7503bb9d53103a680.jpeg

序言阻止对Sub和Functions的直接访问

在VBA的应用中,过程是使用各种Function和Sub进行构建的,每个Function和Sub都有特定的任务。一般情况下,授权任何用户访问这些核心功能是很方便的(甚至是建议的)。如下截图,通过在EXCEL界面按下Alt+F8 我们可以看到各个过程名称:

972278fcc30bd89bc199965939f71b30.jpeg

但是,我们也建议程序的构建者可以在以上视图中隐藏自己认为不能直接提供给用户的部分过程。事实上也如此,当应用程序中的所有Sub都显示给用户时,这的确有一定的风险。一些Sub很可能只有在其他Sub或函数中的适当位置调用时才能工作,因此将它们暴露给用户可能会导致严重的问题。为应用程序执行内务管理工作的Sub不属于此列表,因此应在视图中隐藏。所以,我们可以从列表中删除那些特定的过程。下面是控制对话框中显示内容的两种方法。

1 设置模块为private

通过添加文本:Option Private Module。在模块顶部添加上述语句后,该模块中的所有子模块都将从宏列表中删除。但是,仍然可以从该对话框启动它们,只需键入它们的名称并单击“运行”。

2 设置过程为Private

Private Sub mynzC()

    MsgBox "Hello Word VBA!"

End Sub

使用此方法的缺点是,无法从包含Sub的模块外部访问Sub。当Sub仅从模块内部调用时,这没有问题。

本文提供的应用程序代码如下:

0f1f75ca6c23e8950f8e2fb9dc774251.jpeg

a3a3e45d0911c955606c756fa31ad6b2.jpeg

10edf5d2a11186a93cd3c8110d8edf6f.jpeg

72b8a236f7c82c6cdb4d75d3e3258bb6.jpeg

我们按下Alt+F8,此时对话框中仅仅显示了mynzA一个过程。

bbdcb5d3903c5138914591201e45b256.jpeg

Ø本讲内容参考程序文件:高级应用00.xlsm

d04efb37eda08c184a6353efe856862e.jpeg

我20多年的VBA实践经验,全部浓缩在下面的各个教程中:


a6d37db99d8707947fdbdde3ad8d261d.jpeg

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/940731.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

前端Excel导入数据后端数据库表未添加主键导致Excel导入数据重复

Java对Excel等文档解析上传到数据库或服务器问题记录 临时功能展示数据库表未添加主键导致Excel导入数据重复 如图,问题发现是因为Excel表中只有两千多条数据但导入数据库后却有五千多条,当时在代码中疯狂找原因也未果,最后尝试给数据库添加主键解决问题! 去除重复数据 总条…

渗透测试漏洞原理之---【CSRF跨站请求伪造】

文章目录 1、CSRF概述1.1、基本原理1.1.1、基本概念1.1.2、关键点1.1.3、目标 1.2、CSRF场景1.2.1、银行支付转账1.2.2构造虚假网站1.2.3、场景建模 1.3、CSRF类别1.3.1、POST方式 1.4、CSRF验证1.4.1、CSRF PoC Generator 2、CSRF攻防2.1、CSRF实战2.1.1、与XSS 漏洞相结合 2.…

构建简单的Node.js HTTP服务器,发布公网远程访问的快速方法

文章目录 前言1.安装Node.js环境2.创建node.js服务3. 访问node.js 服务4.内网穿透4.1 安装配置cpolar内网穿透4.2 创建隧道映射本地端口 5.固定公网地址 前言 Node.js 是能够在服务器端运行 JavaScript 的开放源代码、跨平台运行环境。Node.js 由 OpenJS Foundation&#xff0…

超实用的快递单号一键查询方法,帮你省时又省力

快递查询是我们日常生活中经常需要进行的操作,然而,当我们有多个快递单号需要查询时,逐个查询就显得非常繁琐和耗时。为了解决这个问题,今天给大家推荐一款实用的软件——【固乔快递查询助手】。 首先,在浏览器中搜索并…

单片机最小系统构成

51单片机最小系统构成 : 四部分组成 (1)晶振电路 (2)复位电路 (3)电源电路 (4)下载电路 (1)晶振电路干嘛的? 单片机需要 时钟 来…

day27 String类 正则表达式

String类的getBytes方法 String s "腻害"; byte[] bytes s.getBytes(StandardCharsets.UTF_8); String类的new String方法 String ss "ss我的"; byte[] gbks ss.getBytes("gbk"); String gbk new String(gbks, "gbk"); String类的…

CSDN每日一练 |『异或和』『生命进化书』『熊孩子拜访』2023-08-27

CSDN每日一练 |『异或和』『生命进化书』『熊孩子拜访』2023-08-27 一、题目名称:异或和二、题目名称:生命进化书三、题目名称:熊孩子拜访 一、题目名称:异或和 时间限制:1000ms内存限制:256M 题目描述&…

bp利用CSRF漏洞(dvwa)

打开dvwa,将难度调为low,点击CSRF,打开后发现有一个修改密码的输入框: 在这里修改密码,并用bp抓包,在http history查看数据包,点击engagement tools中的Generate CSRF Poc根据请求包生成一个CSR…

checkstyle检查Java编程样式:工具类应该隐藏default或者public构造器

所谓工具类,就是在API中只有静态的方法或者属性。对工具类应该隐藏default或者public构造器,方法就是构造器的访问属性设为private的、或者protected(如果希望有子类的话)。 背后的原理:对工具类进行实例化没有意义。…

Redis数据类型(list\hash)

"we had our heads in the clouds" String类型 字符串类型是Redis最基础的数据类型,关于字符串需要特别注意的是: ● Redis中所有的键类型都是字符串类型.⽽且其他⼏种数据结构也都是在字符串类似基础上构建的,例如列表和集合的元素类型是字符…

社保先关事宜

个人账户实行完全积累制 在社保账户中,有“统筹账户”和“个人账户”,缴费基数均为当地上年度在岗职工平均工资,单位所缴费用相当于缴费基数的20%,进入社会统筹账户。个人所缴费用相当于缴费基数的8%,进入个人账户&am…

抖店总是有人给中差评怎么办?聊下抖店的运营,对你有帮助的!

我是王路飞。 做抖店的商家,最想要的就是店铺爆单以及客户给出好评了。 但是也只能是想想了,每个做抖店或者说做网店的,不可能没遇到过中差评,我们能做的就是尽量避免。 那么抖店总是有人给中差评怎么办呢? 给你们…

分布式锁之mysql实现

本地jvm锁 搭建本地卖票案例 package com.test.lockservice.service.impl;import com.test.lockservice.mapper.TicketMapper; import com.test.lockservice.service.TicketService; import org.springframework.beans.factory.annotation.Autowired; import org.springframew…

定时任务库的详解与魅力应用:探索schedule的无尽可能性

文章目录 摘要一些示例其他的示例向任务传递参数取消任务运行一次任务获取所有任务取消所有任务按标签获取多个任务以随机间隔运行作业运行一项作业,直到某个时间距离下次执行的时间立即运行所有作业,无论其计划如何在后台运行多个调度器 记录日志自定义…

海康机器人工业相机 Win10+Qt+Cmake 开发环境搭建

文章目录 一. Qt搭建海康机器人工业相机开发环境 一. Qt搭建海康机器人工业相机开发环境 参考这个链接安装好MVS客户端 Qt新建一个c项目 cmakeList中添加海康机器人的库,如下: cmake_minimum_required(VERSION 3.5)project(HIKRobotCameraTest LANG…

微信小程序隐私协议接入

自2023年9月15日起,对于涉及处理用户个人信息的小程序开发者,微信要求,仅当开发者主动向平台同步用户已阅读并同意了小程序的隐私保护指引等信息处理规则后,方可调用微信提供的隐私接口。 相关公告见:关于小程序隐私保…

计算机竞赛 基于机器视觉的二维码识别检测 - opencv 二维码 识别检测 机器视觉

文章目录 0 简介1 二维码检测2 算法实现流程3 特征提取4 特征分类5 后处理6 代码实现5 最后 0 简介 🔥 优质竞赛项目系列,今天要分享的是 基于机器学习的二维码识别检测 - opencv 二维码 识别检测 机器视觉 该项目较为新颖,适合作为竞赛课…

格创校园跑腿小程序独立版v2.0.7+前端

应用介绍 格创校园跑腿SAAS管理系统小程序独立版v2.0.7前端 格创校园跑腿小程序系统独立版是一款基于ThinkPHP6框架开发的多校园专业跑腿平台,可应用至小区、街区、园区、厂区等。 格创校园跑腿小程序系统是校园创业版块热门应用,全新UI界面&#xff0c…

(202308)科研论文配图 task5 安装LaTex + 书籍第二章SciencePlots部

SciencePlots 序言阅读笔记绘图包介绍Windows下安装Windows下的安装MikTexWindows下的安装ghostscript加入系统环境变量安装scienceplots 序言 有幸在这次的组队学习活动中,拜读宁海涛先生的《科研论文配图绘制指南——基于python》一书,这本书文辞亲切…

【网络安全带你练爬虫-100练】第19练:使用python打开exe文件

目录 一、目标1:调用exe文件 二、目标2:调用exe打开文件 一、目标1:调用exe文件 1、subprocess 模块允许在 Python 中启动一个新的进程,并与其进行交互 2、subprocess.run() 函数来启动exe文件 3、subprocess.run(["文件路…