VBA信息获取与处理第四节:获取唯一非重复值返回数组的代码

news2024/11/19 6:29:57

《VBA信息获取与处理》教程(版权10178984)是我推出第六套教程,目前已经是第一版修订了。这套教程定位于最高级,是学完初级,中级后的教程。这部教程给大家讲解的内容有:跨应用程序信息获得、随机信息的利用、电子邮件的发送、VBA互联网数据抓取、VBA延时操作,剪贴板应用、Split函数扩展、工作表信息与其他应用交互,FSO对象的利用、工作表及文件夹信息的获取、图形信息的获取以及定制工作表信息函数等等内容。程序文件通过32位和64位两种OFFICE系统测试。是非常抽象的,更具研究的价值。

教程共两册,二十个专题。今日分享内容是:VBA信息获取与处理第二个专题第四节:获取唯一非重复值返回数组的代码03d69269fb7b5335c9bf44dd5f3b1207.jpeg

【分享成果,随喜正能量】人这一生,好不好都得自己走,累不累都得自己承受。每个人都有难言之苦,每个人都有无声的泪,岁月可曾放过谁?再风光的人,背后都有寒凉凄楚,再幸福的人,内心也有无奈难处,没人扶的时候,自己要站直,没人帮的时候,自己要努力。苦尽,甘自来;春暖,花会开。 。

第四节 获取唯一非重复值的返回数组

2 获取唯一非重复值返回数组的代码

最后把这节完整的代码贴出如下:

Public Function MyRandomA(Mim As Long, Mam As Long, _

NS As Long, Optional ArrayBase As Long = 1) As Variant

Dim AA() As Long

Dim BB() As Long

If Mim > Mam Then

MyRandomA = Null

Exit Function

End If

If NS > (Mam - Mim + 1) Then

MyRandomA = Null

Exit Function

End If

If NS <= 0 Then

MyRandomA = Null

Exit Function

End If

Randomize

ReDim AA(Mim To Mam)

ReDim BB(ArrayBase To (ArrayBase + NS - 1))

For i = Mim To Mam

AA(i) = i

Next

T = UBound(AA)

For j = LBound(BB) To UBound(BB)

i = Int((T - Mim + 1) * Rnd + Mim)

BB(j) = AA(i)

'对源数组数据进行处理,将第i个值放到T的位置

Temp = AA(i)

AA(i) = AA(T)

AA(T) = Temp

T = T - 1

Next

MyRandomA = BB

End Function

Sub MYNZC()

Sheets("sheet3").Select

UU = MyRandomA(Range("e2"), Range("e3"), Range("e4"))

Range("a:a").ClearContents

Range("A1").Resize(UBound(UU), 1) = Application.Transpose(UU)

End Sub

本节知识点回向:如何实现返回的随机值具有唯一性?思路是怎样的?代码中T的值是变化的,这种变化保证了什么?

本节内容详细代码“参考002工作表.XLSM”

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

c4754115be2bb0f3e3f021f479e2069b.jpeg

8cd650bfb667b8d79532a40ee6425be1.jpeg


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

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

相关文章

k8s部署skywalking(helm)

官方文档 官方文档说明&#xff1a;Backend setup | Apache SkyWalking官方helm源码&#xff1a;apache/skywalking-helm官方下载&#xff08;包括agent、apm&#xff09;:Downloads | Apache SkyWalking 部署 根据官方helm提示&#xff0c;选择你自己部署的方式&#xff0c…

企业网站从传统服务器迁移到弹性云有什么优势呢?

现代企业对于网站和应用程序的可用性和性能要求越来越高&#xff0c;传统基础设施可能无法满足这些需求。弹性云作为一种新兴的云计算服务模式&#xff0c;对于企业网站的运行和管理带来了许多优势。下面是企业网站从传统服务器迁移到弹性云的五大优势&#xff1a; 灵活弹性&a…

【Qt 学习笔记】Qt常用控件 | 多元素控件 | Tree Widget的说明及介绍

博客主页&#xff1a;Duck Bro 博客主页系列专栏&#xff1a;Qt 专栏关注博主&#xff0c;后期持续更新系列文章如果有错误感谢请大家批评指出&#xff0c;及时修改感谢大家点赞&#x1f44d;收藏⭐评论✍ Qt常用控件 | 多元素控件 | Tree Widget的说明及介绍 文章编号&#x…

Unable to locate the .NET SDK

问题描述&#xff1a; vs2019 加载项目时&#xff0c;提示如下&#xff1a; Unable to locate the .NET SDK as specified by global.json, please check that the specified version is installed. 项目中没有globan找al.json 文件 先使用&#xff1a; dotnet --list-sdks 命…

使用 docker-compose 搭建个人博客 Halo

说明 我这里使用的是 Halo 作为博客的工具&#xff0c;毕竟是开源了&#xff0c;也是使用 Java 写的嘛&#xff0c;另外一点就是使用 docker 来安装&#xff08;自动挡&#xff0c;不用自己考虑太多的环境因素&#xff09;&#xff0c;这样子搭建起来更快一点&#xff0c;我们…

SpringCloudAlibaba:5.1Sentinel的基本使用

概述 简介 Sentinel是阿里开源的项目&#xff0c;提供了流量控制、熔断降级、系统负载保护等多个维度来保障服务之间的稳定性。 官网 https://sentinelguard.io/zh-cn/ Sentinel的历史 2012 年&#xff0c;Sentinel 诞生&#xff0c;主要功能为入口流量控制。 2013-2017 年…

[ue5]编译报错:使用未定义的 struct“FPointDamageEvent“

编译报错&#xff0c;错误很多&#xff0c;但很明显核心问题是第一个&#xff1a;使用未定义的 struct“FPointDamageEvent“&#xff1a; 程序没有找到FPointDamageEvent的定义。 解决办法&#xff1a; 处理这类未定义都可以先F12&#xff0c;找到它的库位置&#xff0c;之后…

数据结构——快速排序

基本思想&#xff1a; 快速排序是Hoare于1962年提出的一种二叉树结构的交换排序方法&#xff0c;其基本思想为&#xff1a;任取待排序元素序列中的某元素作为基准值&#xff0c;按照该排序码将待排序集合分割成两子序列&#xff0c;左子序列中所有元素均小于基准值&#xff0c;…

BMJ英国医学杂志文献去哪里下载

《柳叶刀》The Lancet、《新英格兰医学期刊》NEJM、《美国医学会杂志》JAMA、《英国医学期刊》BMJ是世界四大医学顶尖期刊&#xff0c;今天有位医学同学求助一篇BMJ英国医学杂志文献&#xff0c;下面就用这篇文献演示一下在家获取BMJ文献的方法及过程。 文献名&#xff1a;Sur…

Multitouch for Mac:手势自定义,提升工作效率

Multitouch for Mac作为一款触控板手势增强软件&#xff0c;其核心功能在于手势的自定义和与Mac系统的深度整合。通过Multitouch&#xff0c;用户可以轻松设置各种手势&#xff0c;如三指轻点、四指左右滑动等&#xff0c;来执行常见的任务&#xff0c;如打开应用、切换窗口、滚…

视频号创作分成计划实战指南:保姆级教程,带你玩转新副业

视频号的月活跃用户数量已在去年突破了8亿大关&#xff0c;并且不断增长。 在这篇文章中&#xff0c;我将与大家分享视频号的运营玩法和作品创作方向。 一、玩法流程 开通条件 要开通创作者分成计划功能&#xff0c;需要满足以下条件&#xff1a; 粉丝数量达到100及以上。 …

Python专题:十一、集合

集合的初始化 . 字符串中的重复元素只能保留一个 数学中的集合操作 - 求两个集合的差集 & 求两个集合的交集 | 合并两个集合元素

word-快速入门

1、熟悉word界面 2、word排版习惯 3、排版文本基本格式 1、word界面 选项卡 功能组 点击功能组右下角小三角可以开启完整功能组&#xff0c;获得启动器 软件右上角有功能显示折叠按钮 2、排版好习惯 &#xff08;1&#xff09;随时保存 &#xff08;2&#xff09;规范文件命…

矩阵相关运算1

矩阵运算是线性代数中的一个核心部分&#xff0c;它包含了许多不同类型的操作&#xff0c;可以应用于各种科学和工程问题中。 矩阵加法和减法 矩阵加法和减法需要两个矩阵具有相同的维度。操作是逐元素进行的&#xff1a; CAB or CA−B其中 A,B 和 C 是矩阵&#xff0c;且 C…

Apache Knox 2.0.0使用

目录 介绍 使用 gateway-site.xml users.ldif my_hdfs.xml my_yarn.xml 其它 介绍 The Apache Knox Gateway is a system that provides a single point of authentication and access for Apache Hadoop services in a cluster. The goal is to simplify Hadoop securit…

双轴测径仪功能多 适用于各行各业外径检测

JG02Z-DG 系列双轴测径仪是双光路外径检测设备&#xff0c;两组测头可以进行不同形式的组合&#xff0c;从而完成不同产线需求的检测&#xff0c;今天我们主要讲解45角双轴测径仪&#xff0c;该种测径仪是较为常用的检测设备&#xff0c;两组测头与水平方向垂直方向呈45度角&am…

免费SSL证书有效期现状

自2024年4月25日起&#xff0c;腾讯云上申请的免费SSL证书有效期将从原先的12个月调整为3个月。而在其他平台&#xff0c;比如Gworg&#xff0c;已经有策略表明将停止签发1年期的免费SSL证书&#xff0c;转而仅提供有效期为3个月的证书。 目前&#xff0c;免费SSL证书的有效期…

笨方法自学python(一)

我觉得python和c语言有很多相似之处&#xff0c;如果有c语言基础的话学习python也不是很难。这一系列主要是学习例题来学习python&#xff1b;我用的python版本是3.12 代码编辑器我用的是notepad&#xff0c;运行py程序用cmd 现在开始写第一个程序&#xff1a; print ("…

拉线开关C++

题目&#xff1a; 思路&#xff1a; m%2的结果为0&#xff0c;就证明开关次数为偶数也就是处于关灯的状态就按题目所要求的输出0&#xff1b; 否则&#xff0c;就证明开关次数为奇数也就是处于开灯的状态就按题目所要求的输出1. 代码 &#xff1a; #include<iostream> u…

IDEA-SpringBoot项目yml配置文件不自动提示解决办法

文章目录 一、五花八门的解决方案二、通用解决方案 前言&#xff1a;本文为SpringBoot项目配置文件.yaml/.yml文件编写时没有自动提示的解决方案 一、五花八门的解决方案 同样的&#xff0c;当resources中只存在.properties文件和.yaml文件时&#xff0c;.yaml文件会主动提示信…