有点变化
发布日期:2022-02-26 14:49:42 浏览次数:42 分类:技术文章

本文共 1336 字,大约阅读时间需要 4 分钟。

序言

仓促的开始,未必不是好事;近来自己想重学java,按照以往的方式,又是开始查询如何学习java、优先什么什么。最后迷失在一大堆信息之中。正巧今天处理文档的时候遇到了一些问题,就这么开始吧。对于我而言,往往不缺的是宏观的架构。而是蹒跚的开始,那就开始吧。先上车再说,关键是不要怕。

——2020年4月23日21:11

一.遇到的问题

今天在处理文档的时候,需要达到这样一个需求。将一个excel下不同sheet页的内容抽取出来。放到一个sheet页中。即ABsheet页都是一样的格式,需要将代码名称及代码值、代码描述、业务说明抽取到另一excel中,格式如图二好图

图一
效果图

图二

二.思路与操作

1.思路——由于截取的信息起始行都是固定的,所以想每一个sheet页从固定行往下取。直到判断没有数据,进入下一个sheet页周而复始。下面用伪算法表示一下

1.1打开sheet页,取3B的值放入,新sheet页第一行中1.2再取12A,12B,12C的值依次放入其中,进入下一行继续将3B值放入。若有值则13A继续下去。直到判断出(12+i)A是空值。则进入下一sheet页1.3周而复始,直到最后一个sheet页

2.由于完全没有接触过vba语言,实现这个操作要重点解决以下几个问题,即如何将这些步骤转化为程序语言。

2.1如何定位在excel中的位置2.2一个完整的vba程序是怎么样的    Sub 函数名称()      End Sub2.3如何进入下一个sheet页
Sub 测试()Dim i As Integeri = 12Rem i表示代码取值第一行Dim j As Integerj = 1Rem j表示新excle第几列Dim f As Integerf = 0Rem f表示新excle到了第几行Dim a As Integera = 2Rem a表示第几个sheet页Do While (a <= 3)Range("A" & j) = Sheets(a).Range("B3") Do While (Sheets(a).Range("A" & i) <> "")  Range("B" & j) = Sheets(a).Range("A" & i) Range("C" & j) = Sheets(a).Range("B" & i) Range("D" & j) = Sheets(a).Range("C" & i)  f = f + 1 i = i + 1 j = j + 1Range("A" & f).Value = Sheets(a).Range("B3")LoopRem 第一层Do循环结束a = a + 1i = 12LoopEnd Sub最终实现了所要的功能,踩了一些必要而又不必要的坑。时间原因(次日00:59),暂不赘叙.简要总结一下吧。

三.总结

这是一个非常简单的功能,却浪费了我近4个小时的时间。主要踩的坑基础得不能基础。什么下标越界啊、函数未定义啊。这相当暴露了对程序的无知,不过他对于我的意义却非凡,毕竟跨出了第一步,步履蹒跚好歹也是上路了。叮叮当当好在也是往一个地方走了,可期。。。。

——2020年04月24日01:07

转载地址:https://blog.csdn.net/qq_31972823/article/details/105717330 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:Excle 2007 VBA 参考大全——第一章Excle VBA基础
下一篇:学习方法的一些反思

发表评论

最新留言

能坚持,总会有不一样的收获!
[***.219.124.196]2024年03月22日 01时23分08秒

关于作者

    喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!

推荐文章

php中的变量名称用什么表示,PHP变量,方法,类等名称中的有效字符是什么? 2019-04-21
pic32mx是什么cpu_PIC32MX单片机外设库使用(Ⅰ)- 系统时钟及I/O口基本设置 2019-04-21
用c 在mysql上存图片_C 批量保存图片进 mysql 利用MYSQL_BIND插入longblob 2019-04-21
mysql 1045 28000_mysql报关于用户密码1045(28000),几种处理方法 (zhuan) 2019-04-21
solr比mysql的优势_Solr与Elasticsearch的优缺点比较总结和归纳 2019-04-21
华为博士招聘上机考试题目_牛客网-华为-2020届校园招聘上机考试-3 2019-04-21
python中for可以做变量名吗_Python中使用动态变量名的方法 2019-04-21
mysql 日期转换天数_MySQL 日期操作 增减天数、时间转换、时间戳 2019-04-21
java对象去重复_JAVA中List对象去除重复值的方法 2019-04-21
java bss_[转] .bss段和.data段的区别 2019-04-21
java上传图片损坏_大神求助 上传图片后 图片损坏 2019-04-21
java socket唯一标识符_Java Socket编程之常识网络基础知识 2019-04-21
java给xyz大小排序_java递归实现string xyz排序 2019-04-21
arctime必须要java_Arctime使用教程 Arctime常见问题解答 2019-04-21
mysql pxc mysql5.7_mysql之PXC5.7.18集群系列——1. Percona XtraDB Cluster 搭建 2019-04-21
mysql 自适应字段宽度_box-sizing解决自适应布局容器宽度问题 2019-04-21
java 配置文件配置路径_Java读取配置文件路径设置 2019-04-21
vux 选择器_vue中的scoped分析以及在element-UI和vux中的应用 2019-04-21
java cache 有效期_springboot cache 自定义过期时间及自定义缓存key前缀 2019-04-21
java实验一目的_Java实验报告(实验一) 2019-04-21