粉丝3137获赞1.1万

各位小伙伴,大家周末好啊!本期的视频呢主要是教大家如何通过 vb 的方式来设定格式化的条件,还有取得格式化条件的数量。那最后是删除格式化的条件。好,那我们先从删除好了。那我们可以看到说我们的 我们这个一笑工作表啊,其实我们可以看到他这边已经设定格式了,那我设定格式的话,我要如何把它做删除呢?那我来展示一下给给大家看哦。好,那我要如何删除这边?首先 因为删除啊,第一要大家其实第一个超过脑,脑中的应该是迪丽特这个东西。好,我现在我要把我的 a 蓝位格式给删除嘛,所以我要用 a a 蓝位。然后这是要借助一个叫做风妹汤的选 后面刚刚的选这个东西,然后再来我要把他比利他妈第一,还有一比一 给力。好,那我们用这个的话,他就可以帮我把这里的格式都删除。那我们来执行一下,看一下是不是这个效果呢?哎,是不是我的格式都被我删除了。好,那删除之后, 删除之后,如果我现在想说,哎,我好想设定就是我设定格式啊,那我现在我就来设定一下,要怎么设定格式呢?就是符合我条件的,我就在这边上色。好,那我来设置一下 a, 那也是 a 蓝位吗?对不对? a 单位一样是用 fommicand 选这个东西,然后 fommicand 选之后呢,就要用就要用这个 再用 a 的。因为我我后面我会用到前面,前面都要加的,所以我微信用尾来帮我 先写好,这前面有招过,就是我,我有尾服啊,我后面我都可以打个斗点,然后就开始继续对这句话撰写。这样子好,那我这边欧美选好,那我这边又请打个点啊。 哎,对,这是不是跟前面有点熟悉啊,也是 a a 的太婆啊。然后这边 xl cuse 飞流,那 ceo 是飞流的意思呢?就是说储存格的值就是飞流。好, a 的 ceo 是飞流。 然后再来。再来什么呢?再来就是我这边啊。 然后因为我要介于什么之间吗? slv tw enb twob two 然后来我的条件风流了,那我就介于四十到六十之间好了。 四十再来一个勾勾六了二到我的六十之间。 好,那等下我这个去跑的话,他就会等一下这边还有一个阿姨腿。 然后我的艾特里面我要做什么事情呢?因为他这边只是帮我筛选四十到六十。那我这个出来之后我要做什么事情?我这边必须要再给他告诉他要做什么, 我就把它标红色英 iphone you 好,我们来看一下哦。来看一下他是不是帮我设定这条件。哎,没错,你看四十五十六十吗?那我转四十到六十之间的数字给我标红对吧?好, 那接下来呢?如果我想要去去看看说哎呦,到底有多少的这个,这个储存格格式化条件的数量的时候,我该怎么去做呢?那这时候我们就帮我挑个弹窗 a 四 g boss s g boss 然后 然后用我们这边就直接 a 一到 a 十好了,因为他其实就 a 一到 a 十啊。 然后再来 a 一到 a 十。然后欧美康滴水润酒啊, a h 康滴水到 a 十至零。 然后欧美肯定选好,然后肯定选。然后帮我去锁多少个吧,只有有人踢靠着。好,我们仔细看看他最后是不是要弹窗,告诉我有几个 有几个呢?好,那他又跑出来,那就是两个。好。以上就是今天的视频,谢谢大家。

各位小伙伴大家晚上好啊,本期的视频呢是教大家 ty 们的一个用法,那 time 它主要是用,就是计时器的功能,那我们在日常中可能会用到的是我先执行的这个代码大概要花多少时间,因为很多时候我们可以执行同样的就是我们想要 某种效果,他有不同的代码写法。那怎么去判断他的优点的话,其实第一个是如果挤吧,再来就是他执行的速度,那我们用台本的方式可以帮我们看看他的速度执行的速度怎么样,那我来展示一下。好,那我先定我的变量 啊,我这边没有把他定说他是素质类还是怎么自己穿这个是因为我这样子他,呃 呃他是比较有弹性的,就是他他想变什么就可以变什么这样子,当然你有很确定的时候他是什么种类的,那你就可以把它写下来,就是把它定,比如说我阿姨是要放松食物可能可以饿死弄吗?要看你是多少得 这个数字要放进去,这样好,再来一次。那我先假设就是说一到一千好了,然后然后接下来是人, 哎哎哎,怎么没打上去? 好,那接下来就是因为我要把我我现在我的 id 是一到一千吗?就是这里是一到一千吗? a 一到 a 一千,那我现在想把我 a 一到 a 一千里面就等于我前面刚刚的回全 值吗?对不对?然后再来再来呢?我就是因为我这边提前完了,然后我就要去看书, 我刚刚找了一个我的 t 要等于开门,这里踢等于开门,就是说我现在在紫金下面这一串的时候我要知道说哦,我上面我当时的时间点是什么?然后待会我再把它 互剪,互剪的时候就可以就可以用到了 for me, 然后我们看这边也是开门吗?开门剪掉的不是我,我刚刚讲的这边的开门就是我现在的时间,我在打 这一段的时候,他的参与的时间,去减掉我上面自信,下面回圈的这个时间,那这样子就可以都 说说我到底用了多少时间来处理这件事情?时间用了零点零零。好, 好,那正面的赶紧,就是我现在跑 a 一到 a 一千吗?然后接下来就是我在跑之前有设定一个时间,然后我跑完之后呢,我就把我现在的时间去减掉,我设定时间,因为我这边踢吗?就是我跑之前设定的时间。好,那我看一下会怎么样呢? 哎,花了零点零六秒,是不是一千行呢?哎,的确跑到一千行。好,那以上就是今天的教学,谢谢大家。

各位小伙伴大家晚上好啊,本期的视频呢,是教大家如何透过 vba 的方式来改变我格式化条件里面的头饰。好,那我们上期视频就教大家如何 啊,设定我的条件化格式,然后变成这样的图形了,那我要如何把它做一个变更呢?我要展示给大家看哦,好,那这里来一下什么?哎, 好,那我今天我要把它变更啊,那我先用范围吧,范围认句,哎, 到 a 十,然后一二三,佛梅肯定选,然后与他这是第一个条件,然后再来 ict, 等于 a t, 我不卡,我不卡, 然后这边是 i icoss sl 三二二 ows。 好,这边的意意思呢?就是什么意思?就是把它变成三件套三件,那我们来看一下三件好了,执行一下啊,他这边图是会变更哦,哎,是不是变成变更,那我这边也可以把把它变成这四件啊,执行看看。哎,你看他有斜的吗?对不对? 好,那这是便跟我的图示,然后之后呢,如果我想把我的图示的顺序给颠倒的话,那我要怎么做呢?就是比如说相反吗?把我的图示 做相反,那我要怎么怎么做?那这时候我可以先借用一下,借用前面的这个这一串,然后把它变成 red refricod, refricod 等于。好,我们来看一下,是不是这边有个刚有看到吗?他的这个顺序变得,我们把再再看一次。哦, 看这边本身向下吧,他是向上吧,然后我们来,我把他设定回来把,把给他顺序颠倒看一下, 你看这是原本下吧,然后那个红色吧,你还变成上了,对,顺序颠倒。好, 那接下来再来再来。要教大家的是是什么呢?是说如果我只显示我的同事,我不要我的资料,就是我这边零到,对,十到一百我都不要了,那我要怎么去做操作呢?好,那这时候呢,我就必须要把这个也把它拿走 啊。这边打修。修什么呢?修肥,哎,修 icome。 靠,等于,其实我们这边可以看到啊,他其前面都一样, fom a, ctrl a 选都一样,然后这边的一个是 iconct, 一个是瑞士欧的,一个是秀 icon 零。好,我们来看一下执行 acb 都没有数字,那如果把数字变出来,我觉得 我就把给你打个 boss 就有了执行。哎,好,以上就是今天的胶水,柔软无敌,欢迎在下方留言哦。好,谢谢大家。嗯。

大家好,跟着老于学习 excel, 让你的工作呢更加轻松高效。那前面呢,我做过了一期视频啊,就是通过皮鞭呢,去便利某个文件夹下的所有的 excel 文件,对吧?然后呢把它打开, 然后最近呢有个粉丝同学咨询,就是说有没有有另外一种方法,比如说去便利他的那个时间,也就是他的修改时间,然后根据他的修改时间呢进行去打开,那这个是可以的,今天的话我们就来给他演示一下这个代码要怎么样去做。 首先我们回到这个编辑这边啊,然后在这边新建过程,知道吧?啊?打开指定工作部, 好啊,其实我们要去,我们要去打开,就是说啊,某个修改日期的这个工作,最重要的就是说我们要获取这个工作 的时间,对不对?也就是修改的时间。那呃,获取工作部的修改时间呢?我们可以通过 b b 点什么 file 啊, data time 这个函数去获得,然后他后面的是这样,你看就跟这一个路径,那我们先做个案例啊,比如说这个,对吧?然后我要把这个 修改时间呢给它获取到,我说我把它路径复制一下,然后我回到这边啊,然后把它放进去, 多两个银行把它删掉,然后呢这里给它框起来,然后呢后面写个 message box, 好,我们来运行一下,是不是?但这个日期你看它是年月日加时间的,对不对?我们只要年月日。那所以呢,我们还要做一个微调,我们可以用什么 format, 通过 format 修改的格式,那改成什么?常规的 y y y y m m 什么迪迪,对吧?这种格式就可以就年月日的格式了,然后我们练习一下,你看这样的话我们就提取了某一个文件的这个啊,最近一次的修改时间或者创建时间了,对不对? ok, 那接下来的话,时间就接下来的话问题就很好解决了,我们通过 d r 去函数呢,去便利这边所有的文件,然后对每个文件呢,去 啊确认,也就是美国文件呢,去提取他的修最新的修改日期,然后的话我们只要,嗯,只要去找到我们需要的那个修改日期,然后进行打开就可以了,对不对?然后我们看一下怎么样去写啊? 好,首先我们来建立两个变量,一个是 location, location and string 用来存放我们的文件夹的路径,然后还有一个变量的话,是 什么变量呢? find name, 我们来用来读取什么我们的文件啊?好,我们先给 location 呢,给它复制一下,那 location 的话就是我们这里的这个值,对不对? ok, 好,然后接下来的话我们来循环,便利我们所有的文件。那我们用个啊,我们使首先这边把 s 去掉,首先我们给这个文件名,给他复一个初始的文件文件名啊,通过 dr, 然后把这个路径放进去就可以了 啊,记得这里加个斜杠,加个斜杠 okay, 然后接下来我们写个读循环, do well well do well 是吧?不等于空,对吧?然后是撸牌, 然后是这个等于 d i, 其实这个语句这一块语句是固定的,就是通过这样啊,便利所有的文文件夹的所有文件是将这个语句固定的。然后这里的话我们要写 if 条件判断语句了,就是用来判断什么文件的最新的修改时间对不对?所以 if 其实我们就把上面的给他烤下来就可以了,然后呢,这里我们改一下,然后这个路径,你看是这个路径,对不对?路径然后顶上,是吗?还有这个文件名 对不对?这样就可以了,对不对?然后接下来的话,如果是等于今天的,我们就提取今天的五月六号杠二零二三,对吧?然后后面加个字,也就是我们把修改时间是今天的文件给他提取出来,然后提取出来的话,我们要打开,对不对?通过我 post 点什么 open 就可以去打开了,然后 open 的话,后面其实跟着就是我们文件的什么绝对入镜,对不对?哎,就是把这个放上去就可以了。 ok 啊,那我们回到这边啊,现在我们看一下所有的修改日期都是五月上过期的过去的,对不对?所以呢,我们在这里呢新建一个 my excel, 对吧? ok, 然后我们来看一下啊,回到这边我们来运行我们的程序,是不是啊?我们的是吧,这个 excel 被打开了,这个是一个,那比如说这里面有多个呢,对吧?有这样多个呢?那我们再来看一下啊, 是不是啊?我们要的这三个是不是都被打开了,对不对?没有问题,对不对?所以啊,所以说我们只要对它进行这里的日期进行修改就行了,修改,然后修改到我们需要的这个 需要打开的这个日期,然后呢这个程序就能帮我们实现了。好吧,那今天分享就到这里,喜欢同学的话可以点赞加关注,后面视频更加精彩,谢谢。

大家好,今天和大家分享一下如何在一个色当中创建一个 vba 程序。要编写 vba 程序,首先我们要打开开发工具的选项卡,我们点击文件选项卡,点击选项按钮, 在一个色选项当中,我们点击自定义功能区,然后我们找到开发工具,然后把它勾选上, 点击确定按钮,可以看到我们这里多了一个开发工具的选项卡,点击维修 bask 按钮,打开编辑器,在工程管理器中,我们右键点击项目名称,点击插入按钮,插入一个模块, 我们将 vba 代码写在该模块当中。为了方便查看,我们调整一下编辑器的字体,点击工具菜单,点击选项按钮,切换到编辑器格式选项卡,我们来调整一下字体的大小, 点击确定按钮完成,然后我们来开始编写代码。首先我们用 sap 关键字来定一个过程,输入 sub, 然后我们给这个过程起一个名字,输入一个空格,然后我们给他起个名字, mi first a p p。 名字可以使用英文,也可以使用中文,根据自己的喜好和其他的过程不要重名就可以了。然后我们添加一个英文的小括号, 按回车键完成,它自动会添加一句 entersab 的代码,也就是这个过程的结束标记。然后我们输入代码 msgeox, 空格一对英文的双引号, 然后我们在双引号的中间添加我的第一个 v b a 程序,这句代码的意思是弹出一个消息框,并在消息框中提示我的第一个 vba 程序。程序编写完之后,我们点击运行按钮,查看程序是否正常运行,可以看到程序可以正常运行,没有问题, 那我们在表格当中如何对这个程序进行调用呢?我们可以在开发工具下点击插入按钮,然后我们插入一个按钮, 在指定红的调框当中,我们选择我们刚才编写好的程序,点击确定按钮完成,然后我们再点击这个按钮,他就可以调用我们刚才编写好的程序了。好了,本期的视频就给大家分享到这里了,你学会了吗?

vibe, 根据证件号码计算年龄,嗯,今天我们来看一下这个利用身份证号码提取日期,并且根据这个日期呢计算周岁虚岁,还有交于年龄啊, 周岁虚岁交易年龄,在我们代我们处理日期数据的时候用的还是比较多的。嗯,花了几分钟已经把代表写好了啊,来看一下。 嗯,首先写一个过程啊,然后写上位置依据啊,位置意思不可 补课点实习啊,就是代码所在工作部的第一个工作表,就是最大行,这个里面用了简写, 看到三就是 xlrp, 向左的话向左定位的话就是那个 life xl left 用 e 进气啊,向上的话 二,向左啊,向右的话就是二,向上的话就是三,向下就是四啊,点热,然后把这个这一个段,这个区装到书桌里面啊, 我为什么没有只装 h 列呢?我把这个 i j k 都装进去了呢?因为 后续为了,因为这个例子比较简单啊,后续我把这个这部分按一摘开,就是第二列,第三列,第四列,数组里面二三四列全部 用数据填充好以后,然后从 h 二扩展以后输出去,输出数字就行了。 好,我们看啊,调试一下看一下, 你点开,你看他只有第一列是有数数据的,左后面的三个都是空的,需要我们后去填充啊。接着我们写一个放循环啊,首先来提取中间号码的日期,中间号码里面日期 我们用阿迪达特,阿迪一般情况下啊,我们用来表示这个身份证,身份证号码吗?然后阿迪达特身份证号码是日期,当然你可以用别的这个变量。 嗯,我们那个工作表里面用蜜的函数来提取,或者莱夫这函数提取,密的函数里面提取,他是从 第七位提取,第八位结束啊,点开一个看一下, 他是从第七位啊,一九八零年十二月十六日,证件号码是从第七位 a r, 这是数组里面的啊什么的第七位开始提取,提取八位吗?这是用密的提取出来以后呢,我们再用方曼坦改变一下他的格式, 年月日啊,然后紧接着计算周岁。计算周岁的话, 我之前想过用这个函数,一个是这个代特,代特地方,这注意后面是两个 f, 这是维边函数啊,函数, 但是这个预算出来有问题,还要加判断,还不如直接判断。工作表里面我们直接用逮他底数函数就可以了。 那么围边里面这个函数和函数有区别的啊,导致用这个算出来还要加一个判断,所以我们索性不用这个的地方,而是用什么呢? 我们看一下我们用什么来判断的,就是去判断当前的日期啊, 跟这个以当前日期的年份,还有身份证上月份,身份证上天啊日组成的这个 日期进行比较,其实也就是什么呢?当前的月日和身份证的月日进行比较,如果说那个 当前的月日小于身份证上的月日,比如说现在是今天十一月六号, 嗯,你的你的生日是在十二月多,那么你的生日就没过,是不是生日没过的话,那你的周岁就应该是 当前的年份减去这个身份证上年份,再减去一岁啊,这个负责的话就是生日已经过了,那么就是当你的这个周岁应该就等于当前年份减去身份证上年。 我把这个周岁放在第二列了,这个数组里面的第二列了,第二列,第三列,第七岁,第第三列教育年龄在第四列了。虚岁就比较简单了,虚岁就是用这个当前年份减去这个身份证上年份就可以了。教育年龄也一样, 多判断一下就行了。如果说身份证上的月份小于九月份,说明你是九月份之前,孩子是九月份之前出生的,那么嗯,这个 教育年龄应该就等于就是你想象成这个就是这个是他生日,生日过了没有是吧?比如说八月三十一号是生日啊,八月三十一号生日没过, 如果说这个小于九月,说明他的生日过了没有呢?生日已经过了,那么就是什么呢?一而再再就是当前的这个,呃,年年份减去身份证年份是吧?否则的话就是要还要减去一岁啊。那么 这句表示什么呢?如果你的孩子是在九月份以后出生的,那么你的孩子上学的话,应该比其他的学生晚一年啊,比比当年同龄的孩子就是同龄的在九月份之前出生的孩子晚一年。 用的衣服,用的衣服结束,判断结束。然后这里面还出现一个问题,就是什么问题呢?就是当你的这个就是二零二二年出生的,就是 本年度出生的,会出现一个周岁是零岁,虚岁也是零岁,然后这个, 嗯,再减一的话就小月龄了。加了一个判断,其实这个判断不需要是我,因为这些身份证号码是我拿那个随机函数编出来的啊,所以有的话已经在二零二二年十二月出生的也有, 其实也不用这脚,然后那个循环完成,然后数字也就填充完了,通过循环从一一只胖嫩的 有棒的呀!哎呀,那么在输出数组之前呢,我们遇到这种什么编号 号码什么的,一定要注意他的格式啊,超过十位的,我们知道这个 excel, wps 表格里面啊,他就干什么呢,超过十位位的数字呢,他就自动就忽略后面, 后面是位,之后的以零补齐,所以我们就需要超过十二位的数字,我们就要把它设置成文本格式的数字啊,也就是这个的啊,就是 h 列啊, h 列的格式,设置成文本前写啊, stren 前写,然后 设置成文明格式以后我们再输出这里啊,那里,尤其我们在工作中遇到的这个什么编号互编号呀,什么银行账号等等,这个比较长,超过十五位我们就要设置什么, 当然你在数据库里面的话,也养成一个好习惯,就是设置什么么格式,方便后期计算, 然后后期处理啊,然后以 h r, 然后扩展有帮的, a r 就是 e v r r 的 ev 商标, ir 的二位商标就是扩展什么呢? ir 的 ir 的数字, ir 的一位商标就是多少行,扩展多少行,然后几列呢?二位就是多少列了,自己列了,然后就是这个区域,把数组填充到这个区域啊, 那么这是个二位数字头套,不用那个转制,我们用心一下,好看一下效果 好了,你看,这是十二月出生的,所以的话周岁四岁啊,虚岁是五岁,交的年龄是四岁,没有问题啊,那么今天就说这么多。

欢迎收看办公必杀技,今天给大家讲解一下,学会 vip 并不难,处理以色数据事半功倍!我们在日常工作过程中,经常需要处理大量的以色数据, 比如说我们现在有这样一则数据,这块显示的是姓名学期,还有这个学员他的各种成绩,比如说我们要查询张无忌 他所有的这个学期,还有他各科的这个成绩。当然我们用这个数据筛选,直接筛选出掌控器的粘贴过来就可以, 但是如果这个表二的数据发生变化,我们需要重新筛选,再重新粘贴就比较麻烦。假如说我们 要查询好几个学生的成绩,而且是给他成绩设定一一定的条件,以后我们用这种筛选几乎很难很难实现, 而且实现的过程很麻烦。用以色函数当然也能实现,但是同样很麻烦,而且特别占用计算机内存, 假如说我们有上万条数据的时候,用函数实现起来太麻烦了,而且太占用内存了。好,今天我就给大家教一个简单的方法,用微编 威逼,很多学员可能之前没有接触过,觉得可能属于编程一类的,然后没有编程基础,觉得可能不好学。其实今天我要给大家讲的威逼其实很简单,今天我就手把手给大家讲一下 怎么样用微宾来实现这样一个功能。首先我们点击开发工具,这个开发工具是从文件这块可以调出来的,这个大家自己回去百度一下,很容易找到。然后我们这块有一个插入, 我们点击插入这个按钮,好,这样就插入了一个按钮,我们双击以后可以打开这个变成蓝。好,我们现在根据我们刚才说的条件,我们进行筛选,进行这个编码的编写。 好,第一步我们首先要声明定义里边我们要声明一些变量,比如地母 a 还有 a 作为,这是 as 作为,作为什么类型,也不是作为长相 好爱和 k 作为整形。接下来我们就要做循环,因为我们要从表二里面要循环的让数据去查找,比如说从第二行、第三行、第四行、第五行、第六行一直循环到第十行。好,我们继续 我们做一个放循环,放,哎,等于这块我们是从第二行开始了,那就是从二到第十行, 那当然我们可以写成一百,因为他有跳出地址,你比如我们查到第十一行的时候是空数据,那我们直接跳出循环就可以了。好, 然后这写上耐克,哎,就是下一个,哎,这样才能循环起来,这样这个循环的结构已经有了。好,接下来我们就要在循环结构里 写判断,你比如说如果我们这个呃表二里这个谁的表, 这个表,大家可以看到这个谁的,就这这个表二里面单元格,这是用 c 一 l l s, 这就是单元格的意思,单元格 大家注意这块里面输入的一边 a 一,他就属于第一行第一列,那我们就输入幺幺,这就是代表 a 一的意思。当然我们现在这个行是一个变量, 我们是从第二行开始,那我们就输入这个 i, i 就是代表从第二行一直到第一百行,那我们就是要把这个行作为变量输入进去, 然后列的话他是一个固定值,我们可以看到他是在第二列,好,那我们这个就是第二列。好。如果表二里面,他这个第二行第二列等于我们表一,我们表一 交进去,表一这个单元格是第二行第一列, 大家可以看到是第二行第一列,那么第一支烟烂,那么那我们这个从这个大家可以看到从这个 第二行第二列开始,然后要依次的把这个表二的数据要都取过来,那我们再做一个,呃,小的, 不做循环了,循环太多可能就把你大家搞迷糊了,那我们就直接直接复制吧。好,我们直接复制一边,那我们就将表二中的 直复制过来,他就表一 表一,大家注意到我们是从第二行、第三行、第四行依次过来的,那么我们这个行他始终是一个变量,那我们就用 k 来表示 dk 行,然后我们先把 b 点,第二点,第二点,就等于 我们表二第二行,然后大家可以看到第几联,应该是第三联,我们看一下序号 啊,第一列学好,应该是第一列,好,我们改一下第一列 好,我们把这个复制一下,因为在编程过程中,我们经常会靠配,然后修改,这样编程效率能更高一些。好,我们是一二三四五六, 总共有右列数据,这是一二三四,好,我们再复制两次,好,相应的大家看到,然后我们还需要改一下,这是 第二列,这是序号第三列、第四列、第五列、第六列、第七列。 但是大家在编程过程中要学会标记的习惯,你比如我们打一个这个英文的上撇号这块标注,我们比如说这个序号序号,好嘞,这样就可以 大家就知道这一块是序号的一个负值,然后同理这块你比如呃英文的姓名,好,这样, 这样大家可以看到这两个就变成绿色了,他是不参与这个程序循环的。好,虽然代码很多都很简单。大家看到把表二的这个第二行的第一列复制给我们表一的第 k 行的第二列,然后依次 知道第三列、第四列、第五列、第六列、第七列,但对应的表二就是第一列、第二列、 第三列、第四列、第五列、第六列,这大家发现有什么问题没?因为我们表二里面有好几个张无忌,对不对?有三个张无忌,那我们现在这个编成代码里 这个 k 我们没有进行任何复制,所以我们这个 k 应该从这个循环开始的时候,我们先要给他一个复制。 比如说 k, 我们是从第二行开始,那 k 的最小值就是二,我们先让他等于二, 当我们第二行这个数据填充完了以后,那就该填充第三行了,那就是 k 加一,那我们这 k 等于 k 一,这样的话,当 k 等于三的时候,再循环一次,那就 k 等于四,相当于第三行天窗到第四行,第四行天窗到第五行,这样我们还要结束这个, 嗯的,我们结束这个假设。好,这样就基本上完整了。但是大家注意到没,我们这个循环是从第二行到一百行,这样的话, 而我们的数据只到第十行,这样的话计算机虽然也能实现,但是非常浪费计算机资, 他本来循环到第十行就可以了,而我们这块其实要写了循环到一百行,这样我们就写一个跳出机制。为什么我们不写第十行呢?因为在我们处理数据过程中经常要有一个余量,也就是把这个循环放大一些, 然后我们再来一个跳出循环,是不影响我们这个反应速度和内存的,因为我们表二可能会增减数据, 如果我们给他固定到第十行的话,那我们表二增减数据,你比如说数据增增加到一百行的时候,那我们这个代码又重新编写, 所以比较麻烦。所以我们比如说我们预计未来能写到一千行,那我们就可以写到一千行,能写到一百行,我们就写到一百行,但是我们再写一个到处循环就 可以了。但跳出循环的条件就是你比如说我们判断我们是按姓名来进行判断的,大家可以看到随便按姓名按这个序号都可以。 然后我们来一个跳出循环,如果我们表二里面 随便哪个都可以,我们比如按序号来判断的话,比如我们按序号来判断,序号是在第一列,那就是第二行 一一列,这我看一下这个可能括号,这个英文, 这个一定要用英文的括号号,第二号第一列,如果他等于空,那么我们的 i 就等于 一百啊,这种只写一行的话,就不用写 n 的 f, 如果你这样写的话,就要写 n 的 f, 所以我们当我们周一行的话,我们就这样写,就不用写 n 的 a, 相当于这就是一个跳出机制,但是我们把它 把这些给他割开好,这样看起来就比较清晰一些,大家可以看到,首先我们先是 这个做了一下定义和生命,就是定义 i k 是他是整数,然后 k 负值 二,然后我们代表的是第二行、第二列,第二行第三列,然后一次行值在增加, 然后放,这是对表二进行一个循环。好,基本上就这样,这块他要保存成加载红,因为今天只是给大家来那个 呃,讲解,我们如果保存的话,一定要保存成这种起用红的工作本。好,保存成起用红的工作本。好,我们点掉这个设计模式, 这样我们点击的时候他就可以运行了,我们点击试一下,大家可以看到很容易就把张无忌的这个信息找出来了。但是我们比如说我们要选周芷若或者风情啊,比如说周芷若, 我们点击按钮,大家可以看到这个非常快,计算速度非常快,把 周芷若的这个信息就全部找出来了。好,今天就给大家讲到这里。威逼实际上很简单,大家刚才看到我一步一步的在敲代码里面 主要用到了放的循环,还有 f 假设的判断,实际上未必,在数据处理方面主要用到的就是循环。还有这个假设,但是后期你要学的更深入一些,还有一些 时钟啊,一些字典了什么的,但是那些东西,呃,就是说你用的学的比较深入, 比较专业,处理数据比较量比较大,然后比较复杂的时候,用到一般的我们职场上能用到的数据处理方式,也就这些代码 足够应对一多半的数据处理方面的一些问题。 当然这个假设里面还有一些其他的一些,呃,按的了奥了一些其他的一些条件在里面。 好,今天就给大家讲到这里,大家参照我这个视频,自己下去一步一步制作一下,看能不能做出来,有什么不会的随时私信我。好,再见。

大家好,欢迎观看 vba 技术入门教程,这节课讲一下 vba 中代码的结构,以及如何运行 vba 代码。 vba 代码通常包含子程序和函数。子程序就像一个执行特定任务的小程序,可以独立完成一项任务。 函数允许我们创建一个自定义功能的函数,创建完以后,他的用法就和工作表中的函数几乎是一样的。首先我们在开发工具选项卡, 打开 vb 编辑器,然后右键插入一个模块儿。先来说子程序,子程序都是由 sab 开始,所以我们先写 sab, 然后按空格键,后边再写程序的名称,程序名称可以是中文,也可以是英文,根据大家的个人习惯,这里我就写中文。 写完程序名称之后,我们按回车键,这个时候括号和 in the sub 它会自动不全,然后我们把代码的主体部分写在这两个的中间,比如说弹出一个提示框, 这是第一个程序,这就是最简单的一个程序,然后我们把它稍微升级一下, 它的结构不够明显,我们把它改一改,然后这里是第二个, 然后我们先定义一个变量,定义一个字符串, 然后再给这个字符串复制, 最后我们输出 zip char。 这个程序的结构就比较明显了,首先是程序的名称,然后定义变量, 中间是处理过程,最后输出结果。我们写的代码结构多数情况下都和这个相似。首先是定义变量,然后是处理过程,最后输出结果。 我们给这个程序写一下注视,在 vba 里边添加注视有两个方法,第一个方法是用 r e m 大小写,无所谓,然后按空格再写注视内容,比如说这个是, 然后第二个方法是用英文的单引号,然后直接写内容,我们可以写他是定义变量, 然后在这一行代码,它是变量复值,最后是输出结果。 录式的作用呢?一般有两个,第一个就是解释作用,相当于做了一个笔记,比如说我一看这句代码,我就知道这个过程 他是为了演示代码的结构,然后后边的注视就是对每一行的作用进行了一个说明,相当于做了一个笔记,然后注视的第二个作用就是让代码失效,比如说我们把这行 代码注视掉,当程序运行的时候,这行代码就不会再运行了,我们来演示一下如何运行程序。首先第一个方法就是在 v b 编辑器里边上方有一个运行按钮,这个时候我们可以看到 在这个位置他显示的是第二个程序,所以这个时候我们点运行按钮,他运行的就是第二个程序。 如果我们把鼠标放到第一个程序里边,可以看这个位置,他显示的是第一个程序,所以现在我们再点运行按钮, 它执行的就是第一个程序。所以当一个模块里边我们有多个过程,我们在运行的时候就需要把鼠标的光标放到对应的过程里边,然后 看一下他是哪个过程,然后点运行按钮就可以了。在 vb 编辑器里边运行,主要是为了调试这个程序,看他有没有问题。然后我们再说一下最常见的 就是如何在工作表里边运行,首先我们可以在开发工具里边点红这个按钮,点它,然后可以看到我们写的第一个程序和第二个程序都在这里边,然后我们选中再点这个执行按钮, 他就会执行对应的程序,比如说选择第二个点执行,他就执行第二个, 这是第二个方法。还有一种就是我们可以插入一个按钮,然后把这个红指定给按钮,我们可以再插入这里, 插入一个形状,这就是一个形状,然后这个形状里边我们可以双击写一些文字,然后还可以把它的格式选一下格式, 然后再把再让它的内容居中。设置好之后,我们右键这个形状,然后选择指定红, 弹出来这个指定红窗口,然后我们选择需要指定的红,选中之后点确定,然后我们再点这个形状的时候,他就会运行指定的红, 这种是最常用的方法。然后还有一个就是在开发工具里边,这里有一个插入, 点开之后他有两个,一个是表单空间,一个是下边这个空间,我们需要用的是上边的表单空间,这里有个按钮,第一个点中之后直接拖动, 他会直接让你选择程序,比如说我们选择第一个点确定这个时候按钮他就会运行第一个程序,但是这种按钮比较丑,所以我用第一个方法比较多。 再来看 v、 b、 a 代码中的函数,函数它是由方审开头,所以先写方审 大小写无所谓,然后按空格写函数名称,比如说我们写一个 求和函数,写完函数名称同样按回车,他会把括号 还有结尾补充完,然后函数一般都会有参数,当然这个参数不是必须的,但是多数函数都是有参数,比如说我们要求前 n 个数字的和,比如说 n 等于五,就是一加二加三,一直加到五,所以它的参数就是数字 数字 n。 然后我们要求前 n 个数的和,中间就需要写代码主体,首先定义一个变量,这里大家可能还看不懂,这个不重要啊,主要是为了演示这个函数的使用方法,然后用 for 循环, 然后我们让他累计求和。通过这个例子,我们可以看一下 函数代码的结构,首先是函数名称,然后是参数,中间是处理过程。我们在使用函数的时候,最终这个函数的名称他需要返回一个值,这个值也就是函数的结果。这么说可能有点不太明白,我们来举个例子, 我们在使用 sum 函数的时候,就是直接让这些数字求和,当我们写完自定义函数之后,就可以直接像用普通函数一样,然后直接写我们刚才写的函数名称, 然后是前 n 个数的数字和,所以这里我们选择七就可以了,然后按回车,他就会返回结果,这个就是自定义函数 的使用方法以及他的代码结构。自定义函数就是由函数名和参数最后返回的结果这三部分组成。 最后总结一下,这节课主要讲了 vba 中子程序和函数的代码结构。子程序是由 saw 开始,然后加程序名称, 中间是代码的主体,最后 in the sub 结束。函数它是由方式开头,然后是函数名称,括号里边有参数, 然后是代码的主体,最后函数名会返回一个值,然后结束。我们在刚开始学的时候,这些代码肯定都是看不懂的,但是我们一定要知道这是一个完整的过程, 然后这是一个函数,并且要学会这些过程和函数的使用方法, 毕竟有句话说的好,没吃过猪肉,但是要看过猪跑,对吧?然后过程的使用方法比较多,第一种是在 vbe 编辑器里边直接点运行按钮,运行之前我们需要把鼠标的光标放到指定程序里边, 这个方法主要是为了调试这个程序,看他有没有问题。第二个使用方法就是在开发工具里边红按钮,然后选择指定的红执行。 第三个方法就是插入一个按钮,插入按钮有两个,第一个是在插入一个表单空间,第二个是插入一个形状, 人比较推荐形状,因为形状美观一点。最后是函数,函数的使用方法就和工作表函数是一样的,当我们写完函数之后就直接写函数名称,然后参数就可以了。好,以上就是本期视频的全部内容,感谢观看!

大家好,我是克莱梦,这节课我们来和大家说一下怎么便利一个文件夹里面的所有文件,我们如果碰到这样的一堆文件放在同一个文件夹下面,我们一个个去点开操作 是很复杂的事情,我们 vba 本身也是为了批量的处理这些东西,所以呢便便利文件夹下面的文件就肯定是我们要学习的重点,所以这节课我会详细的讲一下 怎么去便利文件夹下面的文件。这里我们就要涉及到一个思路问题,就是我们想要便利文件夹下面的文件的时候,我们首先是不是要有个步骤啊? 首先第一步,我们想一下我们的思路,是不是应该要获得文件,获得文件的什么获得文件名,我们要获得这些文件的文件名字,然后第二步呢,我们要 我们需要通过文件名去打开这些文件,第三步就是写我们的这些代码,这没什么好说的。第四步呢就是关闭,因为我们不可能前一个文件我们不关,我们就去打开后一个,对吧? 所以关闭文件。然后第五步我们要想办法把这一整串流程获得,打开代码关闭,我们要给他写一个循环操作,循环操作,我们来想一下,这这五步是一步不能少,我们首先从最简单开始, 我们来看一下怎么获得文件名,比如说我这里我想要获得文件名,我们能想到什么?什么方法可以获得这些文件名?我们之前是不是说过一个第二函数,第二函数是不是可以获得文件名,所以我们就可以利用第二函数我们先获得,我们先复制一下 这个这些文件所在的文件夹的路径啊,然后把它粘贴到这里面,这样的话呢第二函数就可以获得他的一个文件名。这前面的课程我已经说过了,如果有同学不了解的话呢,可以去看我前面的第二函数的那一期视频, 然后我们给他付给一个支付站变量,我们管这个支付站叫做 final name, 然后我们获得了这一串文件名之后我们获得了这个文件名之后,我们就可以对他进行操作。什么样的操作呢?我们是不是要打开这个文件? 我们打开的时候我们之前也学过叫做 workbooks, 然后括号里面我们依然是用刚才复制的这一串 啊,这个路径 我们是需要打一个,在后面也要加一个反斜杠的,如果不加反斜杠的话会报错的。然后后面我们用连接字符串把 feel name 给写在后面啊,这个是点 open。 好,我们用这个方式呢就可以去打开这个文件了,然后我们就可以写代码,然后然后一步是代码,就是代码, 我们写了代码之后,我们就要关闭这个文件,我们关闭文件也很简单,我们之前也学过 workbooks, 然后这个呢我们就不需要写所有的路径了,我们直接用 file name 就可以去表示,然后点 close, 这样呢它就实现一个代码的关闭。这里我们就其实就已经实现了前四步,但 这四步并不是重要的,重要的就是第五步,我们要循环操作,让他可以把里面的每一个每一串都给,就是这里面的每一个文件他都要便利,到这个时候我们就要用一个,我们当然会想到用循环,对吧?我们用什么循环呢? 我们这里用的是,就是我们之前说过的度循环啊,我们循环在哪里加呢?在这个获得文件名下面加。 do why? 我们给他什么条件呢?我们让他的这个文件名,我们让他从第二函数获得的这个文件名 大于小于,其实就是不等于啊,就是不等于空的时候,他不是空值的时候,他就执行下面的这一段语句,我们一直把它执行到我们家路谱这一段他都执行, 但是如果我们这个 fire name 如果不变的话,他就会一直去执行,我们当然要在这个代码的循环的 循环的底部,我们当然要给他加一句代码,加一句什么?我们要让这个点变一下,我们要,我们要让这个 feel name, feel name 肯定要变成下一个,对吧? 我们之前也学过这个第二函数,他如果后面不加参数的话,他就会获得同一个下一个文件文件的名字,所以呢,我们在这个 循环的末尾加一句这个第二不加不加参数的第二函数,就可以让他获得下一个文件名,所以所以这是第一步,这是第一步获得文件名,这是获得文件名。然后从这里到这里,这里都是都是录制,都是一个循环, 这里都是一个循环啊,然后这个是打开,这个是打开文件,然后这里是执行代码,这个地方是关闭,然后他调用这个主要就是调用这个第二函数获得文件名啊。这样子当我们执行了一遍之后,到末尾的时候,他把这个他第二就会自动获取 下一个下一个文件,然后获得了下一个文件之后,他在循环的时候,他就会判定一下是否满足是空,因为我们知道第二个函数如果 一直执行的话,就是一直重复执行,第二的话,他就会一直获得后面下一个文件名,获得到他已经到了 他的列表末尾的时候,他就会返回一个空的值,所以他当他等于空的时候,这个我们就会跳出循环,就结束这个循环,这样就实现了一个便利文件夹下面的所有文件 键的一个效果。比如说我们现在来试一下,比如说我执行代码这里我给他来一个执行,我们随便给他加一句啊 message box, 我们让他去执行,就让他把自己的文件名给打就给说出来吧,我们来执行一下,看好他说自己是什么, 他就会一个一个的打开,然后执行代码那一个一个的去执行,他就会依次的打开。 好,这就是一个便利文件夹下面文文件的一个非常好的一个方式,一个完整的代码,如果没有听懂的话呢,也可以多看几遍这个代码,多理解理解啊,主要是思路,思路是最重要的,就是如果你有好的思路的话,其实代码可 可能还能写的更简单一点,也不一定就一定要按我的代码来,但是只要能实现功能,这个代码就是好代码,就是我们学 vba 都是实用主义的, 所以大家也可以在我这个代码的基础上改进啊,如果有讲的不清楚的地方,大家也可以在评论区里面多问。

大家好,我是老吴,欢迎观看一个室友 vba 入门开窍课程,这节课我们继续来讲这个,摁的获取到这个数据的边界,我们之前是用这个代码以 ae 为这个基准单元格,向下定位 或者向右定位他的边界,获取到这个列号和行号。但是这样定位呢,他有个问题,比如说有的时候呢,他会露天, 比如说在这个名字这边呢,如果有个空格的话,好,或者说在这边啊有个空格,我们从 a 一 这样按住孔雀呢,向右定位的时候,他就不会定位到这个 f 一啊,他就会定位到这个空格的前面,或者说向下的时候呢,他也不会定位到这个数据的边界。所以在日常编写的时候呢,我一般用的方法呢,都 是从这个最大的这个列号啊往左定位,也就是啊,从这个单元格呢往左定位 啊,定位到这里就可以获取到他这个数据的边界啊,同样的,我也可以从下面就是 f 的最后一个单元格,这个是一百多万行,然后我向上定位他的边界,那这样呢,我不管你这边啊怎么漏,我都可以精确的定位到这个边界。 好,我们来试一下我们之前代码,如果是这样的话,他会怎么样?好,他只会判断这个区域。 ok, 我们来写一下。 好,首先呢,这个基础 单元格,他是 f 列的最后一个单元格。好,我们可以这么写 clus, 首先这个 cl 的第一个他是写行,那写行的时候呢,我们就可以用这个 roos 点 cat 啊。然后第二个是写列 好,我们这边呢,这个 f 列是一二三四五六啊,是第六列,如果你不写这个第六列,你也可以直接这个双引号,在这边写上这个 f 也可以,那这个单元格呢,就代表 f 列的最后一个单元格,可以来试一下 啊,选择他一下啊,对吧?他就定位到这个 f 列的最后一个单元格,然后从这个单元格里面我们向上定位他的边 啊,这个我们就已经很熟悉了,上节课已经学过了啊,练的 xl 啊, 定位他的边界啊,定位完之后怎么办呢?再获取到他的行号肉啊,然后再把它复制给一个变量啊,我们现在先 让他把它弹出来,好,来试一下,好,弹出来十五啊,他就定位到这个边界了,好,同样的道理呢,我们也可以 获取到他的列号 c 二十,好,他现在第一个呢,是填行那行的话,那就是一了一行了,那列号呢?这个最大的列号是什么?同样的道理,也是用这个卡顿时间看着。 ok, 好,我们先来试一下,选择下这个单元格,好看一下,然后他就选择到这个第一行的这个最后一列,这个单元格, 我们再用这个单元格呢,嗯的,然后 xl, two 怎么呢?应该是向左啊, nice, ok, 然后怎么办呢?再获取到他的行号就可以了, 同样的看一下他的行号是多少啊?六,回来看一下 第六行, f 列是第六行。 ok, 我们现在获取到了他的行号和列号,这样就好办了,我们就把这段复制一下啊,这个是获取行号的, 我们把它贴到这里来,再把这个获取列号的这一段 啊贴到这里来啊,这样呢,我们就不怕这个中间有断点了,好,我们来试一下, 他依然会锁定这个区域啊,如果这样我继续断了,他都没有问题啊,他都可以锁定这个区域, 他一张 会这样锁定这个区域啊,现在呢,虽然中间这个怎么空格都不会有任何问题,但是还有个问题,嗯,因为这个 数据这个事情说不清的,有些数据呢,会比较头痛,如果这个边界这个地方,比如说这个地方,如果断掉了 啊,或者说最后面这一列的最后个单元格呢,是空值啊,那这样的话就会出问题了,因为我从这个 f 列的最后一个单元格向上定位的时候呢,就不会定位到这个十五了,他就会定位到这个十四 啊,同样的道理,我从最后面这一列呢,然后向左定位的时候呢,就不会定位到这个 f 一了,他会定位到这个一一个单元格,那这样我判断的这个区域呢,就会变成这个区域了,来试一下, ok 啊,他就判断了这个区域,把这些外面的数字呢都遗漏掉了,所以我们在用暗的动态获取数据区域的时候呢,还是会存在一些不足, 那还有没有更智能一些的方法来动态获取到数据区域?好,这个内容我们就留到下节课再来讲解 好了,这一节课呢就讲到这里,感谢各位看官的支持,你的点赞是我继续创作的动力,关注我,下节课我们将学习新的内容。

那今天呢,我们再来看一个数组的运用啊,这边呢是一个二维的一个图表啊,就是我的这个行呢,是学生的姓名而列呢,是我的这个科目啊,中间呢,把成绩写在中间啊, 那现在呢,我想把这个形式进行一个转化,转化成这样一条一条的形式啊,就是我的姓名,科目和成绩写在这样一行啊,那我们来看一下用 vb 如何来实现?那第一步还是和之前一样啊,我们要先把我们的数据写在我们的这个数组里面啊,所以说我先定一个数字,让我的 ar 等于我的认知 是 a 一到我的这个地师啊,当然我们这个平时工作中可能不会有这么具象的一个范围啊,这个时候的话可能会加上一些锁引的一些方式啊,就是找到我们的这个呃位置啊,就可以了。好,那我们再继续啊,那我们 想一下,如果要写进去的时候,这个时候我肯定是要通过循环的形式来构建出我一个新的数字,那循环的时候呢,在我原始的这个表里面的话,他会有一个行,对吧?那我需要一个变量,我会有一个力,我 还需要一个变量,而在我的新数组里面,我这么一条一条增加的时候,我是还需要一个变量,所以我应该是需要三个变量,这个时候我先来定一个行电量啊,就是 用爱来啊,接着呢,用勾啊,再来定义一个裂变量,就是我的这个呃,科目的这里啊,紧接着我再用一个 n 来定义出我的这个数组的一个方式啊,就是我数组成一条一条往下直行的一个方式。 好,那我们再来想一下啊,刚刚说了啊,那我现在想变想新增的是这样一个新的一个数据啊,我也是要把它勾结在一个数足里面,所以我还需要一个一啊, 发这样的一个数组啊,我先把它放成一个空数组啊,啊,然后紧接着我们一条一条往下执行,我们想一下,这个不就是我们之前的视频中所说的这个动态数组吗?但是动态数组在执行的时候啊,我们要注意,现在呢是一行一行往下增加,但是上实际来说我们动态数组在做的时候,我们 不应该是一行一行往上增加,我们应该是一列一列就是像这样去加,因为我们知道在我们的这个数组里面,尤其这个是一个二维数组,我们只可以改变他最后一位, 最后一维的,呃,上标啊,最后一维的上标啊,好,那现在我们还是来写一下吧啊,因为这个好像有点太理论化了啊,首先呢,我们先是刚刚说了要一行一行的执行啊,这个时候啊, 先是从第二行开始执行。执行到哪里啊?执行到我的这个 ar 数字的第一位 啊,这个的话就是我像这样往下执行啊,我的这场代码就是这个意思。好,紧接着啊,我们还需要一个数字啊,就是我的这个还需要一个循环啊,我的这个勾啊,执行的是谁呢?是我的 a 啊啊,数字的第二位, 就是这样这么列,这样去执行第二位。好,那紧接着在执行完两个之后的话,我们就要开始 增加我们的这一个数字啊,所以说这个时候的话我需要重置我的这个数字就是我的 br 数字啊第一幕而且我在重置的时候要怎么样要保留我原来的这一个数?呃数据是不变的。 好,我们再来想一下如果是变的时候是怎么样呢?刚刚说了我们不可以直接这样去变,我们要把它写成这样竖着的形式,所以这个时候的话呢他的行数就是固定的啊,就是应该是三行 一到三了。一到三啊,那我们的练呢是要反复的来增加的,所以说我从第一个到我的第 n 个对吧,那这样的话呢我不就可以形成一个动态数组了吗让我的 n 一直在增加这边要注意另外一个就是说我 n 的起始值的话我尽量给他一个一好 当我每增加一个执行完的时候啊啊我的这个数字就应该啊让他发生一个变化。这个嗯写在这里可能不太好啊,这就写在这里吧,因为这写在这里吧,因为嗯的初始值其实应该是零啊。那直接写成嗯等于 n 加一吧写在这里面,不然的话呃这个数字带出来时候大家会想啊,就是说我在增加的时候他可能还会多出一个啊,虽然最后对负值是没有影响啊,但是这样写可能更好理解一下啊。就是我开始的位置是零啊,我每增加一次这个循环之后啊两个内外循环跑完之后我的嗯都会增加一条。 那这个时候啊我们就继续看啊。那我的这个 b 啊啊输组谁呢啊?刚刚是第呃行数啊,是一开始对吧?一是谁啊? 一是姓名对吧?第一个到我的第 n 个啊,就是我的一恩啊一恩,这有三个吗?啊?一二三啊,对吧?就这样,对,一二三,那就是姓名应该等于谁呢?我们来想一下啊啊,到这里刚刚说了,我执行的是我的这个第一行 行,对吧?第一行,所以这个时候啊,我的这个呃姓名这里啊,执行的是我的 ar 的第 i 行,这边的话定义定义出了一个 i 行,然后呢第一列所有第一个 br en 就等于的是我的这个 ar i e i 表示的是我的行号啊,就是现在我假设如果是二的话,我就执行这行号列第一列在这里啊,开始执行, 然后紧接着我的 b 啊啊二,嗯,二 n 是谁?是我的科目,是吧?那我科目要执行的啊,我们想一下啊,执行的是哪一个,所以说我应该是在这里,对吧?啊这里,所以说我的 a 啊啊应该是什么?是我的行是第一行是被固定的,而另 也是要发生变化啊,列在这里啊,就是这个哎勾这里啊,就是接这里啊,这个是哎呀一勾就是这里。比如说我第二开始执行到这三呢,就在这四呢就执行到这,因为这个的话他这个呃数组的这个第二位啊,第二位的这个呃 上标,他正好就是到四了啊,我们再继续啊,第八啊,也就是第三个。第三个,我们 来想一下他应该是什么样子?他是成绩,所以成绩应该是这里,比如说如果是语文的话,他应该是这个位置,那这个位置呢?他的行是谁啊?行呢就是 i 列呢,就是勾 这个添加到这里边去啊, 这不是少了一个,哎啊没有敲啊,哎呀,好,这个时候的话我就把 我的这一个三个啊添加到了我的这个星要增加的这个数足里面,这边其实可能还是有一些抽象啊,我们来执行一下看一下吧。啊,我就逐条的来执行了啊,然后在这里面的话我把这个本地窗口给打开,大家可以看一下啊, 先看一下这个 br 数组啊,这个时候还是空的吗?啊,然后 ar 数组的话就跟我们的这一个 这一个表是一样的啊,所以的话我就不把它我点开看一眼啊,对吧?就是这个跟我们的这个表是一样的啊,好观察。 br 的数字,这个时候我先要进一个新的数字啊,点开看一下啊,果然一二三都有啊,他现在目前还是空值吗? 紧接着我开始往上面复,复完之后三条执行完我们看一下。哎,这个时候是九十四分,谁是九十四分的啊?盖伦,对吧?九十一九十四分是 什么成绩呢?语文九十四分对吧?好,这个时候执行完,紧接着执行第二个啊,那这个时候的话勾我们看一下是不是变成了三,也就是这个时候开始执行他数学的成绩。好啊, 这个时候我们再点开看一下啊,这个时候果然啊,他出现了一个空纸,但是我帮他执行完可以看一下。哎,第一个盖伦是什么时候呢?变成了数学?第三个呢是五十一分,对吧?跟我们叫的是一样,他紧接着再执行啊,我把他直接执行到这一步,可以看到他这个时候出现了还是盖伦,然后呢?是他的英语成绩 往上拽一点,然后是多少分呢啊?六十五分啊,跟我们这里不是也是一样的吗?那这样的话呢,我就以这种形式把它一条一条的全部写出来,我把它给执行到最后吧,执行到最后的 时候啊,可以看到啊,这个时候的话,他所有人的这个名字啊都出来了,然后他的这个学科啊,也是按到这种语文数学英语,语文数学英语这样一条一条的来执行,而成绩的话呢也全部写在了这里面。好, 那这边的话紧接着就是在下一个问题了,就是我需要把我的这一个数据再贴到我的这个一个三角表中,刚刚说了他是这样横这样 把它给倒过来的,这个样子啊,但是我们实际上贴的时候呢,还是要这样去把它从上往下给他写下来,对吧?那这个时候还是要用我们之前所常说的这个水塞子函数。 先来看一下我们这个是 f 二,对吧? f 二这个位置 f 二的单元格瑞塞啊,那行的话是多少呢?是我们的这个 b r 数字。 br 数组这个 br 数组的时候他其因为是反过来的,对吧?那呃他的第一维的话其实还是三啊,就是第一维的这个上标的话他还是一个三,而第二维的时候他是一直在发生一个变化啊,所以这个时候的话我们直接定义出了他的 b 啊啊的这个啊,第二位啊,作为他的行,因为最后的话我们实际上是要进行一个转制嘛定型啊,然后紧接着他是几列呢啊?是三列啊,等 这边的话我加一个这个加一个换行服吧。啊,那这个时候啊,用的是我们的转至函数啊, 用我们的转至函数,转至函数的话,转至的是谁呢?是我们的这个第一啊,这样的一个数 啊。好,那这个时候我们来看一下,这里是不是会出现我们想要的这一个样子啊?好,我把它给执行完,我们来看一下啊,果然大家的成绩都出来了啊,可能大家会发生一发现一个问题啊,就是说这个的话,他会一 一直在呃,一直在变化啊,这个是因为的话我家的这个函数啊,我是这个呃偷个懒啊,没有的话在手中再输,而是直接把它呃,就是用函数直接带啊,如果把它贴成一个固定的值,其实的话他就不会变了啊。嗯啊,这个时候我再把它这个点给清掉, 清掉,然后我们再来执行一下,可以看到啊,这个时候他的成绩不就全部都出来了吗?也是我们想要的这个样子, 其实这个用法啊,本身的话他没有过多的一些呃,就是比较复杂的一些函数在里面啊,只是单纯的使用了一个呃,数组之间的一个呃,就是他的一个, 怎么讲呢?就是储存元素之间的一个对应关系啊,但是的话可能说起来比较简单啊,但是自己做的时候的话可能还是有一点绕啊,大家的话呢也可以来尝试着去写一写。