VBA宏编程_宏代码怎么用

VBA宏编程_宏代码怎么用背景Office的编程语言较老,和现有高级语言相差较多,导致入门以及编写差异较大,编写和调试不方便,所以一直没考虑过使用VBA进行Office编程,但最近有个需求,是在无高级编程语言环境的内网主机上进行表格自动化处理,所以必须得用表格自带函数实现简单逻辑以及VBA实现复杂逻辑。…

大家好,又见面了,我是你们的朋友全栈君。

背景

Office的编程语言较老,和现有高级语言相差较多,导致入门以及编写差异较大,编写和调试不方便,所以一直没考虑过使用VBA进行Office编程,但最近有个需求,是在无高级编程语言环境的内网主机上进行表格自动化处理,所以必须得用表格自带函数实现简单逻辑以及VBA实现复杂逻辑。

需求

对A和B进行m次评分,计算A和B的最终评分。计算逻辑:不是去掉A和B各自的最高分和最低分,而是计算A-B差值的最高分和最低分(负值),去掉这两组数据对应的A和B的两组评分后,剩下的m-2次评分求均值,得到A和B的评分。
特殊情况:若A-B恒等于const,则算法需要考虑去掉评分后可能只去掉了一组评分,因为按照匹配算法来说,先后顺序匹配到了就认为是匹配到了,而不去判断去掉的两组评分是否是同一组。

VBA代码

请添加图片描述
请添加图片描述

总结

Excel比较老了,所以编程方法与高级语言相差较大,写程序不好写,比如数组是1开始索引,圆括号而非方括号取索引,类似matlab,取数组的值需要raw4(r,1)不能raw4®;
VBA是Office留下来的接口,对于复杂逻辑、自动化处理有用;
简单的逻辑还是使用Excel自带的内置函数实现,更好理解,缺点是只能写一行函数。
wps的宏启动需要联网,所以内网下启动不了宏;
Excel2003 支持宏运行,录制宏开始后进行表格操作,然后停止录制,点进去选择宏后编辑,进入IDE环境,可自动生成对应的VBA代码,可以参考,F1帮助手册;
pandas可以读取Excel进行精确的复杂逻辑操作。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/135462.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)
blank

相关推荐

  • input file accept限制文件上传类型

    input file accept限制文件上传类型一、需求上传文件只允许上传doc、docx、jpg、png、gif和pdf格式的文件,需要在前后端进行双重限制二、前端实现1、前端限制通过inputfileaccept属性实现,在accept中以逗号分隔开【图一】,便可以实现选择文件时,默认只可选择设定格式的文件【图二】,需要说明的是,MIME格式image/jpeg对应.jpg,.jpeg等几种格式,不能达…

  • 状态模式state_迭代器模式

    状态模式state_迭代器模式状态模式 State动机模式定义实例结构要点总结笔记动机在软件构建过程中,某些对象的状态如果改变,其行为也会随之而发生变化,比如文档处于只读状态,其支持的行为和读写状态支持的行为就可能不同.如何在运行时根据对象的状态来透明地更改对象的行为?而不会为对象操作和状态转换之间引入紧耦合模式定义允许一个对象在其内部状态改变时改变它的行为.从而使对象看起来似乎修改了其行为.从而使对象看起来似乎修改了其行为.从而使对象看起来似乎修改了其行为.实例朴素根据状态来执行下一步enum NetworkStat

  • Python之os.path

    os.path常用函数示例参考:https://www.cnblogs.com/wuxie1989/p/5623435.html

    2021年12月19日
  • 手机直播怎么获取rtmp地址_rtmp地址怎么打开

    手机直播怎么获取rtmp地址_rtmp地址怎么打开现在的移动互联网越来越发达,5G的开通也指日可待,大家有没有想过在游乐场坐过山车时、在沙漠骑着骆驼时、在滑滑板时、在滑雪时、在逛街吃到美味佳肴时……将这些精彩的部分第一时间分享给好友们呢?“第一时间分享”?我应该说在这一刻与好友及时互动才对吧(笑),接下来我会给大家介绍GoProHERO7Black的直播功能。最近也在网上查了一下关于GoProHERO7Black(以…

  • Android Fragment用法之给Activity创建事件回调

    在某些案例中,可能需要Fragment与Activity共享事件。在Fragment内部定义一个回调接口是一个好方法,并且规定由持有它的Activity实现这个回调方法。当Activity通过接口接受回调时,它能在必要时与布局中的其他Fragment共享信息。例如,如果一个音乐播放器的应用程序在一个Activity中有两个Fragment—一个用来显示歌曲列表(Fragment A),另一

  • Mysql和Hash作为数据库索引的优略

    Mysql和Hash作为数据库索引的优略1.hash表只能匹配是否相等,不能实现范围查找select * from xx where id > 23; 这时就没办法索引了2.当需要按照索引进行order by时,hash值没办法支持排序select * from xx order by score desc;如果score为建立索引的字段,hash值没办法辅助排序。3.组合索引可以支持部分索引查询,如(a,b,c)的组合索引,查询中只用到了阿和b也可以查询的,如果使用hash表,组合索引会将几个字段合并hash,没办法支持部分索引

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号