Excel 返回已注册过的代码源的注册号

REGISTER.ID函数还可用于返回已注册过的代码源的注册号,此时函数语法为:=REGISTER.ID(file_text,resource, type_text),各参数的含义介绍如下。

※ file_text:为文本,用于指定Microsoft Excel for the Macintosh中包含代码源的文件名。

※ resource:为文本,用于指定Microsoft Excel for the Macintosh中代码源内的函数名,还可以使用源ID号,序数值或源ID号不能为文本形式。

※ type_text:为文本,用于指定返回值的数据类型以及DLL的所有参数的数据类型,Type_text的首字母指定返回值,如果函数或代码源已经注册过,则可省略该参数。

下面举例说明函数的使用方法。

例1:从32位Microsoft Windows中注册函数GetTickCount,并返回注册号

具体操作为:在单元格中输入公式“=REGISTER. ID(“Kernel32”, “GetTickCount”, “J!”)”即可。

小提示 如果函数GetTickCount已经在其他工作表中用上面的公式注册过,则可直接输入公式:= REGISTER.ID(“Kernel32”, “GetTickCount”),即可返回GetTickCount函数的注册号。

例2:从16位Microsoft Windows中注册GetTickCount函数,并返回注册号

具体操作为:在单元格中输入公式“=REGISTER. ID(“User”,”GetTickCount”, “J!”)”即可。

小提示 如果函数GetTickCount已经在其他工作表中用上面的公式注册过,可在单元格中直接输入公式即可:=REGISTER.ID(“User”,”GetTickCount”)。

Excel 返回已注册过的指定动态链接库:REGISTER.ID函数

REGISTER.ID函数可用于返回已注册过的指定动态链接库(DLL)。如果DLL还未进行注册,该函数对DLL或代码源进行注册,然后返回注册号。

REGISTER.ID函数的语法为:=REGISTER.ID(module_text,procedure,type_text),各参数的语法介绍如下。

※ module_text:为文本,用于指定Microsoft Excel for Windows中的DLL名称,该DLL包含函数。

※ procedure:为文本,用于指定Microsoft Excel for Windows中DLL内的函数名,还可以使用函数的序数值,该值来自模块定义文件(.DEF)中的EXPORTS语句,但序数值或者源ID号不能为文本形式。

※ type_text:为文本,用于指定返回值的数据类型以及DLL的所有参数的数据类型,Type_text的首字母指定返回值,如果函数或代码源已经注册过,则可省略该参数。

使用CALL函数

CALL函数属于外部函数,外部函数的功能是从Excel以外的程序中提取数据,或进行欧洲货币的换算。

CALL函数可用于调用Windows动态链接库或代码源,该函数分为语法1、语法2a和语法2b这3种用法。下面将分别介绍。

语法1

CALL函数语法1必须与REGISTER函数配合使用,CALL函数的语法为:= CALL(register_id,argument1, …),各参数的语法介绍如下。

※ 参数register_id:为以前执行REGISTER函数或REGISTER.ID函数返回的值。

※ 参数argument1:为要传递给过程的参数。

假设注册32位Windows中的GetTickCount函数,并以毫秒为单位返回Windows的运行时间,具体操作如下。

01 在单元格中输入公式=REGISTER(“Kernel32″,”GetTickCount”,”J”)。

02 假设REGISTER函数在单元格A5中,在宏注册GetTickCount函数之后,可用CALL函数返回已经运行的毫秒数即可,函数公式为:=CALL(A5)。

语法2a

在Microsoft Excel for Windows中使用CALL函数,即语法2a,函数公式为:= CALL(module_text,procedure, type_text,argument1, …),各参数的含义介绍如下。

※ module_text:带引号的文本,用于指定动态链接库(DLL)的名称,该链接库包含Windows中的过程。

※ procedure:用于指定Windows的DLL中的函数名称的文本,还可以使用由模块定义文件(.DEF)中的EXPORTS语句为函数提供的顺序值。

※ type_text:指定返回值的数据类型以及DLL或代码源的所有参数的数据类型的文本,Type_text的第一个字母指定返回值。

※ argument1,…:为要传递给过程的参数。

在工作表中,可以使用CALL公式(语法2a)调用GetTickCount函数,函数公式为:=CALL(“Kernel32″,”GetTickCount”,”J!”)。

其中参数type_text中的“!”表示强制Microsoft Excel在每次重新计算工作表时都要重新计算CALL函数,这样只要重新计算工作表,运行的时间值都将得到更新。

语法2b

在Microsoft Excel for Macintosh中使用CALL函数,即语法2b,函数公式为:=CALL (file_text,resource,type_text, argument1,…),各参数的语法介绍如下。

※ file_text:包含Macintosh中代码源的文件的名称。

※ resource:Macintosh中代码源的名称,也可以使用资源ID号,资源ID号不可以为文本形式。

※ type_text:指定返回值的数据类型以及DLL或代码源的所有参数的数据类型的文本,Type_text的第一个字母指定返回值。

※ argument1,…:为要传递给过程的参数。

Excel 统计某个单项成绩小于80分的最低总成绩

统计某一列数据的最低纪录时,还可通过指定具体条件来统计。以统计成绩表中某一列的成绩小于80分的最低总成绩为例,操作如下。

01 打开需要统计的工作表,选中“A19:F19”单元格区域,在其中输入与表格相同的列标题,选中“D20”单元格,输入“<80”,将其作为计算的条件区域。

02 选中需要显示结果的单元格,在其中输入公式:=DMIN(A2:F10,6,A19:F20),按下“Enter”键确认,即可得到“成绩3”大于90的学生的最高总成绩了。

alt

注意 使用条件范围统计最小纪录时,如果表格中的数据都不满足条件,则将返回“0”。例如若指定本例的条件为“<60”,输入公式后确认,返回值即为“0”。

Excel 统计某个单项成绩大于90分的最高总成绩

统计某一列数据中的最高纪录时,还可以通过指定具体的条件来统计。下面以统计成绩表中某一列的成绩大于90分的最高总成绩为例,具体操作如下。

01 打开需要统计的工作表,选中“A15:F15”单元格区域,在其中输入与表格相同的列标题,选中“E16”单元格,输入“>90”,将其作为计算的条件区域。

02 选中需要显示结果的单元格,在其中输入公式:=DMAX(A2:F10,6,A15:F16),按下“Enter”键确认,即可得到“成绩3”大于90的学生的最高总成绩了。

alt

小提示 使用条件范围统计最高纪录时,如果表格中的数据都不满足条件,则将返回“0”。例如若指定本例的条件为“>98”,输入公式后确认,返回值即为“0”。

Excel 计算A组的平均成绩:DAVERAGE函数

DAVERAGE函数用于对列表或数据库中满足指定条件的记录字段(列)中的数值求平均值。

DAVERAGE函数的语法为:=DAVERAGE(database, field, criteria),各参数的含义介绍如下。

※ database:构成列表或数据库的单元格区域,或者单元格区域的名称。

※ field:指定函数所使用的数据列。

※ criteria:为一组包含给定条件的单元格区域。

下面以计算成绩表中A组学生的平均成绩为例,具体操作如下。

01 打开工作表,输入学生姓名、团队、各项成绩和总成绩等相关数据。

02 选中“A15:F16”单元格区域,在其中输入与表格相同的列标题,将其作为计算的条件区域。

03 选中需要显示结果的单元格,在其中输入公式:=DAVERAGE(A2:F10,6,A15:F16),按下“Enter”键确认,可得到A组学生的平均成绩。

alt

Excel 计算A组总成绩:DSUM函数

如果需要返回数据库的列中满足指定条件的数字之和,可通过DSUM函数实现。DSUM函数的语法为:=DSUM(database,field,criteria),各参数的含义介绍如下。

※ database:构成列表或数据库的单元格区域,或者单元格区域的名称。

※ field:指定函数所使用的数据列。

※ criteria:为一组包含给定条件的单元格区域。

下面以计算A组学生的比赛总成绩为例,具体操作如下。

01 打开比赛成绩表,输入每个学生的比赛相关信息,然后选中需要显示该学生总成绩的表格,输入公式:=C3+D3+E3,然后按下“Enter”键,得到此名学生此次比赛的总成绩。

02 使用填充柄功能将公式复制到此列中的其他单元格中,得到所有参加比赛的学生总成绩。

03 将A12:F13作为检索的条件区域,即将表格的标题栏复制到此区域中,然后在B13单元格中输入“A”。

04 选中“B14”单元格,在其中输入公式:=DSUM(A2:F10,6,A12:F13),按下“Enter”键确认,得到A组学生的比赛总成绩。

注意 用户可以为参数criteria指定任意区域,只要此区域包含至少一个列标签,并且列标签下方包含至少一个用于指定条件的单元格。

alt

Excel 统计销售量最少的员工:DMIN函数

DMIN函数用于返回列表或数据库中满足指定条件的记录字段(列)中的最小数字。DMIN函数的语法为:=DMIN(database, field, criteria),各参数的含义介绍如下。

※ database:为构成列表或数据库的单元格区域,或者单元格区域的名称。

※ field:指定函数所使用的数据列。

※ criteria:为一组包含给定条件的单元格区域。

如果需要统计销售额最少的员工,可通过下面的操作实现。

01 打开工作表,选中“A22:E23”单元格区域,在其中输入与表格相同的列标题,将其作为计算的条件区域。

02 选中需要显示结果的单元格,在其中输入公式:=DMIN(A2:E10,5,A22:E23),按下“Enter”键确认,可得到销售额最低的员工的销售额。

alt

Excel 统计销售额最高的员工:DMAX函数

DMAX函数用于返回列表或数据库中满足指定条件的记录字段(列)中的最大数字。DMAX函数的语法为:=DMAX(database, field, criteria),各参数的含义介绍如下。

※ database:构成列表或数据库的单元格区域,或者单元格区域的名称。

※ field:指定函数所使用的数据列。

※ criteria:为一组包含给定条件的单元格区域。

注意 Field参数为文本时,两端用带引号的标志项,如“销售额”。此外,Field也可是代表列表中数据列位置的数字(不带引号),如1表示第一列,2表示第二列。

如果需要统计销售额最高的员工,可通过下面的操作实现。

01 打开需要统计的工作表,选中“A22:E23”单元格区域,在其中输入与表格相同的列标题,将其作为计算的条件区域。

02 选中需要显示结果的单元格,在其中输入公式:=DMAX(A2:F10,5,A22:E23),按下“Enter”键确认,可得到销售额最高的员工的销售额。

alt

Excel 统计公司有“联系电话”的员工人数:DCOUNTA函数

DCOUNTA函数返回列表或数据库中满足指定条件的记录字段(列)中的非空单元格的个数。DCOUNTA函数的语法为:=DCOUNTA(database,field,criteria),各参数的含义介绍如下。

※ database:构成列表或数据库的单元格区域,或者单元格区域的名称。

※ field:指定函数所使用的数据列。

※ criteria:为一组包含给定条件的单元格区域。

注意 用户可以为参数criteria指定任意区域,只要此区域包含至少一个列标签,并且列标签下方包含至少一个用于指定条件的单元格。

下面以统计公司有联系电话记录的员工人数为例,具体操作如下。

01 打开工作表,在“联系电话”列输入员工的联系电话,没有联系电话的在此列不输入任何信息,即为空白单元格。

02 选中“A19:E19”单元格区域,在其中输入与表格相同的列标题,将其作为计算的条件区域。

03 选中需要显示结果的单元格,在其中输入公式:=DCOUNTA(A2:E10,4,A19:E20),按下“Enter”键确认,即可得到有联系电话的员工人数。

alt