ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

搜索
EH技术汇-专业的职场技能充电站 妙哉!函数段子手趣味讲函数 Excel服务器-会Excel,做管理系统 效率神器,一键搞定繁琐工作
HR薪酬管理数字化实战 Excel 2021函数公式学习大典 Excel数据透视表实战秘技 打造核心竞争力的职场宝典
让更多数据处理,一键完成 数据工作者的案头书 免费直播课集锦 ExcelHome出品 - VBA代码宝免费下载
用ChatGPT与VBA一键搞定Excel WPS表格从入门到精通 Excel VBA经典代码实践指南
楼主: v、_小乖

我的学习笔记

[复制链接]

TA的精华主题

TA的得分主题

 楼主| 发表于 2011-5-15 16:32 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助

回复 9楼 hzhb14796 的帖子

基础扎实了,才能有更高的突破!

TA的精华主题

TA的得分主题

 楼主| 发表于 2011-5-24 16:33 | 显示全部楼层

14112-3 常用数学计算函数及其应用实例

                                                                                                                           讲师:方骥(chrisfang
1 公式中的数学运算:
(1)数学运算符:
加 +  ;
减 -  ;
乘 *  ;
除 /  ;
百分比 %  ;
乘幂 ^
数学计算式:=4×5+42÷6×5.2%-9.8
公式:=4*5+4^2/6*5.2%-9.8
(2)运算符的优先级
高           负号
             百分比
             乘幂               括号:( )
             乘/除     可以强制改变运算顺序
低          加/减
例1 公式:=4*5+4^2*2/-6*5.2%-9.8
运算顺序:=(4*5)+((4^2)*2/(-6)*(5.2%))-9.8
例2 数学计算式:=4×[5+42×2÷-6×(5.2%-9.8)]
公式=4*(5+4^(2*2)/-6*(5.2%-9.8))
2         常用的数学函数-1

Ⅰ 求和&汇总:
sum  sum(number1,[number2],…])
对指定为参数的所有数字相加。每个参数可以是区域、单元格引用、数组、常量、公式或另一个函数的结果。各参数之间必须用逗号加以分隔。(07版支持参数个数255个,03版支持30个)

sumif  sumif(range,criteria,[sum_range])
对区域中符合指定条件的值求和。
Sum_range参数与range参数的大小和形状可以不同;可以在criteria参数中使用通配符(包括问号(?)和星号(*)。问号匹配任意单个字符,星号匹配任意一串字符,如果要查找实际的问号和星号,请在该字符前键入波形符(~)。(任何文本条件或任何含有逻辑或数学符号的条件必须使用双引号(”)括起来,如果条件为数字,则无需使用双引号。)

sumproduct  sumprodct(array1,[array2],[array3],…])
在给定的几组数组中,将数组间相对应的元素相乘,并返回乘积之和。
•数组参数必须具有相同的维数,否则,函数sumproduct将返回错误值#value!。
•函数sumproduct将非数值型的数组元素作为0处理。

subtotal  subtotal(function_num,ref1,[ref2],…])
返回列表或数据库中的分类汇总。
•Function_num 参数为1到11(包含隐藏值)或101到111(忽略隐藏值)之间的数字,用于指定使用何种函数在列表中进行分列汇总计算。

•Subtotal函数忽略任何不包括在筛选结果中的行。此函数适用于数据列或垂直区域,不适用于数据行或水平区域。
Ⅱ 舍入&取整:
int  int(number)
将数字向下舍入到最接近的整数。(依照给定数的小数部分的值,将其四舍五入到最接近的整数)=int(-2.1)返回-3

trunc  trunk(number,[num_digits])
将数字的小数部分截去,返回整数。(直接去除数字的小数部分)=trunk(-2.1)返回-2

roundup  roundup(number,num_digits)
远离零值,向上舍入数字。(沿绝对值增大的方向进行舍入)
•函数roundup和函数round功能相似,不同之处在于函数roundup总是向上舍入数字。
•如果num_digits大于0,则向上舍入到指定的小数位;
•如果num_digits等于0,则向上舍入到最接近的整数;
•如果num_digits小于0,则在小数点左侧向上进行舍入。

rounddown  rounddown(number,num_digits)
靠近零值,向下(绝对值减小的方向)舍入数字。
•函数rounddown和函数round功能相似,不同之处在于函数rounddown总是向下舍入数字。
•如果num_digits大于0,则向下舍入到指定的小数位;
•如果num_digits等于0,则向下舍入到最接近的整数;
•如果num_digits小于0,则在小数点左侧向下进行舍入。

Ceiling  ceiling(number,significance)
将参数number向上舍入(沿绝对值增大的方向)为最接近的signifcance的倍数。
•如果参数为非数值型,ceiling返回错误值#value!;
•无论数字符号如何,都按远离0的方向向下舍入。如果数字已经为significance的倍数,则不进行舍入;
•如果number和significance都为负,则对值按远离0的方向进行向下舍入;
•如果number为负,significance为正,则对值按朝向0的方向进行向上舍入。

floor  floor(number,significance)
将number向下舍入(向零的方向)到最接近的significance的倍数。
•如果任一参数为非数值型,则floor将返回错误值#value!;
•如果number的符号为正,significance的符号为负,则floor将返回错误值#num!;
•如果number的符号为正,函数值会向靠近零的方向舍入。如果number的符号为负,函数值会向远离零的方向舍入。如果number恰好是significance的整数倍,则不进行舍入。

even  even(number)
返回沿绝对值增大方向取整后最接近的偶数。
•如果number为非数值参数,则even返回错误值#value!;
•不论number的正负号如何,函数都向远离零的方向向上舍入,如果number恰好是偶数,则无需进行任何舍入处理。

odd  odd(number)
返回对指定数值进行向上舍入后的奇数。
•如果number为非数值参数,函数odd将返回错误值#value!;
•无论数字符号正负如何,都按远离0的方向向上舍入。如果number恰好是奇数,则不须进行任何舍入处理。

round  round(number,num_digits)
可将某个数字四舍五入为指定的位数。
•如果num_digits大于0,则将数字四舍五入到指定的小数位;
•如果num_digits等于0,则将数字四舍五入到最接近的整数;
•如果num_digits小于0,则在小数点左侧进行四舍五入;
•若要始终进行向上舍入(远离0),请使用roundup函数;
•若要将某个数字四舍五入为指定的倍数(例如,四舍五入为最接近的0.5倍),请使用mround函数。
3  常用的数学函数-2
Ⅰ 随机函数:
rand  rand()
返回大于等于0及小于1的均匀分布随机实数,每次计算工作表时都将返回一个新的随机实数。
•若要生成a与b之间的随机实数,使用:=rand()*(b-a)+a
•如果使用rand生成一随机数,并且使之不随单元格计算而改变,可以在编辑栏中输入“=rand()”,保持编辑状态,然后按F9,将公式永久性地改为随机数。

Randbetween  randbetween(bottom,top)
返回位于指定的两个数之间的一个随机整数。每次甲酸工作表时都将返回一个新的随机整数。
Ⅱ 公倍&公约:
gcd  gcd(number1,[number2],…)
最大公约数:返回两个或多个正数的最大公约数,最大公约数是分别将number1和number2除尽的最大正数。
•如果参数为非数值型,则返回错误值#VLAUE!;
•如果参数小于零,则返回错误值#NUM!;
•任何数都能被1整除;
•素数只能被其本身和1整除;
•如果gcd的参数>=2^53,则gcd返回错误值#NUM!。

Lcm  lcm(number1,[number2],…)
最小公倍数:返回整数的最小公倍数。最小公倍数是所有整数参数number1,number2等等的最小的正整数倍数。用函数lcm可以将分母不同的分数相加。
•如果参数为非数值型,则返回错误值#VALUE!;
•如果有任何参数小于0,则返回错误值#NUM!;
•如果lcm(a,b)>=2^53,则lcm返回错误值#NUM!。
Ⅲ 除法相关:
mod  mod(number,divisor)
返回两数相除的余数。结果的正负号与除数相同。
•如果divisor为零,函数mod返回错误值#DIV/0!;
•函数mod可以借用函数int来表示:=mod(n,d)=n-d*int(n/d)

Quotient  quotient(numerator,denominator)
返回商的整数部分,该函数可用于舍掉商的小数部分。(如果任一参数为非数值型,该函数返回错误值#VALUE!)
概率计算:fact  fact(number)
返回某数的阶乘,一个数的阶乘等于1*2*3*…*该数。

permut  permut(number,number_chosen)
返回从给定数目的对象集合中选取的若干对象的排列数。排列为有内部顺序的对象或事件的任意集合或子集。排列与组合不同,组合的内部顺序无意义。此函数可用于彩票抽奖的概率计算。
•两个参数将被截尾取整;
•如果number或number_chosen为非数值型,则返回错误值#VALUE!;
&#8226;如果number<=0或number_chosen<0,则返回错误值#NUM!;
&#8226;如果number<number_chosen,函数permut返回错误值#NUM!;
&#8226;排列数的计算公式:  


combin  combin(number,number_chosen)
计算从给定数目的对象集合中提取瑞干对象的组合数。利用函数combin可以确定一组对象所有可能的组合数。
&#8226;数字参数截尾取整;
&#8226;如果参数为非数值型,则返回错误值#VALUE!;
&#8226;如果number<0、number_chosen<0或number_shosen,则combin返回错误值#NUM!;
&#8226;不论其内部顺序,对象组合是对象整体的任意集合或子集。组合与排列不同,排列数与对象内部顺序有关;
&#8226;组合数计算公式:(式中number=n,number_chosen=k)
     式中:
Ⅳ 符号相关:
abs  返回数字的绝对值。绝对值没有符号。
Sign  返回数字的符号。当前数字为正数时返回1,为零时返回0,为负数时返回-1。
Ⅴ 对数计算:
log  按所指定的底数,返回一个数的对数。(当忽略第二参数时以10为底)
log10  返回以10为底的对数。
ln  返回一个数的自然对数。自然对数以常数项e(2.71828182845904)为底。(注:ln函数是exp函数的反函数)
4  常用的数学函数-3
Ⅰ 三角函数:
degrees  将弧度转换为角度。(=弧度/2∏*360)
radians  将角度转换为弧度。(=角度/360*2∏)
sin  返回给定角度的正弦值。
cos  返回给定角度的余弦值。
tan  返回给定角度的正切值。
asin  返回参数的反正弦值。反正弦值为一个角度,该角度的正弦值即等于此函数的number参数。返回的角度值将以弧度表示,范围为-pi/2到pi/2。
acos  返回数字的反余弦值。反余弦值是角度,它的余弦值为数字。返回的角度值以弧度表示,范围是0到pi。
atan  返回反正切值。反正切值为角度,其正切值即等于number参数值。返回的角度值以弧度表示,范围为-pi/2到pi/2。
以上三角函数均以弧度值为计算参数
(注:如果sin/cos/tan函数参数的单位为度,则可以乘以pi()/180或使用randians函数将其转换为弧度;若要用角度表示asin/acos/atan,请将结果再乘180/pi()或使用degrees函数。)
Ⅱ 矩阵相关:
mmult  返回两个数组的矩阵乘积。结果矩阵的行数与array1的行数相同,矩阵的列数与array2的列数相同。
&#8226;array1的列数必须与array2的行数相同,而且两个数组中都只能包含数值;
&#8226;array1和array2可以是单元格区域、数组常量或引用;
&#8226;当任意单元格为空或包含文字、array1的列数与array2的行数不相等时,mmult返回错误值#VALUE!;
&#8226;两个数组b和c的矩阵乘积a为:       其中i为行数,j为列数;
&#8226;对于返回结果为数组的公式,必须以数组公式的形式输入。

Minverse  返回数组中存储的矩阵的逆矩阵。
&#8226;array可以是单元格区域,数组常量,或单元格区域和数组常量的名称;
&#8226;如果数组中有空白单元格或包含文字的单元格,则函数minverse返回错误值#VALUE!;
&#8226;如果数组的行数和列数不相等,则函数minverse也返回错误值#VALUE!;
&#8226;对于返回结果为数组的公式,必须以数组公式的形式输入;
&#8226;与求行列式的值一样,求解矩阵的逆常被用于求解多远立方程组。矩阵和它的逆矩阵相乘为单位矩阵:对角线的值为1,其他值为0;
&#8226;函数minverse的精确度可达16位有效数字,因此运算结果因位数的取舍可能会导致小的误差;
&#8226;对于一些不能求逆的矩阵,函数mincerse将返回错误值#NUM!。不能求逆的矩阵的行列式值为零。

TA的精华主题

TA的得分主题

 楼主| 发表于 2011-5-29 15:56 | 显示全部楼层

14112-4 常用时间函数及其应用

讲师:冻豆腐
1. TODAY()
返回今天的日期。随着时间的变化会自动更新。如果只是想输入今天的日期,而又不想每天更新,建议还是用ctrl+;
2. month()
返回参数的月份,参数应为日期格式。如果为数字格式,则会以1900-1-1为基数累加相应的天数作为引用。不能为负值,不能为文本。如果参数为空单元格引用,则返回1。
3. YEAR()
返回某日期对应的年份,在1999-9999之间.要求参数为日期格式,如果为数字,则会1900-1-1为基数累加相应的天数作为引用。不能为负值,不能为文本。如果参数为空单元格引用则返回1900。
4. WEEKDAY
WEEKDAY(serial_number,return_type)
返回某日期为星期几。默认情况下,其值为 1(星期天)到 7(星期六)之间的整数。根据第二个参数的不同,返回不同的数字。
未命名.jpg
第二个参数选择2,比较符合我们的日常习惯。
5. DAY
DATE(Year,Month,D)
&#8226;如果 year 介于 0(零)到 1899 之间(包含这两个值),则 Excel 会将该值与 1900 相加来计算年份。例如,DATE(108,1,2) 将返回 2008 年 1 月 2 日 (1900+108)。
&#8226;如果 year 介于 1900 到 9999 之间(包含这两个值),则 Excel 将使用该数值作为年份。例如,DATE(2008,1,2) 将返回 2008 年 1 月 2 日。
&#8226;如果 year 小于 0 或大于等于 10000,则 Excel 将返回错误值 #NUM!。
&#8226;如果 month 大于 12,则 month 从指定年份的一月份开始累加该月份数。例如,DATE(2008,14,2) 返回表示 2009 年 2 月 2 日的序列号。
&#8226;如果 month 小于 1,month 则从指定年份的一月份开始递减该月份数,然后再加上 1 个月。例如,DATE(2008,-3,2) 返回表示 2007 年 9 月 2 日的序列号。
&#8226;如果 day 大于指定月份的天数,则 day 从指定月份的第一天开始累加该天数。例如,DATE(2008,1,35) 返回表示 2008 年 2 月 4 日的序列号。
&#8226;如果 day 小于 1,则 day 从指定月份的第一天开始递减该天数,然后再加上 1 天。例如,DATE(2008,1,-15) 返回表示 2007 年 12 月 16 日的序列号。
6. DATEDIF()   
DATEDIF(start_date,end_date,unit)
Start_date 为一个日期,它代表时间段内的第一个日期或起始日期。
End_date 为一个日期,它代表时间段内的最后一个日期或结束日期。
Unit 为所需信息的返回类型。
"Y" 时间段中的整年数。
"M" 时间段中的整月数。
"D" 时间段中的天数。
"MD" start_date 与 end_date 日期中天数的差。忽略日期中的月和年。
"YM" start_date 与 end_date 日期中月数的差。忽略日期中的日和年。
"YD" start_date 与 end_date 日期中天数的差。忽略日期中的年
在使用的过程中注意开始日期和结束日期的位置,之前曾经因为将两个日期位置颠倒,导致出现错误.如果是查找两个日期之间的天数,也可以将两个日期直接想减.
7. NOW()
返回当前的日期和时间。会随着系统日期的更改和更新。
8. TIME
TIME(Hour,Minute,Second)   
与date函数类似。返回时间
Hour  必需输入。0(零)到 32767 之间的数值,代表小时。任何大于 23 的数值将除以 24,其余数将视为小时。例如,TIME(27,0,0) = TIME(3,0,0) = .125 或 3:00 AM。
Minute  必需输入。0 到 32767 之间的数值,代表分钟。任何大于 59 的数值将被转换为小时和分钟。例如,TIME(0,750,0) = TIME(12,30,0) = .520833 或 12:30 PM。
Second   必需。0 到 32767 之间的数值,代表秒。任何大于 59 的数值将被转换为小时、分钟和秒。例如,TIME(0,0,2000) = TIME(0,33,22) = .023148 或 12:33:20 AM。
9. HOUR()
返回时间格式的小时数。例如HOUR("11:40"),结果为11
10. MINUTE()
返回时间格式的分钟。MINUTE("11:40"),结果为40。


注:1)在进行时间的统计运算时,超过24小时的时间会被软件自动减掉24小时。设置自定义单元格格式为[h]可获得正确统计结果。
    2)在两时间相减出现负值时(如跨夜工时的计算),可通过IF函数或MOD函数得到正确结果。使用MOD函数,将24小时作为1取模,可以快速计算出正确工时。

TA的精华主题

TA的得分主题

 楼主| 发表于 2011-6-21 14:48 | 显示全部楼层

14209-1函数与公式常用查找引用函数基础及应用实例

讲师:ychexcel  


一、本课时内容
(一)vlookup函数  
&#8226;
功能:从数据首列查找指定的值,并返回同行指定列的内容。
&#8226; 语法:Vlookup(lookup_value,table_array,col_index_num,[range_lookup])
          lookup_value 指定查找的值。
          table_array 查找区域。
          col_index_num 查找返回的列序号。(列序号是指查找区域中的第几列)
          range_lookup 查找方式 。(即TRUE或FALSE,它指明函数VLOOKUP返回时是精确匹配还是近似匹配)
(1)精确查找,精确查找时查找区域左侧第一列可以是乱序排列。使用精确查找时若当左侧第一列不存在要查找的值的时候将返回错误值。
(2)模糊查找,模糊查找时查找区域左侧第一列要求是升序排序。使用模糊查找时若找不到查找值时结果将返回小于等于查找值的一个最大值,若查找值小于查找区域最左列则返回一个错误值。

注:精确查找如果找不到值,会返回错误值#N/A。
模糊查找首列需要升序排列,可返回比查找数小的最大值或者返回等于查找数的值。

&#8226; 收获:动态返回VLOOKUP函数第三参数
(1)column:column(reference)返回引用单元格的列标
&#8226; 语法:column(reference)。
&#8226; 参数:Reference为需要得到其列标的单元格或单元格区域。如果省略reference,则假定函数column是对所在单元格的引用。如果reference为一个单元格区域,并且函数column作为水平数组输入,则column函数将reference中的列标以水平数组的形式返回。
例:=COLUMN(B1) 返回2。

(2)row:row(reference)返回引用单元格的行号
vlookup函数第三参数col_index_num可以用column()函数实现动态效果。


&#8226; 多条件查找
加辅助列:将源数据要查找的单元格利用&"|"&组合成新的单元格,利用此列查找数据。

&#8226; 代替IF函数
利用模糊查找可以返回小于查找数的最大值,代替IF函数,其实也可以用lookup函数代替IF函数的功能。

(二)match函数
&#8226;功能:在指定方式下查找指定值并返回其在目标区域的位置。(如果需要找出匹配元素的位置而不是匹配元素本身,则应该使用MATCH函数。)
&#8226;语法:match(lookup_value,lookup_array,match_type)
          lookup_value是在数据表中查找的数值。
          lookup_array要查找的数值的单元格区域。
          match_type  
               参数为1时match查找小于或等于查找值的最大数值,查找区域应按升序排列。
               参数为0时match查找等于查找值的第一个数值,查找区域可乱序排列。
               参数为-1时match查找大于或等于查找值的最小数值,查找区域应按降序排列。
注:当match函数只有第一参数和第二参数时,则第三参数默认设为1。如果match_type为0且lookup_value为文本,lookup_value可以包含通配符("*"和"?")。星号可以匹配任何字符,问号可以匹配单个字符。

(三)index函数
&#8226;
功能:取行列的交叉点
&#8226; 语法:
index(array,row_num,column_num)返回数组中指定的单元格或单元格数组的数值。
index(reference,row_num,column_num,area_num)返回引用中指定单元格或单元格区域的引用。
     Array为单元格区域或数组常数
     Row_num为数组中某行的行序号,函数从该行返回数值。如果省略row_num,则必须有 column_num;Column_num是数组中某列的列序号,函数从该列返回数值。如果省略column_num,则必须有row_num。
     Reference是对一个或多个单元格区域的引用,如果为引用输入一个不连续的选定区域,必须用括号括起来。
     Area_num是选择引用中的一个区域,并返回该区域中row_num和column_num的交叉区域。
在使用index()函数时,第二、三参数一般情况与match()函数配合使用,以实现动态查找引用的目的。

二、vlookup函数用法的补充
1、查找数据与原数据格式类型匹配
文本与数值格式查找时注意查找数据与原数据格式类型要一致,都为文本或都为数值,否则会出现错误。
2、vlookup函数支持通配符查找
利用通配符(*  ?)查找都属于模糊查找,返回比查找数小的最大值。
3、查找时的纠错处理
2003版可以用if和iserror或者if和isna函数纠错,如=if(iserror(公式),"",公式);在2007版本中可以直接使用iferror函数,如iferror(公式,"")。
4、vlookup逆向查询
逆向查询一般用index+match组合或者vlookup+if组合,如果对目标数据进行特殊的转换,就能够使用vlookup实现此类查询。

分享下我发现的新大陆:  查找引用方法全集公式说明由BIN_YANG168整理  wangjguo44补充简介

TA的精华主题

TA的得分主题

 楼主| 发表于 2011-7-5 14:43 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助

14209-2 常用文本函数及其应用实例

讲师:kkitt

一、 什么是文本?
&#8226;
在Excel中文本是指除数值、日期时间、逻辑值和错误值以外的所有值。
&#8226; 一个文本值是由n(0<=n<=32767)个字符组成的,因此文本也叫字符串。
&#8226; 那字符又是什么?--计算机可识别的单个符号。字符分单字节字符和双字节字符。
&#8226; 以下的例子都是文本 “ABCD”、“123”、“”、“一二三四”等等。

二、 Excel中的文本函数包括哪些?
在Excel2003中有34个标准的文本函数,涉及文本的函数不计其数。
本次课程中所涉及的文本函数

Len()/lenb()、
    Len     返回文本字符串中的字符数。
    Lenb     返回文本字符串中用于代表字符的字节数。
函数返回值(结果):数值(整数)
语法:len(text)   lenb(text)
扩展:Text参数的特性
文本值:按文本本身进行计算
数值:转成数字型文本计算
日期、时间:按日期、时间的数值转成文本计算
逻辑值:转成“true”、“false”进行计算
如何查看这些值的转换结果
    =A1&””

mid()/midb()、
     mid     返回文本字符串中从指定位置开始的特定数目的字符,该数目由用户指定。
     Midb      根据您指定的字节数,返回文本字符串中从指定位置开始的特定数目的字符。
函数返回值(结果):文本
语法:mid(text,start_num_chars)
           Midb(text,start_num_bytes)
           Text  是包含要提取数字的文本字符串
           Start_num  是文本中要提取的第一个字符的位置,文本中第一个字符的start_num为1,以此类推。
           Num_chars  指定希望mid从文本中返回字符的个数。
           Num_bytes  指定希望midb从文本中返回字符的个数(按字节)。

Left()/leftb()/right()/rightb()、
      Left     基于所指定的字符数返回文本字符串中的第一个或前几个字符。
      Leftb      基于所指定的字节数返回文本字符串中的第一个或多个字节的字符。
函数返回值(结果):文本
语法:left(text,num_chars)
           Leftb(text,num_bytes)
           Text  是包含要提取字符的文本字符串,
           Num_chars  指定希望left提取的字符数,
           Num_bytes  指定希望leftb提取的字节数。
扩展:number型参数的特性
如果是数字型文本,函数内部会将它转换成数值;
如果数值不是整数,先取整再计算。

Find()/findb()search()/search()、
      Find()/findb()      在一个文本值中查找另一个文本值(区分大小写)
      Search()/search()       在一个文本值中查找另一个文本值(不区分大小写)
函数返回值(结果):数值(整数)
语法:find(find_text,within_text,start_num)
           Findb(find_text,within_text,stars_num)
           Search(find_text,within_text,start_num)
           Search(find_text,within_text,start_num_

Substitute()
在文本字符串中用new_text替代old_text
函数返回值(结果):文本
语法:substitute(text,old_text,new_text,instance_num)

replace()/replaceb()、
     replace       使用其他文本字符串中并根据所指定的字符数替换某文本字符串中的部分文本。
     Replaceb        使用其他文本字符串中并根据所指定的字符数替换某文本字符串中的部分文本。此函数专为双字节字符使用。
函数返回值(结果):文本
语法:replace(old_text,start_num,num_chars,new_text)

Trim()/clean()、
     Trim()      除了单词之间的单个空格外,清楚文本中所有的空格。
函数返回值(结果):文本
语法:trim(text)
      Clean()       删除文本中不能打印的字符。
函数返回值(结果):文本
语法:clean(text)

rept()
按照给定的次数重复显示文本。可以通过函数rept来不断地重复显示某一文本字符串,对单元格进行填充。
函数返回值(结果):文本
语法:rept(text,number_times)
           Text  需要重复显示的文本
           Number_times  是指定文本重复次数的大于等于0的数。

TA的精华主题

TA的得分主题

 楼主| 发表于 2011-7-11 09:37 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助

14209-4 数据库函数

讲师:kkitt

数据库函数是做什么的?
&#8226;
Microsoft Excel中包含了一些工作表函数,用于对存储在列表或数据库中的数据进行分析,这些函数统称为数据库函数。
&#8226; 每个函数均有三个参数:database、field和criteria。这些参数指向函数所使用的工作表区域。
&#8226; 这里所说的数据库和一般定义上的数据库不是一个概念,这里所说的数据库知识一个工作表区域,它包含一组相关数据,其中包含相关信息的行为记录,而包含数据的列为字段。单元格区域的第一行包含着每一列的标志项。
数据库函数包括哪些?
在Excel2003中只有12个标准的数据库函数,包括:
====================================================================
DCOUNT  计算数据库中包含数字的单元格个数
语法DCOUNT(database,field,criteria)
参数
:
Database  构成列表或数据库的单元格区域。
a、必须是一个单元格区域,不支持内存数组,且它包含一组相关数据,其中包含相关信息的行为记录,而包含数据的列为字段。单元格区域的第一行包含着每一列的标志项。
b、这个参数可以用交叉区域,但不能用合并区域。
Field  指定函数所使用的数据列。
a、该参数为可选项,函数DCOUNT返回数据库中满足条件criteria的所有记录数。该特性是DCOUNT和DCOUNTA特有。
b、可以是代表列表中数据列位置的数字:1表示第一列,2表示第二列。数字为小数时,按其整数部分的值运算;该数字大于等于1,小于等于databaser的列数。
C 、该参数可以是文本,但必须是纯文本方式。且必须和单元格区域的第一行中的标志项一致,如“商标”或“采购盒数”
Criteria  为一组包含给定条件的单元格区域。
a、可以是该参数指定任意区域,但它至少包含一个列标志和列标志下方用于设定条件的单元格。在一般情况下,虽然条件区域可以在工作表的任意位置,但不要将条件区域置于数据清单的下方。如果使用“数据”菜单中的“记录单”命令在数据清单中添加信息,新的信息将被添加在数据清单下方的第一行上。如果数据清单下方的行非空,Microsoft Excel将无法添加新的信息。
b、如果列标志下方用于设定条件的单元格为空时,则该条件将被忽略。
c 、对于文本的条件设定,不区分大小写。
d、列标志下方用于设定条件的单元格内可以用”*”、”?”及比较字符设定条件。
e、可以将公式作为筛选条件,但要将列标志置空,或者使用database中非列标志的标记。
f、当条件区域为多行多列时,一般是一行内是与的关系,行与行之间是或的关系。

DCOUNTA  计算数据库中费空单元格的个数
语法DCOUNTA(database,field,criteria)

DGET
从数据库中提取满足制定条件的单个记录
语法DGET(database,field,criteria)
如果没有满足条件的记录,则函数DGET返回错误值#VALUE!
如果有多个记录满足条件,则函数DGET返回错误值#NUM!
使用=IF()函数使之在出现错误时得到提示信息
=IF(ISERROR(a1),CHOOSE(ERROE.TYPE(a1)/3,”没有这个结果”,”找到多个结果”),”找到一个结果”)

DMAX  返回选定数据库项中的最大值
语法DMAX(database,field,criteria)

DMIN
返回选定数据库项中的最小值
语法DMIX(database,field,criteria)

DPRODUCT
  将数据库中满足条件的记录的特定字段中的数值相乘
语法DPRODUCT(database,field,criteria)

DSTDEV
基于选定数据库项中的单个样本估算标准偏差
语法DSTDEV(database,field,criteria)

DSTDEVP  基于选定数据库项中的样本总体计算标准偏差
语法DSTDEVP(database,field,criteria)

DSUM
,  对数据库中满足条件的记录的字段列中的数字求和
语法DSUM(database,field,criteria)

DVAR
  基于选定的数据库项的单个样本估算方差
语法DVAR(database,field,criteria)

DVARP
  基于选定的数据库项的样本总体估算方差
语法DVARP(database,field,criteria)

DAVERAGE
返回选定数据库项的平均值
语法DAVERAGE(database,field,criteria)
====================================================================
参数
      Database  必需。构成列表或书库的单元格区域。数据库是包含一组相关数据的列表,其中包含相关信息的行为记录,而包含数据的列为字段。列表的第一行包含每一列的标签。
注:(1)建议database中的标志项为文本
       (2)原则:database中的标志项要和criteria中标志项内容和格式一致,field参数一定
是文本,且和database的标志项格式一致。
当你更改标志项和格式时,公式是不会自动重
算的)
      Field  必需。指定函数所使用的列。输入两端带引号的列标签,如“使用年数”或“产量”;或是代表列在列表中的位置的数字(不带引号):1表示第一列,2表示第二列,以此类推。
      Criteria  必需。包含所指定条件的单元格区域。您可以为参数criteria指定任何区域,只要此区域包含至少一个列标签,并且列标签下方包含至少一个指定列条件的单元格。
====================================================================
注解
&#8226; 可以为参数critria指定任何区域,只要此区域包含至少一列列标签,并且列标签下方包含至少一个用于指定条件的单元格。
   
         例如,如果区域G1:G2中包含列标签Income,在G2中包含数量¥10,000,可将此区域命名为Matchincome,那么在数据库函数中可使用该名称作为条件参数criteria。

&#8226; 虽然条件区域可以位于工作表的任意位置,但不要将条件区域置于列表的下方。如果向列表中添加更多信息,新的信息将会添加在下方的第一行上。如果列表下方的行不是空的,Microsoft Excel将无法添加新的信息。
&#8226; 确定条件区域没有与列表相重叠。
&#8226; 若要对数据库中的一个完整列执行操作,请在条件区域中的列标签下方加入一个空行。
====================================================================
要点
&#8226; 由于在单元格中键入文本或值时等号用来表示一个公式,因此Microsoft Excel会评估您键入的内容;不过,这可能会产生意外的筛选结果。为了表示文本或值的相等比较运算符,应在条件区域的相应单元格中键入作为字符串表达的条件:
      =”=条目”
      其中条目是要查找的文本或值。例如:
1.jpg
&#8226; Excel在筛选文本数据时不区分大小写。但是,您可以使用公式来执行区分大小写的搜索。

以下各节提供了复杂条件的示例。
一列中有多个条件
布尔逻辑
:(销售人员=”李小明”OR销售人员=”郑建杰”)
要查找满足“一列中有多个条件”的行,请直接在条件区域的单独行中一次键入条件。
在下面的数据区域(A6:C10)中,条件区域(B1:B3)显示“销售人员”列(A8:C10)中包含“李小明”或“郑建杰”的行。
2.jpg
多列中有多个条件,其中所有条件都必须为真
布尔逻辑
:(类型=”农产品”AND销售额>1000)
要查找满足“多列中有多个条件”的行,请在条件区域的同一行键入所有条件。
在下面的数据区域(A6:A10)中,条件区域(A1:C2)显示“类型”列中包含“农产品”并且“销售额”列(A9:C10)中值大于¥1000的所有行。
3.jpg
多列中有多个条件,其中所有条件都必须为真
布尔逻辑
:(类型=”农产品”OR销售人员=”李小明”)
要查找满足“多列中有多个条件,其中所有条件都必须为真”的行,请在条件区域的不同行中键入条件。
在下面的数据区域(A6:C10)中,条件区域(A1:B3)显示“类型”列中包含“农产品”或“销售人员”列(A8:C10)中包含“李小明”的所有行。
4.jpg
多个条件集,其中每个集包括用于多个列的条件
布尔逻辑
:(销售人员=”李小明”AND销售额>3000)OR(销售人员=”郑建杰”AND销售额>1500)
要查找满足“多个条件集,其中每个集包括用于多个列的条件”的行,请在单独的行中键入每个条件集。
在下面的数据区域(A6:C10)中,条件区域(B1:C3)显示“销售人员”列中包含“李小明”并且“销售额”列中值大于¥3,000的行,或者显示“销售人员”列中包含“郑建杰”并且“销售额”列(A9:C10)中值大于¥1,500的行。
5.jpg
多个条件集,其中每个集包括用于一个列的条件
布尔逻辑
:(销售额>6000AND销售额<6500)OR(销售额<500)
要查找满足“多个条件集,其中每个集包括用于一个列的条件”的行,请在多个列中包括同一个列标题。
在下面的数据区域中(A6:C10)中,条件区域(C1:D3)显示“销售额”列(A8:C10)中值在6,000和6,500之间以及值小于500的行。
6.jpg
查找共享某些字符而非其他字符的文本值的条件
要查找共享某些字符而非其他字符的文本值,请执行下面一项或多项操作:
键入一个或多个不带等号(=)的字符,以查找列中文本值以这些字符开头的行。例如,如果键入文本“李”作为条件,则EXCEL将找到“李小明”、“李威”和“李新”。
使用通配符。
     可以使用下面的通配符作为比较条件。
7.jpg
在以下数据区域(A6:C10)中,条件区域(A1:B3)显示“类型”列中以“肉”开头的行货“销售人员”列(A7:C9)中第二个字符为“建”的行。
8.jpg
将公式结果用作条件
可以将公式的计算结果作为条件使用。记住下列要点:公式必须计算为TRUE或FALSE。
因为您正在使用公式,请像您平常那样输入公式,而不要以下列方式键入表达式:
     ==”条目”
不要将列标签用作条件标签;请将条件标签保留为空,或者使用区域中并非列标签的标签(在以下示例中,是“计算的平均值”和“精确匹配”)
     如果在公式中使用列标签而不是相对单元格引用或区域名称,EXCEL会在包含条件的单元格中显示错误值#NAME?或#VALUE!。您可以忽略错误,因为它不影响区域的筛选。
用作条件的公式必须使用相对单元格引用来引用第一行中相应的单元格(在下面的示例中,是C7和A7)。
公式中的所有其他引用必须是绝对单元格引用
下列各子部分提供将公式结果用作条件的具体示例。
筛选大于数据区域中所有制的平均值的值
在以下数据区域(A6:D10)中,条件区域(D1:D2)显示“销售额”列(C7:C10)中值大于所有“销售额”值的平均值的行。在公式中,“C7”引用数据区域(7)的第一行的筛选列(C)。
9.jpg
使用区分大小写的搜索筛选文本
在数据区域(A6:D10)中,通过使用EXACT函数执行区分大小写的搜索,条件区域(D1:D2)显示“类型”列(A10:C10)中包含“Produce”的行。在公式中,“A7”引用数据区域(7)中首行的筛选列(A)。
10.jpg

数据库函数与高级筛选
数据库函数与高级筛选非常相似,前者是对满足条件的记录进行统计分析;后者是直接筛选出满足条件的记录。

分享chrisfang老师总结的一个帖子,数据库函数条件区域设置详解
http://club.excelhome.net/viewthread.php?tid=598620

好了,小乖的总结就到这里吧,谢谢老师的精彩讲解,也感谢童鞋们一路来的帮助和支持!

TA的精华主题

TA的得分主题

发表于 2011-7-29 14:13 | 显示全部楼层

TA的精华主题

TA的得分主题

发表于 2011-8-28 17:19 | 显示全部楼层
正在学习当中,你很努力!!!大家一起加油!!

TA的精华主题

TA的得分主题

发表于 2011-9-3 15:06 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
学习了,谢谢

TA的精华主题

TA的得分主题

发表于 2011-9-4 13:51 | 显示全部楼层
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

手机版|关于我们|联系我们|ExcelHome

GMT+8, 2024-11-21 20:14 , Processed in 0.039339 second(s), 8 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

沪公网安备 31011702000001号 沪ICP备11019229号-2

本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任!     本站特聘法律顾问:李志群律师

快速回复 返回顶部 返回列表