Excel居然会自动写公式、写VBA代码,再也不用傻傻的去记了,真爽!

您所在的位置:网站首页 excel怎么写公式自动求解 Excel居然会自动写公式、写VBA代码,再也不用傻傻的去记了,真爽!

Excel居然会自动写公式、写VBA代码,再也不用傻傻的去记了,真爽!

2023-07-01 10:22| 来源: 网络整理| 查看: 265

2.提取重复值(公式法)

问题: 工作表的A列有很多行内容,里面有的内容输入2次以上,怎么用公式提取不重复的值到B列?

AI居然提供了高版本才有的去重复函数UNIQUE,刚看到挺惊讶的。

=UNIQUE(A1:A13)

=UNIQUE(A1:A13)

3.统计不重复个数(公式法)

问题: 工作表的A列有很多行内容,里面有的内容输入2次以上,怎么用公式统计不重复值的个数?

AI半年前提供的公式,超级复杂。

AI现在提供的公式,很简洁,有点小缺陷,COUNT A的 A漏写了。COUNT是统计数字个数,COUNTA是统计非空个数,一定要用后者。

=COUNTA(UNIQUE(A2:A13))

=COUNTA(UNIQUE(A2:A13))

除了技巧、函数,卢子还测试了VBA,一定要将问题说明的很详细,才能得到正确的代码。

4.生成1月-12月的工作表

问题: 第一个工作表名称为目录,里面的A列罗列1月-12月,希望用VBA新建12个工作表,名称为1月、2月……12月?

AI提供的代码:

'指定目录工作表Set directorySheet = ThisWorkbook.Sheets("目录")

'获取月份列表的范围Set monthRange = directorySheet.Range("A2:A13")

'遍历月份列表,并创建对应的工作表For Each monthCell In monthRangemonth = monthCell.Valuei = i + 1

'创建新工作表,并命名为对应的月份Set newSheet = ThisWorkbook.Sheets.Add(After:=ThisWorkbook.Sheets(ThisWorkbook.Sheets.Count))newSheet.Name = i & "月"Next monthCell

MsgBox "已根据目录工作表创建了12个工作表,每个工作表的名称为1月到12月!", vbInformationEnd Sub

点开发工具,VB,插入模板,将代码粘贴进去。

运行代码,就生成1月-12月共12个工作表。

5.生成N个名称没有规律的工作表

问题: 第一个工作表名称为目录,里面的A列罗列张三、李四、王五等很多行内容,希望用VBA新建N个工作表,名称为张三、李四、王五等?

AI提供的代码:

'指定目录工作表Set directorySheet = ThisWorkbook.Sheets("目录")

'获取姓名列表的范围Set nameRange = directorySheet.Range("A2:A" & directorySheet.Cells(Rows.Count, 1).End(xlUp).Row)

'遍历姓名列表,并创建对应的工作表For Each nameCell In nameRangename = nameCell.Value

'创建新工作表,并命名为对应的姓名ThisWorkbook.Sheets.Add(After:=ThisWorkbook.Sheets(ThisWorkbook.Sheets.Count)).Name = nameNext nameCell

MsgBox "已根据目录工作表创建了" & nameRange.Rows.Count & "个工作表,每个工作表的名称为列表中的姓名!", vbInformationEnd Sub

运行效果。

6.制作目录

问题: 同一个工作簿里面有多个工作表,怎么用VBA代码,提取工作表名称做目录放在新工作表的A列?

AI提供的代码:

'创建一个名为"SheetNames"的新工作表Set newNameSheet = ThisWorkbook.Sheets.Add(After:= _ThisWorkbook.Sheets(ThisWorkbook.Sheets.Count))newNameSheet.Name = "SheetNames"

'在新工作表A列中写入工作表名称For Each ws In ThisWorkbook.WorksheetsnewNameSheet.Cells(newNameSheet.Cells(Rows.Count, 1).End(xlUp).Row + 1, 1).Value = ws.NameNext ws

MsgBox "工作表名称已提取至SheetNames工作表的A列!", vbInformationEnd Sub

运行效果。

最后,总结一下经验,跟AI聊天目前不支持发表格、图片,因此描述问题一定要很详细,太笼统的问题很容易得到错误的答案。

笼统的问题: 如何用VBA代码,提取工作表名称做目录?

详细的问题: 同一个工作簿里面有多个工作表,怎么用VBA代码,提取工作表名称做目录放在新工作表的A列?

记住,问题表达的越详细越好。

陪你学Excel,一生够不够?

一次报名成为VIP会员,所有课程永久免费学,永久答疑,仅需 1500 元,待你加入。

报名后加卢子微信 chenxilu2019,发送报名截图邀请进群。

推荐: 用ChatGPT代替人做Excel报表,又快又准,只是。。。

上篇: 亲测有效!免费使用ChatGPT,最简单的方法

请把「Excel不加班」推荐给你的朋友

别忘了点赞支持卢子哦↓↓↓返回搜狐,查看更多



【本文地址】


今日新闻


推荐新闻


    CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3