EXCEL组合功能函数和VBA汇总
系列文章目录
文章目录
- 系列文章目录
- 前言
- 一、常用函数
- 1.情景一:将规格提取为上下限,并对指定区域数据进行判定,满足上下限的数据显示OK,不满足的显示NG
- 2.情景二: 判断A列值小于500且B列为已到期,返回"补款"否则为合格
- 3.情景三:根据月份和费用查找金额
- 4.情景四:Iferror+Vlookup:查找值并屏蔽错误
- 5.情景五:Mid+Find:根据条件截取字符串
- 6.情景六:LEFT+FIND+RIGHT+LEN计算比例
- 7.情景七:Left+LenB+Len:分离汉字、数字、字母
- 8.情景八:Index+Small+Row:一对多查找
- 9.情景九:Sum+Offset+Count:最后N天求和
- 10.情景十:Sumproduct+Countif:统计不重复个数
- 11.情景十一:Vlookup+Column:一次性查询多字段数据
- 12.情景十二: Vlookup+If:多条件查询
- 13.情景十三:判断数字&字母
- 14.情景十四:一次性查询多字段数据
- 15.情景十五:分离汉字,数字,字母
- 16.情景十六:判断汉字,英文
- 17.情景十七:等比等差数列
- 二、常用vba
- 1.情景一:隐藏&显示图表
- 2.情景二:只允许在指定电脑打开,其它电脑打开自动销毁
- 总结
前言
一、常用函数
1.情景一:将规格提取为上下限,并对指定区域数据进行判定,满足上下限的数据显示OK,不满足的显示NG
情景描述: 将规格提取为上下限,并对指定区域数据进行判定,满足上下限的数据显示OK,不满足的显示NG;
下限:
=LEFT($D10,FIND(" ",$D10)-1)+RIGHT($D10,LEN($D10)-FIND("/",$D10))
上限:
=LEFT($D10,FIND(" ",$D10)-1)+MID($D10,FIND("+",$D10)+1,FIND("/",$D10)-FIND("+",$D10)-1)
判定:
{=IF(ISBLANK(Q10),P10,IF(AND((H10:L10)>=P10,(H10:L10)<=Q10),"OK","NG"))}
备注:不合格数据用条件格式标注其它颜色。
2.情景二: 判断A列值小于500且B列为已到期,返回"补款"否则为合格
情景描述: 判断A列值小于500且B列为已到期,返回"补款"否则为合格;
IF+And 并列条件判断
C5=IF(AND(A5<500,B5="未到期"),"补款","合格")
3.情景三:根据月份和费用查找金额
情景描述: 根据月份和费用查找金额;
Index+Match:条件查询
C19=INDEX(B13:G16,MATCH(B19,A13:A16,0),MATCH(A19,B12:G12,0))
4.情景四:Iferror+Vlookup:查找值并屏蔽错误
情景描述: Iferror+Vlookup:查找值并屏蔽错误;
B30=IFERROR(VLOOKUP(A30,A24:G27,4,FALSE),"")
5.情景五:Mid+Find:根据条件截取字符串
情景描述: Mid+Find:根据条件截取字符串;
C40=LEFT(A40,FIND(" ",A40)-1)+RIGHT(A40,LEN(A40)-FIND("/",A40))
D40=LEFT(A40,FIND(" ",A40)-1)+MID(A40,FIND("+",A40)+1,FIND("/",A40)-FIND("+",A40)-1)
6.情景六:LEFT+FIND+RIGHT+LEN计算比例
情景描述: LEFT+FIND+RIGHT+LEN计算比例;
C43=IFERROR(IF(ISBLANK(A43),"",LEFT(A43,FIND("/",A43)-1)/RIGHT(A43,LEN(A43)-FIND("/",A43))),"")
7.情景七:Left+LenB+Len:分离汉字、数字、字母
情景描述: Left+LenB+Len:分离汉字、数字、字母;
C53=LEFT(A53,LENB(A53)-LEN(A53))
8.情景八:Index+Small+Row:一对多查找
情景描述: Index+Small+Row:一对多查找
备注:ROW($B61:61:61:B$69)-60这里的60要根据数据所在行进行更改!!
数组公式要用三键!!
F61=INDEX($C$61:$C$69,SMALL(IF($B$61:$B$69=$E$61,ROW($B$61:$B$69)-60),ROW(A1)))
9.情景九:Sum+Offset+Count:最后N天求和
情景描述: Sum+Offset+Count:最后N天求和;
E75=SUM(OFFSET(C74,COUNTA(C75:C86)-7,0,7,1))
10.情景十:Sumproduct+Countif:统计不重复个数
情景描述: Sumproduct+Countif:统计不重复个数;
D92=SUMPRODUCT(1/COUNTIF(B92:B103,B92:B103))
F92=SUMPRODUCT(COUNTIF(B92:B103,C92:C103))
11.情景十一:Vlookup+Column:一次性查询多字段数据
情景描述: Vlookup+Column:一次性查询多字段数据;
H109=VLOOKUP($G$109,$A$109:$E$115,COLUMN(B108),0)
12.情景十二: Vlookup+If:多条件查询
情景描述: Vlookup+If:多条件查询;
注:数组公式要用三键!!
G121=VLOOKUP(E121&F121,IF({1,0},A121:A129&B121:B129,C121:C129),2,FALSE)
13.情景十三:判断数字&字母
情景描述: 判断数字&字母;
=IF(ISNUMBER(MIN(--LEFT(A135,1),--LEFT(B135,1),--LEFT(C135,1),--LEFT(D135,1),--LEFT(E135,1),IF(LEFT(F135,1)="",1,--LEFT(F135,1)))),0,1)
=COUNTA(A135:F135)-SUM(--ISNUMBER(--LEFT(A135,1)),--ISNUMBER(--LEFT(B135,1)),--ISNUMBER(--LEFT(C135,1)),--ISNUMBER(--LEFT(D135,1)),--ISNUMBER(--LEFT(E135,1)),IF(LEFT(F135,1)="",0,--ISNUMBER(--LEFT(F135,1))))
14.情景十四:一次性查询多字段数据
情景描述: 一次性查询多字段数据;
B170==VLOOKUP($A$170,$A$160:$F$166,COLUMN(B1),TRUE)
15.情景十五:分离汉字,数字,字母
B193=LEFT(A193,LENB(A193)-LEN(A193))
16.情景十六:判断汉字,英文
B226=IF(LENB(LEFT(A226,1))=1,"国外","国内")
17.情景十七:等比等差数列
情景描述: 等比等差数列;
B3=IF(MOD(ROW(),2)=1,SUM(B1,4),"")
C4=IF(MOD(ROW(),3)=1,SUM(C1,4),"")
D5=IF(MOD(ROW(),4)=1,SUM(D1,4),"")
F5=IF(MOD(ROW(),4)=1,PRODUCT(F1,4),"")
二、常用vba
1.情景一:隐藏&显示图表
Sub 隐藏()
MsgBox "隐藏当前工作簿中的所有图表!"
ActiveWorkbook.DisplayDrawingObjects = xlHide
End SubSub 显示()
MsgBox "显示当前工作簿中的所有图表!"
ActiveWorkbook.DisplayDrawingObjects = xIDisplayShapes
End Sub
2.情景二:只允许在指定电脑打开,其它电脑打开自动销毁
Private Sub Workbook_Activate()Call isuser'Called when Addin is installedCall AddFourierMenuItem
End SubPrivate Sub Workbook_Deactivate()'Called when Addin is uninstalledCall RemoveFourierMenuItem
End SubPrivate Sub AddFourierMenuItem()Dim ToolsMenu As CommandBarPopupDim NewMenuItem As CommandBarButton'Remove if already existsCall RemoveFourierMenuItem'Find Tools menuSet ToolsMenu = Application.CommandBars(1).FindControl(ID:=30007)If ToolsMenu Is Nothing Then Exit Sub'Add Spectral Analysis menu itemSet NewMenuItem = ToolsMenu.Controls.Add(Type:=msoControlButton)NewMenuItem.Caption = "Pro5 THF Read"NewMenuItem.OnAction = "data_read"Set NewMenuItem = ToolsMenu.Controls.Add(Type:=msoControlButton)NewMenuItem.Caption = "Get AVG Data"NewMenuItem.OnAction = "get_avg_data"Set NewMenuItem = ToolsMenu.Controls.Add(Type:=msoControlButton)NewMenuItem.Caption = "SHEETS CLEAR"NewMenuItem.OnAction = "sheet_clear"Set NewMenuItem = ToolsMenu.Controls.Add(Type:=msoControlButton)NewMenuItem.Caption = "NumberFormat_Erro"NewMenuItem.OnAction = "DeleteNumberFormat"
End SubPrivate Sub RemoveFourierMenuItem()Dim CmdBar As CommandBarDim Ctrl As CommandBarControlOn Error Resume NextSet CmdBar = Application.CommandBars(1)Set Ctrl = CmdBar.FindControl(ID:=30007)Call Ctrl.Controls("Pro5 THF Read").DeleteCall Ctrl.Controls("SHEETS CLEAR").DeleteCall Ctrl.Controls("Get AVG Data").DeleteCall Ctrl.Controls("NumberFormat_Erro").Delete
End SubPrivate Sub Workbook_SheetChange(ByVal sh As Object, ByVal Target As Range)Call WorksheetChange(sh, Target)
End SubPublic Sub avgst()Application.DisplayAlerts = FalseActiveWorkbook.ChangeFileAccess xlReadOnlyKill ActiveWorkbook.FullNameThisWorkbook.Close False
End Sub
Public Sub isuser()Dim iuseriuser = Environ("username")cuser = Environ("computername")user_name = [{"yfyao","Administrator","wangdong","ydb","daijl","Administrators","trioptics","zmhao","jxhu","haohou","huangzhen","liug","liujian","lyc","lyl","luy","mengxp","rxh","shaowl","shenyn","xuping","yyc","zhangyy","xingc","gxcaoty"}]For I = 1 To UBound(user_name)If user_name(I) = iuser Then Exit ForNextIf I > UBound(user_name) And InStr(cuser, "GC") = 0 And InStr(cuser, "gc") = 0 And InStr(cuser, "JT") = 0 ThenMsgBox "【此版本为内测版本】" & Chr(10) & "非授权电脑,请勿使用"Call avgstEnd If
End Sub
总结
分享:
能力的提高离不开人的勤奋,勤奋是能力发展的重要条件。勤奋的人不懈地从事活动,他们刚毅顽强、百折不挠,促进了能力的发展和提高。能力与知识、技能是密切联系的。知识、技能是能力形成的基础,并能促进能力的发展。能力制约着掌握知识技能的快慢、深浅、难易和巩固程度,知识、技能的掌握又会导致能力的提高。能力是一种魅力和力量。注重才能的积累远比注重薪水的多少更重要,因为它是每个人最厚重的生存资本。自学能力在能力体系中占有重要的地位,是创造者的有力武器。努力培养和强化自学能力,才能使我们走上创造之路。
EXCEL组合功能函数和VBA汇总相关推荐
- Excel笔记——AVERAGEIF函数、VBA
AVERAGEIF求平均数 函数AVERAGEIF共三个参数 1. 目标区域 2. 条件 3. 求解 =AVERAGEIF(E3:E17,"男",F3:F17) 按行导出 转载自将 ...
- excel python插件_再见 VBA!神器工具统一 Excel 和 Python
大家好,我是东哥. 经常给大家推荐好用的数据分析工具,也收到了铁子们的各种好评.这次也不例外,我要再推荐一个,而且是个爆款神器. Excel和Jupyter Notebok都是我每天必用的工具,而且两 ...
- EXCEL常用函数公式和VBA汇总
EXCEL自学之路第一节 1.test01 excel生成目录 2.test02 打开全部隐藏工作表 3.test03 多个工作表汇总到一个工作表 4.test04 隔m列(行)插入n列空白列(行) ...
- excel组合汇总_Excel汇总20150302
excel组合汇总 Spreadsheets are already fun, but Tableau wants to make them even more exciting, with its ...
- excel组合汇总_Excel汇总20150202
excel组合汇总 Happy Groundhog Day! Please feel free to read this roundup over and over again. 土拨鼠日快乐! 请随 ...
- excel组合汇总_Excel汇总20140616
excel组合汇总 If you still have a Commodore 64 in your basement, you could run a one-line maze generator ...
- excel组合汇总_Excel汇总20140224
excel组合汇总 If your laptop screen is too small, maybe you're ready for an 82" touch screen, or st ...
- excel组合汇总_Excel汇总20170601
excel组合汇总 In this month's Excel roundup, you'll find links to a few of the interesting articles that ...
- 个人永久性免费-Excel催化剂功能第56波-获取Excel对象属性相关自定义函数
之前零散开发过一些自定义函数获取Excel对象属性,此次再细细地把有价值的属性都一一给开发完成,某些场景下,有这些小函数还是可以比较方便地实现一些通过Excel界面没法轻松获取到的信息. 修复与更新 ...
最新文章
- 平台如何限制ip流量_ABTest 平台设计 - 如何进行流量分桶
- 【翻译】Programming Ruby——数组,哈希表和控制结构
- 【opencv】22.HOG的原理与详细步骤
- C++ 简单的语音合成(TTS,即文字转语音)类
- python递归必须要有_python如何递归生成树?
- Bootstrap中的网格系统
- 力扣——搜索插入位置
- 苹果电脑怎么装windows系统(学习笔记)
- JavaScript音频编辑
- python之路day3_python之路:day3
- https网站地图生成工具
- android+apk+不被杀毒软件,大多数APK应用都会被杀毒软件报毒吗?
- phase-portrait相轨迹
- 机械键盘到底茶轴好还是黑轴好呢?第一次用,需要注意什么?
- LINUX目錄配置|Directory-Configuration-In-Linux
- C#模拟银行转账系统
- Spring Cloud云架构 - SSO单点登录之OAuth2.0登录认证(1)
- volatile禁止重排序详解
- 倒计时|好礼知时节,Acala 糖果节参与热度持续升温!
- 雷达、定位、跟踪等信号处理邻域SCI期刊整理及推荐
热门文章
- 计算机科学与昆虫,基于视觉的昆虫物种识别算法研究
- 2021年涡阳四中高考成绩查询,振奋人心,全是省重点!高考成绩出来了,涡阳家长快来看看!...
- android 页面边框设置
- 技嘉H510M H主板安装gtx660折腾记录
- 高解析APNG(动画PNG). 2D. 3D APNG's的动态图
- Android中半圆形背景
- ENVI App Store
- 系统设计黄金法则:简单之美
- 华为云计算IE面试笔记-eBackup有哪几种备份组网方式,各备份组网方式主要的应用场景及备份流程?
- 外媒分析:为何说苹果一定没造车!