当前位置:文档之家› 关于查找方法_Find方法_的应用

关于查找方法_Find方法_的应用

关于查找方法_Find方法_的应用
关于查找方法_Find方法_的应用

关于查找方法(Find方法)的应用

在Excel中,选择菜单“编辑”——“查找(F)…”命令或者按“Ctrl+F”组合键,将弹出如下图01所示的“查找和替换”对话框。在“查找”选项卡中,输入需要查找的内容并设置相关选项后进行查找,Excel会将活动单元格定位在查找到的相应单元格中。如果未发现查找的内容,Excel会弹出“Excel找不到正在搜索的数据”的消息框。

图01:“查找”对话框

Excel的这个功能对查找指定的数据非常有用,特别是在含有大量数据的工作表中搜索数据时,更能体现出该功能的快速和便捷。同样,在ExcelVBA中使用与该功能对应的Find方法,提供了一种在单元格区域查找特定数据的简单方式,并且比用传统的循环方法进行查找的速度更快。

1. Find方法的作用

Find方法将在指定的单元格区域中查找包含参数指定数据的单元格,若找到符合条件的数据,则返回包含该数据的单元格;若未发现相匹配的数据,则返回Nothing。该方法返回一个Range对象,在使用该方法时,不影响选定区域或活动单元格。

2. Find方法的语法

[语法]

<单元格区域>.Find (What,[After],[LookIn],[LookAt],[SearchOrder],[SearchDirection],[MatchCase],[MatchByte],[SearchFormat])

[参数说明]

(1)<单元格区域>,必须指定,返回一个Range对象。

(2)参数What,必需指定。代表所要查找的数据,可以为字符串、整数或者其它任何数据类型的数据。对应于“查找与替换”对话框中,“查找内容”文本框中的内容。

(3)参数After,可选。指定开始查找的位置,即从该位置所在的单元格之后向后或之前向前开始查找(也就是说,开始时不查找该位置所在的单元格,直到Find方法绕回到该单元格时,

才对其内容进行查找)。所指定的位置必须是单元格区域中的单个单元格,如果未指定本参数,则将从单元格区域的左上角的单元格之后开始进行查找。

(4)参数LookIn,可选。指定查找的范围类型,可以为以下常量之一:xlValues、xlFormulas 或者xlComments,默认值为xlFormulas。对应于“查找与替换”对话框中,“查找范围”下拉框中的选项。

(5)参数LookAt,可选。可以为以下常量之一:XlWhole或者xlPart,用来指定所查找的数据是与单元格内容完全匹配还是部分匹配,默认值为xlPart。对应于“查找与替换”对话框中,“单元格匹配”复选框。

(6)参数SearchOrder,可选。用来确定如何在单元格区域中进行查找,是以行的方式(xlByRows)查找,还是以列的方式(xlByColumns)查找,默认值为xlByRows。对应于“查找与替换”对话框中,“搜索”下拉框中的选项。

(7)参数SearchDirection,可选。用来确定查找的方向,即是向前查找(XlPrevious)还是向后查找(xlNext),默认的是向后查找。

(8)参数MatchCase,可选。若该参数值为True,则在查找时区分大小写。默认值为False。对应于“查找与替换”对话框中,“区分大小写”复选框。

(9)参数MatchByter,可选。即是否区分全角或半角,在选择或安装了双字节语言时使用。若该参数为True,则双字节字符仅与双字节字符相匹配;若该参数为False,则双字节字符可匹配与其相同的单字节字符。对应于“查找与替换”对话框中,“区分全角/半角”复选框。

(10)参数SearchFormat,可选,指定一个确切类型的查找格式。对应于“查找与替换”对话框中,“格式”按钮。当设置带有相应格式的查找时,该参数值为True。

(11)在每次使用Find方法后,参数LookIn、LookAt、SearchOrder、MatchByte的设置将保存。如果下次使用本方法时,不改变或指定这些参数的值,那么该方法将使用保存的值。

在VBA中设置的这些参数将更改“查找与替换”对话框中的设置;同理,更改“查找与替换”对话框中的设置,也将同时更改已保存的值。也就是说,在编写好一段代码后,若在代码中未指定上述参数,可能在初期运行时能满足要求,但若用户在“查找与替换”对话框中更改了这些参数,它们将同时反映到程序代码中,当再次运行代码时,运行结果可能会产生差异或错误。若要避免这个问题,在每次使用时建议明确的设置这些参数,

3. Find方法使用示例

3.1 本示例在活动工作表中查找what变量所代表的值的单元格,并删除该单元格所在的列。

‘- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

Sub Find_Error()

Dim rng As Range

Dim what As String

what = "Error"

Do

Set rng = https://www.doczj.com/doc/19129397.html,edRange.Find(what)

If rng Is Nothing Then

Exit Do

Else

Columns(rng.Column).Delete

End If

Loop

End Sub

‘- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

3.2 带格式的查找

本示例在当前工作表单元格中查找字体为"Arial Unicode MS"且颜色为红色的单元格。其中,Application.FindFormat对象允许指定所需要查找的格式,此时Find方法的参数SearchFormat应设置为True。

‘- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

Sub FindWithFormat()

With Application.FindFormat.Font

.Name = "Arial Unicode MS"

.ColorIndex = 3

End With

Cells.Find(what:="", SearchFormat:=True).Activate

End Sub

‘- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

[小结] 在使用Find方法找到符合条件的数据后,就可以对其进行相应的操作了。您可以:

(1)对该数据所在的单元格进行操作;

(2)对该数据所在单元格的行或列进行操作;

(3)对该数据所在的单元格区域进行操作。

4. 与Find方法相联系的方法

可以使用FindNext方法和FindPrevious方法进行重复查找。在使用这两个方法之前,必须用Find方法指定所需要查找的数据内容。

4.1 FindNext方法

FindNext方法对应于“查找与替换”对话框中的“查找下一个”按钮。可以使用该方法继续执行查找,查找下一个与Find方法中所指定条件的数据相匹配的单元格,返回代表该单元格的Range对象。在使用该方法时,不影响选定区域或活动单元格。

4.1.1 语法

<单元格区域>.FindNext(After)

4.1.2 参数说明

参数After,可选。代表所指定的单元格,将从该单元格之后开始进行查找。开始时不查找该位置所在的单元格,直到FindNext方法绕回到该单元格时,才对其内容进行查找。所指定的位置必须是单元格区域中的单个单元格,如果未指定本参数,则将从单元格区域的左上角的单元格之后开始进行查找。

当查找到指定查找区域的末尾时,本方法将环绕至区域的开始继续查找。发生环绕后,为停止查找,可保存第一次找到的单元格地址,然后测试下一个查找到的单元格地址是否与其相同,作为判断查找退出的条件,以避免出现死循环。当然,如果在查找的过程中,将查找到的单元格数据进行了改变,也可不作此判断,如下例所示。

4.1.3 对VBA帮助系统上的一点疑问探讨

在VBA帮助系统中,介绍Find方法和FindNext方法所使用的示例好像有点问题:当在Excel 中运行时,虽然运行结果正确,但是在运行到最后时,会报错误:运行时错误’91’:对象变量或With块变量未设置。究其原因,可能是对象变量c的问题,因为当进行查找并将相应的值全部改变后,最后变量c的值为Nothing。将其稍作改动后,运行通过。

原示例代码如下:(大家也可参见VBA帮助系统Find方法或FindNext方法帮助主题)

经修改后的示例代码如下,即在原代码中加了一句错误处理语句On Error Resume Next,忽略所发生的错误。

或者,将代码作如下修改,即去掉原代码中最后一个判断循环的条件 c.Address <> firstAddress,因为本程序的功能是在指定区域查找值为2的单元格并替换为数值5,当程序在指定区域查找不到数值2时就会退出循环,不涉及到重复循环的问题。

您也可以试试该程序,看看我的理解是否正确,或者还有什么其它的解决办法。

4.2 FindPrevious方法

可以使用该方法继续执行Find方法所进行的查找,查找前一个与Find方法中所指定条件的数据相匹配的单元格,返回代表该单元格的Range对象。在使用该方法时,不影响选定区域或活动单元格。

4.2.1 语法

<单元格区域>.FindPrevious(After)

4.2.2 参数说明

参数After,可选。代表所指定的单元格,将从该单元格之前开始进行查找。开始时不查找该位置所在的单元格,直到FindPrevious方法绕回到该单元格时,才对其内容进行查找。所指定的位置必须是单元格区域中的单个单元格,如果未指定本参数,则将从单元格区域的左上角的单元格之前开始进行查找。

当查找到指定查找区域的起始位置时,本方法将环绕至区域的末尾继续查找。发生环绕后,为停止查找,可保存第一次找到的单元格地址,然后测试下一个查找到的单元格地址是否与其相同,作为判断查找退出的条件,以避免出现死循环。

4.2.3 示例

在工作表中输入如下图02所示的数据,至少保证在A列中有两个单元格输入了数据“excelhome”。

图02:测试的数据

在VBE编辑器中输入下面的代码测试Find方法、FindNext方法、FindPrevious方法,体验各个方法所查找到的单元格位置。

‘- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

Sub testFind()

Dim findValue As Range

Set findValue = Worksheets("Sheet1").Columns("A").Find(what:="excelhome") MsgBox "第一个数据发现在单元格:" & findValue.Address

Set findValue = Worksheets("Sheet1").Columns("A").FindNext(After:=findValue) MsgBox "下一个数据发现在单元格:" & findValue.Address

Set findValue = Worksheets("Sheet1").Columns("A").FindPrevious(After:=findValue) MsgBox "前一个数据发现在单元格" & findValue.Address

End Sub

‘- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

5. 综合示例

5.1 示例一:在当前工作表的单元格区域A1:A50中输入数据5和其它的一些数据,然后在VBE编辑器中输入下面的代码。运行后,程序将在单元格A1:A50区域中查找数值5所在的单元格,并在所找到的单元格中画一个蓝色的椭圆。

‘- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

Sub FindSample1()

Dim Cell As Range, FirstAddress As String

With Worksheets(1).Range("A1:A50")

Set Cell = .Find(5)

If Not Cell Is Nothing Then

FirstAddress = Cell.Address

Do

With Worksheets(1).Ovals.Add(Cell.Left, _

Cell.Top, Cell.Width, _

Cell.Height)

.Interior.Pattern = xlNone

.Border.ColorIndex = 5

End With

Set Cell = .FindNext(Cell)

Loop Until Cell Is Nothing Or Cell.Address = FirstAddress

End If

End With

End Sub

‘- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

[参考] 参见《使VBA代码更快且更简洁的方法》一文中的“使用已有的VBA方法:Find 方法”,体验使用传统的循环方法与使用该方法实现相同功能时,VBA代码速度的差异。

5.2 示例二:在一个列表中复制相关数据到另一个列表(Re vised fro m Hansen’s P rogra mmin g)

本程序的功能是,根据单元格I1中的值,在单元格区域A1:D11中的B列进行查找,每次找到相应的值,就将该单元格所在区域的行数据复制到以单元格G3(该单元格命名为found)开始的区域中。原数据如下图03所示。

图03:原始数据

点击工作表中的“查找”按钮,运行后的结果如下图04所示。

图04:运行后的结果

源程序代码清单及相关说明如下:

‘- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

Option Explicit

Sub FindSample2()

Dim ws As Worksheet

Dim rgSearchIn As Range

Dim rgFound As Range

Dim sFirstFound As String

Dim bContinue As Boolean

ReSetFoundList '初始化要复制的列表区域

Set ws = ThisWorkbook.Worksheets("sheet1")

bContinue = True

Set rgSearchIn = GetSearchRange(ws) '获取查找区域

'设置查找参数

Set rgFound = rgSearchIn.Find(what:=ws.Range("I1").Value, _

LookIn:=xlValues, LookAt:=xlWhole)

'获取第一个满足条件的单元格地址,作为结束循环的条件

If Not rgFound Is Nothing Then sFirstFound = rgFound.Address

Do Until rgFound Is Nothing Or Not bContinue

CopyItem rgFound

Set rgFound = rgSearchIn.FindNext(rgFound)

'判断循环是否中止

If rgFound.Address = sFirstFound Then bContinue = False

Loop

Set rgSearchIn = Nothing

Set rgFound = Nothing

Set ws = Nothing

End Sub

'获取查找区域,即B列中的"部位"单元格区域

Private Function GetSearchRange(ws As Worksheet) As Range

Dim lLastRow As Long

lLastRow = ws.Cells(65536, 1).End(xlUp).Row

Set GetSearchRange = ws.Range(ws.Cells(1, 2), ws.Cells(lLastRow, 2)) End Function

'复制查找到的数据到found区域

Private Sub CopyItem(rgItem As Range)

Dim rgDestination As Range

Dim rgEntireItem As Range

'获取在查找区域中的整行数据

Set rgEntireItem = rgItem.Offset(0, -1)

Set rgEntireItem = rgEntireItem.Resize(1, 4)

Set rgDestination = rgItem.Parent.Range("found")

'定位要复制到的found区域的第一行

If IsEmpty(rgDestination.Offset(1, 0)) Then

Set rgDestination = rgDestination.Offset(1, 0)

Else

Set rgDestination = rgDestination.End(xlDown).Offset(1, 0)

End If

'复制找到的数据到found区域

rgEntireItem.Copy rgDestination

Set rgDestination = Nothing

Set rgEntireItem = Nothing

End Sub

'初始化要复制到的区域(found区域)

Private Sub ReSetFoundList()

Dim ws As Worksheet

Dim lLastRow As Long

Dim rgT opLeft As Range

Dim rgBottomRight As Range

Set ws = ThisWorkbook.Worksheets("sheet1")

Set rgT opLeft = ws.Range("found").Offset(1, 0)

lLastRow = ws.Range("found").End(xlDown).Row

Set rgBottomRight = ws.Cells(lLastRow, rgT opLeft.Offset(0, 3).Column)

ws.Range(rgT opLeft, rgBottomRight).ClearContents

Set rgT opLeft = Nothing

Set rgBottomRight = Nothing

Set ws = Nothing

End Sub

‘- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

在上述程序代码中,程序FindSample2( )为主程序,首先调用子程序ReSetFoundList( )对所要复制到的数据区域初始化,即清空除标题行以外的内容;然后调用自定义函数GetSearchRange(ws As Worksheet)获取所在查找的单元格区域;在主程序中使用Find方法和FIndNext方法进行查找,调用带参数的子程序CopyItem(rgItem As Range)将查找到的单元格所在的数据行复制到相应的区域。

示例文档见Find方法示例1.xls。

5.3 示例三:实现带连续单元格区域条件的查找

下面的代码提供了一种实现以连续单元格区域中的数据为查找条件进行查找的方法和思路。在本例中,所查找条件区域为D2:D4,在单元格区域A1:A21中进行查找,将结果输入到以单元格F2开始的区域中。示例程序所对应的工作表数据及结果如下图06所示。

‘- - - - - - - - - -代码清单- - - - - - - - - - - - - - - - - - - - - -

Sub FindGroup()

Dim T oFind As Range, Found As Range, c As Range

Dim FirstAddress As String

Set T oFind = Range("D2:D4")

With Worksheets(1).Range("a1:a21")

Set c = .Find(T oFind(1), LookIn:=xlValues)

If Not c Is Nothing Then

FirstAddress = c.Address

Do

If c.Offset(1) = T oFind(2) And c.Offset(2) = ToFind(3) Then

Set Found = Range(c.Offset(0, 1), c.Offset(0, 1).Offset(2))

GoT o Exits

End If

Set c = .FindNext(c)

Loop While Not c Is Nothing And c.Address <> FirstAddress

End If

End With

Exits:

Found.Copy Range("F2")

End Sub

‘- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

图05 数据及查找结果

5.4 示例四:本示例所列程序将在工作簿的所有工作表中查找数值,提供了采用两种方法编写的程序,一种是Find方法,另一种是SpecialCells 方法。相对来说,使用Find方法比使用SpecialCells方法要快,当然,本示例可能不明显,但对于带大量工作表和数据的工作簿来说,这种速度差异就可以看出来了。(by fanjy from https://www.doczj.com/doc/19129397.html,)。

示例代码如下,代码中有简要的说明。

‘- - -使用Find方法- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

Sub QuickSearch()

Dim wks As Excel.Worksheet

Dim rCell As Excel.Range

Dim szFirst As String

Dim i As Long

'设置变量决定是否加亮显示查找到的单元格

'该变量为真时则加亮显示

Dim bT ag As Boolean

bT ag = True

'使用input接受查找条件的输入

Dim szLookupVal As String

szLookupVal = InputBox("在下面的文本框中输入您想要查找的值", "查找输入框", "")

'如果没有输入任何数据,则退出程序

If szLookupVal = "" Then Exit Sub

Application.ScreenUpdating = False

Application.DisplayAlerts = False

' =============================================================

' 添加一个工作表,在该工作表中放置已查找到的单元格地址

' 如果该工作表存在,则先删除它

For Each wks In ActiveWorkbook.Worksheets

If https://www.doczj.com/doc/19129397.html, = "查找结果" Then

wks.Delete

End If

Next wks

' 添加工作表

Sheets.Add ActiveSheet

' 重命名所添加的工作表

https://www.doczj.com/doc/19129397.html, = "查找结果"

' 在新增工作表中添加标题,指明所查找的值

With Cells(1, 1)

.Value = "已在下面所列出的位置找到数值" & szLookupVal

.EntireColumn.AutoFit

.HorizontalAlignment = xlCenter

End With

' =============================================================

' 定位到刚开始的工作表

ActiveSheet.Next.Select

' =============================================================

' 提示您是否想高亮显示已查找到的单元格

If MsgBox("您想加阴影高亮显示所有查找到的单元格吗?", vbY esNo, _

"加阴影高亮显示单元格") = vbNo Then

' 如果不想加阴影显示单元格,则将变量bT ag值设置为False

bT ag = False

End If

' =============================================================

i = 2

' 开始在工作簿的所有工作表中搜索

For Each wks In ActiveWorkbook.Worksheets

' 检查所有的单元格,Find方法比SpecialCells方法更快

With wks.Cells

Set rCell = .Find(szLookupVal, , , xlWhole, xlByColumns, xlNext, False)

If Not rCell Is Nothing Then

szFirst = rCell.Address

Do

' 添加找到的单元格地址到新工作表中

rCell.Hyperlinks.Add Sheets("查找结果").Cells(i, 1), "", "'" & https://www.doczj.com/doc/19129397.html, & "'!" & rCell.Address

' 检查条件判断值bT ag,以决定是否加亮显示单元格

Select Case bT ag

Case True

rCell.Interior.ColorIndex = 19

End Select

Set rCell = .FindNext(rCell)

i = i + 1

Loop While Not rCell Is Nothing And rCell.Address <> szFirst

End If

End With

Next wks

' 释放内存变量

Set rCell = Nothing

' 如果没有找到匹配的值,则移除新增工作表

If i = 2 Then

MsgBox "您所要查找的数值{" & szLookupVal & "}在这些工作表中没有发现", 64, "没有匹配值"

Sheets("查找结果").Delete

End If

Application.ScreenUpdating = True

Application.DisplayAlerts = True

End Sub

‘- - - 使用SpecialCells 方法- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

Option Compare T ext

Sub SlowerSearch()

Dim wks As Excel.Worksheet

Dim rCell As Excel.Range

Dim i As Long

'设置变量决定是否加亮显示查找到的单元格

'该变量为真时则加亮显示

Dim bT ag As Boolean

bT ag = True

'使用input接受查找条件的输入

Dim szLookupVal As String

szLookupVal = InputBox("在下面的文本框中输入您想要查找的值", "查找输入框", "") '如果没有输入任何数据,则退出程序

If szLookupVal = "" Then Exit Sub

With Application

.ScreenUpdating = False

.DisplayAlerts = False

.Calculation = xlCalculationManual

' =============================================================

' 添加一个工作表,在该工作表中放置已查找到的单元格地址

' 如果该工作表存在,则先删除它

For Each wks In ActiveWorkbook.Worksheets

If https://www.doczj.com/doc/19129397.html, = "查找结果" Then

wks.Delete

End If

Next wks

' 添加工作表

Sheets.Add ActiveSheet

' 重命名所添加的工作表

https://www.doczj.com/doc/19129397.html, = "查找结果"

' 在新增工作表中添加标题,指明所查找的值

With Cells(1, 1)

.Value = "已在下面所列出的位置找到数值" & szLookupVal

.EntireColumn.AutoFit

.HorizontalAlignment = xlCenter

End With

' =============================================================

' 定位到刚开始的工作表

ActiveSheet.Next.Select

' =============================================================

' 提示您是否想高亮显示已查找到的单元格

If MsgBox("您想加阴影高亮显示所有查找到的单元格吗?", vbY esNo, _

"加阴影高亮显示单元格") = vbNo Then

' 如果不想加阴影显示单元格,则将变量bT ag值设置为False

bT ag = False

End If

' =============================================================

i = 2

' 开始在工作簿的所有工作表中搜索

On Error Resume Next

For Each wks In ActiveWorkbook.Worksheets

If wks.Cells.SpecialCells(xlCellTypeConstants).Count = 0 Then GoT o NoSpecCells

For Each rCell In wks.Cells.SpecialCells(xlCellTypeConstants)

DoEvents

If rCell.Value = szLookupVal Then

' 添加找到的单元格地址到新工作表中

rCell.Hyperlinks.Add Sheets("查找结果").Cells(i, 1), "", "'" & https://www.doczj.com/doc/19129397.html, & "'!" & rCell.Address

' 检查条件判断值bT ag,以决定是否加亮显示单元格

Select Case bT ag

Case True

rCell.Interior.ColorIndex = 19

End Select

i = i + 1

.StatusBar = "查找到的单元格数为: " & i - 2

End If

Next rCell

NoSpecCells:

Next wks

' 如果没有找到匹配的值,则移除新增工作表

If i = 2 Then

MsgBox "您所要查找的数值{" & szLookupVal & "}在这些工作表中没有发现", 64, "没有匹配值"

Sheets("查找结果").Delete

End If

.Calculation = xlCalculationAutomatic

.DisplayAlerts = True

.ScreenUpdating = True

.StatusBar = Empty

End With

End Sub

‘- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

示例文档见Find与SpecialCells查找示例.xls。

6. 其它一些查找方法

可以使用For Each … Next语句和Like运算符进行更精确匹配的查找。例如,下列代码在单元格区域A1:A10中查找以字符“我”开头的单元格,并将其背景色变为红色。

‘- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

Sub test()

Dim Cell As Range

For Each Cell In [A1:A10]

If Cell Like "我*" Then

Cell.Interior.ColorIndex = 3

End If

Next

End Sub

‘- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

可以输入右图06所示的数据进行测试。

图06:测试的数据

By fanjy in 2006-9-28

Excel_VBA实例教程_查找单元格

Excel VBA实例教程查找单元格 1、使用Find方法 在Excel中使用查找对话框可以查找工作表中特定内容的单元格,而在VBA中则使用Find方法,如下面的代码所示。 01.Sub RngFind() 02. Dim StrFind As String 03. Dim Rng As Range 04. StrFind = InputBox("请输入要查找的值:") 05. If Trim(StrFind) <> "" Then 06. With Sheet1.Range("A:A") 07. Set Rng = .Find(What:=StrFind, _ 08. After:=.Cells(.Cells.Count), _ 09. LookIn:=xlValues, _ 10. LookAt:=xlWhole, _ 11. SearchOrder:=xlByRows, _ 12. SearchDirection:=xlNext, _ 13. MatchCase:=False) 14. If Not Rng Is Nothing Then 15. Application.Goto Rng, True 16. Else 17. MsgBox "没有找到该单元格!" 18. End If 19. End With 20. End If 21.End Sub 代码解析: RngFind过程使用Find方法在工作表Sheet1的A列中查找InputBox函数对话框中所输入的值,并查找该值所在的第一个单元格。 第6到第13行代码在工作表Sheet1的A列中查找InputBox函数对话框中所输入的值。应用于Range 对象的Find方法在区域中查找特定信息,并返回Range对象,该对象代表用于查找信息的第一个单元格。如果未发现匹配单元格,就返回Nothing,语法如下: 01.expression.Find(What, After, LookIn, LookAt, SearchOrder, SearchDirection, MatchCase, MatchByte, SerchFormat) 复制代码参数expression是必需的,该表达式返回一个Range对象。 参数What是必需的,要搜索的数据,可为字符串或任意数据类型。 参数After是可选的,表示搜索过程将从其之后开始进行的单元格,必须是区域中的单个单元格。查找时是从该单元格之后开始的,直到本方法绕回到指定的单元格时,才对其进行搜索。如果未指定本参数,搜索将从区域的左上角单元格之后开始。 在本例中将After参数设置为A列的最后一个单元格,所以查找时从A1单元格开始搜索。 参数LookIn是可选的,信息类型。 参数LookAt是可选的,可为XlLookAt常量的xlWhole 或xlPart之一。 参数SearchOrder是可选的,可为XlSearchOrder常量的xlByRows或xlByColumns之一。 参数SearchDirection是可选的,搜索的方向,可为XlSearchDirection常量的xlNext或xlPrevious 之一。

Excel表格中的一些基本函数使用方法

Excel表格中的一些基本函数使用方法 一、输入三个“=”,回车,得到一条双直线; 二、输入三个“~”,回车,得到一条波浪线; 三、输入三个“*”或“-”或“#”,回车,惊喜多多; 在单元格内输入=now()显示日期 在单元格内输入=CHOOSE(WEEKDAY(I3,2),"星期一","星期二","星期三","星期四","星期五","星期六","星期日") 显示星期几 Excel常用函数大全 1、ABS函数 函数名称:ABS 主要功能:求出相应数字的绝对值。 使用格式:ABS(number) 参数说明:number代表需要求绝对值的数值或引用的单元格。 应用举例:如果在B2单元格中输入公式:=ABS(A2),则在A2单元格中无论输入正数(如100)还是负数(如-100),B2中均显示出正数(如100)。 特别提醒:如果number参数不是数值,而是一些字符(如A等),则B2中返回错误值“#VALUE!”。 2、AND函数 函数名称:AND 主要功能:返回逻辑值:如果所有参数值均为逻辑“真(TRUE)”,则返回逻辑“真(TRUE)”,反之返回逻辑“假(FALSE)”。

使用格式:AND(logical1,logical2, ...) 参数说明:Logical1,Logical2,Logical3……:表示待测试的条件值或表达式,最多这30个。 应用举例:在C5单元格输入公式:=AND(A5>=60,B5>=60),确认。如果C5中返回TRUE,说明A5和B5中的数值均大于等于60,如果返回FALSE,说明A5和B5中的数值至少有一个小于60。 特别提醒:如果指定的逻辑条件参数中包含非逻辑值时,则函数返回错误值“#VALUE!”或“#NAME”。 3、AVERAGE函数 函数名称:AVERAGE 主要功能:求出所有参数的算术平均值。 使用格式:AVERAGE(number1,number2,……) 参数说明:number1,number2,……:需要求平均值的数值或引用单元格(区域),参数不超过30个。 应用举例:在B8单元格中输入公式: =AVERAGE(B7:D7,F7:H7,7,8),确认后,即可求出B7至D7区域、F7至H7区域中的数值和7、8的平均值。 特别提醒:如果引用区域中包含“0”值单元格,则计算在内;如果引用区域中包含空白或字符单元格,则不计算在内。 4、COLUMN 函数 函数名称:COLUMN 主要功能:显示所引用单元格的列标号值。

FindWindow函数详解

C#中使用FindWindow函数详解 FindWindow 用来根据类名和窗口名来得到窗口句柄的。但是这个函数不能查找子窗口,也不区分大小写。 如果要从一个窗口的子窗口中查找需要使用FindWindowEX。 1.在C#中使用方法如下: [DllImport("User32.dll", EntryPoint = "FindWindow")] private static extern IntPtr FindWindow(string lpClassName,string lpWindowName); [DllImport("User32.dll", EntryPoint = "FindWindowEx")] private static extern IntPtr FindWindowEx(IntPtr hwndParent, IntPtr hwndChildAfter, string lpClassName, string lpWindowName); [DllImport("User32.dll", EntryPoint = "FindWindow")] private static extern IntPtr FindWindow(string lpClassName,string lpWindowName); [DllImport("User32.dll", EntryPoint = "FindWindowEx")] private static extern IntPtr FindWindowEx(IntPtr hwndParent, IntPtr hwndChildAfter, string lpClassName, string lpWindowName); 2. 实例参考: IntPtr hWnd = FindWindow(null, "test Demo"); 这样会查找所有title是"test Demo"的窗口。 参考下面的资料解释 3. FindWindow参数详解: Parameters lpClassName [in] Pointer to a null-terminated string that specifies the class name or a class atom created by a previous call to the RegisterClass or RegisterClassEx function. The atom must be in the low-order word of lpClassName; the high-order word must be zero. If lpClassName points to a string, it specifies the window class name. The class name can be any name registered with RegisterClass or RegisterClassEx, or any of the predefined control-class names.

Linux必学的60个命令二(文件处理命令)

Linux必学的60个命令-文件操作 Linux 系统信息存放在文件里,文件与普通的公务文件类似。每个文件都有自己的名字、内容、存放地址及其它一些管理信息,如文件的用户、文件的大小等。文件可以是一封信、一个通讯录,或者是程序的源语句、程序的数据,甚至可以包括可执行的程序和其它非正文内容。Linux文件系统具有良好的结构,系统提供了很多文件处理程序。这里主要介绍常用的文件处理命令。 file 1.作用件内容判断文件类型,使用权限是所有用户。 2.格式 file通过探测文 file [options] 文件名 3.[options]主要参数 -v:在标准输出后显示版本信息,并且退出。 -z:探测压缩过的文件类型。 -L:允许符合连接。 -f name:从文件namefile中读取要分析的文件名列表。 4.简单说明 使用file命令可以知道某个文件究竟是二进制(ELF格式)的可执行文件, 还是Shell Script 文件,或者是其它的什么格式。file能识别的文件类型有目录、Shell脚本、英文文本、二进制可执行文件、C语言源文件、文本文件、DOS的可执行文件。 5.应用实例 如果我们看到一个没有后缀的文件grap,可以使用下面命令: $ file grap grap:English text 此时系统显示这是一个英文文本文件。需要说明的是,file命令不能探测包括图形、音频、视频等多媒体文件类型。 mkdir 1.作用 mkdir命令的作用是建立名称为dirname的子目录,与MS DOS下的md命令类似,它的使用权限是所有用户。 2.格式 mkdir [options] 目录名 3.[options]主要参数 -m, --mode=模式:设定权限<模式>,与chmod类似。 -p, --parents:需要时创建上层目录;如果目录早已存在,则不当作错误。 -v, --verbose:每次创建新目录都显示信息。 --version:显示版本信息后离开。 4.应用实例 在进行目录创建时可以设置目录的权限,此时使用的参数是“-m”。假设要创建的目录名是“tsk”,让所有用户都有rwx(即读、写、执行的权限),那么可以使用以下命令: $ mkdir -m 777 tsk

Excel常用函数及使用方法

excel常用函数及使用方法 一、数字处理 (一)取绝对值:=ABS(数字) (二)数字取整:=INT(数字) (三)数字四舍五入:=ROUND(数字,小数位数) 二、判断公式 (一)把公式返回的错误值显示为空: 1、公式:C2=IFERROR(A2/B2,"") 2、说明:如果是错误值则显示为空,否则正常显示。 (二)IF的多条件判断 1、公式:C2=IF(AND(A2<500,B2="未到期"),"补款","") 2、说明:两个条件同时成立用AND,任一个成立用OR函数。 三、统计公式 (一)统计两表重复 1、公式:B2=COUNTIF(Sheet15!A:A,A2) 2、说明:如果返回值大于0说明在另一个表中存在,0则不存在。 (二)统计年龄在30~40之间的员工个数 公式=FREQUENCY(D2:D8,{40,29} (三)统计不重复的总人数 1、公式:C2=SUMPRODUCT(1/COUNTIF(A2:A8,A2:A8)) 2、说明:用COUNTIF统计出每人的出现次数,用1除的方式把出现次数变成分母,然后相加。

(四)按多条件统计平均值 =AVERAGEIFS(D:D,B:B,"财务",C:C,"大专") (五)中国式排名公式 =SUMPRODUCT(($D$4:$D$9>=D4)*(1/COUNTIF(D$4:D$9,D$4:D$9))) 四、求和公式 (一)隔列求和 1、公式:H3=SUMIF($A$2:$G$2,H$2,A3:G3) 或=SUMPRODUCT((MOD(COLUMN(B3:G3),2)=0)*B3:G3) 2、说明:如果标题行没有规则用第2个公式 (二)单条件求和 1、公式:F2=SUMIF(A:A,E2,C:C) 2、说明:SUMIF函数的基本用法 (三)单条件模糊求和 说明:如果需要进行模糊求和,就需要掌握通配符的使用,其中星号是表示任意多个字符,如"*A*"就表示a前和后有任意多个字符,即包含A。 (四)多条求模糊求和 1、公式:=SUMIFS(C2:C7,A2:A7,A11&"*",B2:B7,B11) 2、说明:在sumifs中可以使用通配符* (五)多表相同位置求和 1、公式:=SUM(Sheet1:Sheet19!B2) 2、说明:在表中间删除或添加表后,公式结果会自动更新。

Findbugs使用简介

Findbugs使用简介 Findbugs是一个在java程序中查找bug的程序,它查找bug模式的实例,也就是可能出错的代码实例,注意Findbugs是检查java字节码,也就是*.class文件。其实准确的说,它是寻找代码缺陷的,很多我们写的不好的地方,可以优化的地方,它都能检查出来。例如:未关闭的数据库连接,缺少必要的null check,多余的null check,多余的if后置条件,相同的条件分支,重复的代码块,错误的使用了"==",建议使用StringBuffer代替字符串连加等等。而且我们还可以自己配置检查规则(做哪些检查,不做哪些检查),也可以自己来实现独有的校验规则(用户自定义特定的bug模式需要继承它的接口,编写自己的校验类,属于高级技巧)。 Findbugs是一个静态分析工具,它检查类或者JAR 文件,将字节码与一组缺陷模式进行对比以发现可能的问题。Findbugs自带检测器,其中有60余种Bad practice,80余种Correctness,1种Internationalization,12种Malicious code vulnerability,27种Multithreaded correctness,23种Performance,43种Dodgy。 Bad practice 坏的实践 一些不好的实践,下面列举几个: HE:类定义了equals(),却没有hashCode();或类定义了equals(),却使用 Object.hashCode();或类定义了hashCode(),却没有equals();或类定义了hashCode(),却使用Object.equals();类继承了equals(),却使用Object.hashCode()。 SQL:Statement 的execute方法调用了非常量的字符串;或Prepared Statement是由一个非常量的字符串产生。 DE:方法终止或不处理异常,一般情况下,异常应该被处理或报告,或被方法抛出。 Correctness 一般的正确性问题 可能导致错误的代码,下面列举几个:

EXCEL中常用函数及使用方法

EXCEL中常用函数及使用方法 Excel函数一共有11类:数据库函数、日期与时间函数、工程函数、财务函数、信息函数、逻辑函数、查询和引用函数、数学和三角函数、统计函数、文本函数以及用户自定义函数。 1.数据库函数 当需要分析数据清单中的数值是否符合特定条件时,可以使用数据库工作表函数。例如,在一个包含销售信息的数据清单中,可以计算出所有销售数值大于1,000 且小于2,500 的行或记录的总数。Microsoft Excel 共有12 个工作表函数用于对存储在数据清单或数据库中的数据进行分析,这些函数的统一名称为Dfunctions,也称为D 函数,每个函数均有三个相同的参数:database、field 和criteria。这些参数指向数据库函数所使用的工作表区域。其中参数database 为工作表上包含数据清单的区域。参数field 为需要汇总的列的标志。参数criteria 为工作表上包含指定条件的区域。 2.日期与时间函数 通过日期与时间函数,可以在公式中分析和处理日期值和时间值。 3.工程函数 工程工作表函数用于工程分析。这类函数中的大多数可分为三种类型:对复数进行处理的函数、在不同的数字系统(如十进制系统、十六进制系统、八进制系统和二进制系统)间进行数值转换的函数、在不同的度量系统中进行数值转换的函数。 4.财务函数 财务函数可以进行一般的财务计算,如确定贷款的支付额、投资的未来值或净现值,以及债券或息票的价值。财务函数中常见的参数: 未来值(fv)--在所有付款发生后的投资或贷款的价值。 期间数(nper)--投资的总支付期间数。 付款(pmt)--对于一项投资或贷款的定期支付数额。 现值(pv)--在投资期初的投资或贷款的价值。例如,贷款的现值为所借入的本金数额。 利率(rate)--投资或贷款的利率或贴现率。 类型(type)--付款期间内进行支付的间隔,如在月初或月末。 5.信息函数 可以使用信息工作表函数确定存储在单元格中的数据的类型。信息函数包含一组称为IS 的工作表函数,在单元格满足条件时返回TRUE。例如,如果单元格包含一个偶数值,ISEVEN 工作表函数返回TRUE。如果需要确定某个单元格区域中是否存在空白单元格,可以使用COUNTBLANK 工作表函数对单元格区域中的空白单元格进行计数,或者使用ISBLANK 工作表函数确定区域中的某个单元格是否为空。 6.逻辑函数 使用逻辑函数可以进行真假值判断,或者进行复合检验。例如,可以使用IF 函数确定条件为真还是假,并由此返回不同的数值。

centos查找文件四种命令

1. find find是最常见和最强大的查找命令,你可以用它找到任何你想找的文件。 find的使用格式如下: $ find <指定目录><指定条件><指定动作> - <指定目录>:所要搜索的目录及其所有子目录。默认为当前目录。 - <指定条件>:所要搜索的文件的特征。 - <指定动作>:对搜索结果进行特定的处理。 如果什么参数也不加,find默认搜索当前目录及其子目录,并且不过滤任何结果(也就是返回所有文件),将它们全都显示在屏幕上。 find的使用实例: $ find . -name "my*" 搜索当前目录(含子目录,以下同)中,所有文件名以my开头的文件。 $ find . -name "my*" -ls 搜索当前目录中,所有文件名以my开头的文件,并显示它们的详细信息。 $ find . -type f -mmin -10 搜索当前目录中,所有过去10分钟中更新过的普通文件。如果不加-type f参数,则搜索普通文件+特殊文件+目录。

2. locate locate命令其实是“find -name”的另一种写法,但是要比后者快得多,原因在于它不搜索具体目录,而是搜索一个数据库(/var/lib/locatedb),这个数据库中含有本地所有文件信息。Linux 系统自动创建这个数据库,并且每天自动更新一次,所以使用locate命令查不到最新变动过的文件。为了避免这种情况,可以在使用locate之前,先使用updatedb命令,手动更新数据库。 locate命令的使用实例: $ locate /etc/sh 搜索etc目录下所有以sh开头的文件。 $ locate ~/m 搜索用户主目录下,所有以m开头的文件。 $ locate -i ~/m 搜索用户主目录下,所有以m开头的文件,并且忽略大小写。

IF函数的使用方法及操作实例

IF函数的使用方法及操作实例 分步阅读 IF函数:假设条件性的函数,即执行真假值的判断,根据逻辑计算的真假值,返回不同的结果。EXCEL中IF函数的使用非常广泛,特别是在单条件判断的时候,用好 IF函数可以帮我们完成很多功能。现结合具体的实例操作,进行说明:方法/步骤 1.一、IF函数的基本应用。 if(logical_test,value_if_true,value_if_false) IF是条件判断函数:=IF(测试条件,结果1,结果2),即如果满足“测试条件” 则显示“结果1”,如果不满足“测试条件”则显示“结果2”。 例一: 图1中,成绩结果60分以上(含60分)为及格,60分以下为不及格。执行IF 函数如下: 在C2单元格中输入:=IF(B2>=60,“及格”,“不及格”),再把此单元格格式往下拉动,即可。 注意:“及格”,“不及格”的双引号,要在英文输入法情况下输入的引号(" )。 如下图1。

2.二、IF函数的复杂应用。IF 函数条件带复合运算。 例二:股票佣金计算。在股票交易中,经常要考虑成本,而佣金占很大的成本。 佣金怎么计算?佣金:佣金费率最高千分之三,最低5元,不足5元,按5元收取。现在佣金费率以千分之三,运用IF函数进行计算。 图2中,红色单元格为佣金值。佣金 = 成交金额 * 佣金费率0.003 。在红色单元格D7中输入:=IF(D4*B7>=5,D4*B7,5) 就会自动计算佣金费。图 2.1为大于或等于5元时的情况,图2.2为不足5元时的情况,仍会显示5。 如下图2 3. 3 三、IF函数高级嵌套应用。

例三:IF函数嵌套运用。某公司销售提成的计算,销售额大于80万元(含80万),提成按40%计算;销售额为80-60万(含60万),提成按30%计算;销售额小于60万,提成按20%计算。计算方法:在C2单元格输入:=IF(B2>=800000,B2*0.4,IF(AND(B2<800000,B2>=600000),B2*0.3,IF(B2<600000,B2*0.2))) 如下图3。 END 注意事项 IF函数的嵌套,有几层IF条件,后面就有几个反括号。嵌套最多不要超过7层。

EXCEL电子表格中四个常用函数的用法

EXCEL电子表格中四个常用函数的用法 (2010-01-16 09:59:27) 转载▼ 分类:Excel学习 标签: 杂谈 EXCEL电子表格中四个常用函数的用 法 现在介绍四个常用函数的用法:COUNT(用于计算单元格区域中数字值的个数)、COUNTA(用于计算单元格区域中非空白单元格的个数)、COUNTBLANK(用于计算单元格区域中空白单元格的个数)、COUNTIF(用于计算符合一定条件的COUNTBLANK单元格个数)。 结合例子将具体介绍:如何利用函数COUNTA统计本班应考人数(总人数)、利用函数COUNT统计实际参加考试人数、利用函数COUNTBLANK统计各科缺考人数、利用函数COUNTIF统计各科各分数段的人数。首先,在上期最后形成的表格的最后添加一些字段名和合并一些单元格,见图1。 一、利用函数COUNTA统计本班的应考人数(总人数) 因为函数COUNTA可以计算出非空单元格的个数,所以我们在利用此函数时,选取本班学生名字所在单元格区域(B3~B12)作为统计对象,就可计算出本班的应考人数(总人数)。 1.选取存放本班总人数的单元格,此单元格是一个经过合并后的大单元格(C18~G18); 2.选取函数;单击菜单“插入/函数”或工具栏中的函数按钮f*,打开“粘贴函数”对话框,在“函数分类”列表中选择函数类别“统计”,然后在“函数名”列表中选择需要的函数“COUNTA”,按“确定”按钮退出“粘贴函数”对话框。 3.选取需要统计的单元格区域;在打开的“函数向导”对话框中,选取需要计算的单元格区域B3~B13,按下回车键以确认选取;“函数向导”对话框图再次出现在屏幕上,按下“确定”按钮,就可以看到计算出来本班的应考人数(总人数)了。

搜索引擎命令大全

搜索引擎命令大全 -seoerboy分享-觉得好就收藏 1、双引号 把搜索词放在双引号中,代表完全匹配搜索,也就是说搜索结果返回的页面包含双引号中出现的所有的词,连顺序也必须完全匹配。百度和Google 都支持这个指令。例如搜索:“企业SEO” 2、减号 减号代表搜索不包含减号后面的词的页面。使用这个指令时减号前面必须是空格,减号后面没有空格,紧跟着需要排除的词。Google 和百度都支持这个指令。 例如:搜索-引擎 返回的则是包含“搜索”这个词,却不包含“引擎”这个词的结果 3、星号 星号*是常用的通配符,也可以用在搜索中。百度不支持*号搜索指令。 比如在Google 中搜索:搜索*擎 其中的*号代表任何文字。返回的结果就不仅包含“搜索引擎”,还包含了“搜索收擎”,“搜索巨擎”等内容。 4、inurl inurl: 指令用于搜索查询词出现在url 中的页面。百度和Google 都支持inurl 指令。inurl 指令支持中文和英文。 比如搜索:inurl:搜索引擎优化 返回的结果都是网址url 中包含“搜索引擎优化”的页面。由于关键词出现在url 中对排名有一定影响,使用inurl:搜索可以更准确地找到竞争对手。 5、inanchor inanchor:指令返回的结果是导入链接锚文字中包含搜索词的页面。百度不支持inanchor。比如在Google 搜索:inanchor:点击这里 返回的结果页面本身并不一定包含“点击这里”这四个字,而是指向这些页面的链接锚文字中出现了“点击这里”这四个字。 可以用来找到某个关键词的竞争对收,而且这些竞争对手往往是做过SEO 的。研究竞争对手页面有哪些外部链接,就可以找到很多链接资源。 6、intitle intitle: 指令返回的是页面title 中包含关键词的页面。Google 和百度都支持intitle 指令。使用intitle 指令找到的文件是更准确的竞争页面。如果关键词只出现在页面可见文字中,而没有出现在title 中,大部分情况是并没有针对关键词进行优化,所以也不是有力的竞争对手。

Excel常用函数的使用方法

1、ABS函数 函数名称:ABS 主要功能:求出相应数字的绝对值。 使用格式:ABS(number) 参数说明:number代表需要求绝对值的数值或引用的单元格。 应用举例:如果在B2单元格中输入公式:=ABS(A2),则在A2单元格中无论输入正数(如100)还是负数(如-100),B2中均显示出正数(如100)。 特别提醒:如果number参数不是数值,而是一些字符(如A等),则B2中返回错误值“#VALUE!”。 2、AND函数 函数名称:AND 主要功能:返回逻辑值:如果所有参数值均为逻辑“真(TRUE)”,则返回逻辑“真(TRUE)”,反之返回逻辑“假(FALSE)”。 使用格式:AND(logical1,logical2, ...) 参数说明:Logical1,Logical2,Logical3……:表示待测试的条件值或表达式,最多这30个。 应用举例:在C5单元格输入公式:=AND(A5>=60,B5>=60),确认。如果C5中返回TRUE,说明A5和B5中的数值均大于等于60,如果返回FALSE,说明A5和B5中的数值至少有一个小于60。 特别提醒:如果指定的逻辑条件参数中包含非逻辑值时,则函数返回错误值“#VALUE!”或“#NAME”。 3、AVERAGE函数 函数名称:AVERAGE 主要功能:求出所有参数的算术平均值。 使用格式:AVERAGE(number1,number2,……) 参数说明:number1,number2,……:需要求平均值的数值或引用单元格(区域),参数不超过30个。

应用举例:在B8单元格中输入公式:=AVERAGE(B7:D7,F7:H7,7,8),确认后,即可求出B7至D7区域、F7至H7区域中的数值和7、8的平均值。 特别提醒:如果引用区域中包含“0”值单元格,则计算在内;如果引用区域中包含空白或字符单元格,则不计算在内。 4、COLUMN 函数 函数名称:COLUMN 主要功能:显示所引用单元格的列标号值。 使用格式:COLUMN(reference) 参数说明:reference为引用的单元格。 应用举例:在C11单元格中输入公式:=COLUMN(B11),确认后显示为2(即B列)。 特别提醒:如果在B11单元格中输入公式:=COLUMN(),也显示出2;与之相对应的还有一个返回行标号值的函数——ROW(reference)。 5、CONCATENATE函数 函数名称:CONCATENATE 主要功能:将多个字符文本或单元格中的数据连接在一起,显示在一个单元格中。 使用格式:CONCATENATE(Text1,Text……) 参数说明:Text1、Text2……为需要连接的字符文本或引用的单元格。 应用举例:在C14单元格中输入公式:=CONCATENATE(A14,"@",B14,".com"),确认后,即可将A14单元格中字符、@、B14单元格中的字符和.com连接成一个整体,显示在C14单元格中。 特别提醒:如果参数不是引用的单元格,且为文本格式的,请给参数加上英文状态下的双引号,如果将上述公式改为:=A14&"@"&B14&".com",也能达到相同的目的。 6、COUNTIF函数 函数名称:COUNTIF 主要功能:统计某个单元格区域中符合指定条件的单元格数目。 使用格式:COUNTIF(Range,Criteria) 参数说明:Range代表要统计的单元格区域;Criteria表示指定的条件表达式。

Excel 实验指导——函数的使用

实验八学生成绩表------数学函数、统计函数 一、实验目的 1、掌握数组公式、Sum()函数 2、掌握Averageif()和Sumif() 3、掌握COUNT()、COUNTA()、COUNTIF()、Countblank() 4、RANK.EQ 5、数据库函数的使用 二、实验内容 1、利用数组公式或Sum()函数来统计每个同学上学期的总分。 2、利用Averageif()和Sumif()统计平均分和总分。 3、利用统计函数统计班级人数,每门课程不及格人数,缺考科目数。 4、对班级同学的考试情况进行排名。 5、选择合适的数据库函数统计信息 三、实验任务 小王是班级学习委员,现正值新学期评优时期,班主任委托小王统计班级同学上学期的考试成绩情况。小王要应用函数分析学生信息、计算考试成绩,分析每科成绩的最高分、最低分和平均分,统计每个学生的总分排名,并统计不同寝室的学习情况。 本例效果图如图9- 1所示,小王需要完成的工作包括: (1)统计每个同学各门课程的总分并排名。 (2)统计每个寝室的平均分。 (3)统计每门课程的不及格人数和缺考人数。 (4)统计符合特定条件的学生信息。 图9- 1 学生成绩表效果图

9. 3 案例实现 9.3.1统计班级每个学生的考试总分 1.使用一般公式方法 公式是Excel工作表中进行数值计算的等式,公式输入是以“=”开始的,简单的公式有加、减、乘、除等计算。 我们可以在I3单元格中编辑公式,输入“=D3+E3+F3+G3+H3”,回车后即可,其他同学的总分可以通过填充柄拖动来求得。 2.数组公式计算总分 Excel中数组公式非常有用,尤其在不能使用工作表函数直接得到结果时,数组公式显得特别重要,它可建立产生多值或对一组值而不是单个值进行操作的公式。 输入数组公式首先必须选择用来存放结果的单元格区域(可以是一个单元格),在编辑栏输入公式,然后按Ctrl+Shift+Enter组合键锁定数组公式,Excel将在公式两边自动加上花括号“{}”。注意:不要自己键入花括号,否则,Excel认为输入的是一个正文标签。 利用数组公式计算I3:I32单元格的总分。选中I3:I32单元格,然后按下“=”键编辑加法公式计算总分,因为数组公式是对一组值进行操作,所以直接用鼠标选择D3:D32,按下“+”号,再用鼠标选择其余科目成绩依次累加,然后按Ctrl+Shift+Enter组合键完成数组公式的编辑,如图9- 2所示。 图9- 2 数组公式 在数组公式的编辑过程中,第一步选中I3:I32单元格尤为关键。绝不能开始只选中I3单元格,在最后用填充柄填充其他单元格,那样其他单元格的左上角将会出现绿色小三角,是错误的方法。 3.使用Sum()函数计算总分 Sum()求和函数,可以用来计算总分列。选择I3单元格,使用“公式”→“插入函数”或“自动求和”按钮,可选择Sum()函数,选中求和区域D3:H3,如图9- 3所示,按Enter 键,求和结果显示在单元格中。 通过填充操作完成其余各行总分的计算。

CMD下命令查询

CMD下命令查询 HELP 显示详细信息 ASSOC 显示或修改文件扩展名关联。 AT 计划在计算机上运行的命令和程序。 ATTRIB 显示或更改文件属性。 BREAK 设置或清除扩展式CTRL+C 检查。CACLS 显示或修改文件的访问控制列表(ACLs)。CALL 从另一个批处理程序调用这一个。 CD 显示当前目录的名称或将其更改。 CHCP 显示或设置活动代码页数。 CHDIR 显示当前目录的名称或将其更改。CHKDSK 检查磁盘并显示状态报告。 CHKNTFS 显示或修改启动时间磁盘检查。 CLS 清除屏幕。 CMD 打开另一个Windows 命令解释程序窗口。COLOR 设置默认控制台前景和背景颜色。 COMP 比较两个或两套文件的内容。 COMPACT 显示或更改NTFS 分区上文件的压缩。CONVERT 将FAT 卷转换成NTFS。您不能转换当前驱动器。 COPY 将至少一个文件复制到另一个位置。 DATE 显示或设置日期。

DEL 删除至少一个文件。 DIR 显示一个目录中的文件和子目录。 DISKCOMP 比较两个软盘的内容。 DISKCOPY 将一个软盘的内容复制到另一个软盘。DOSKEY 编辑命令行、调用Windows 命令并创建宏。ECHO 显示消息,或将命令回显打开或关上。ENDLOCAL 结束批文件中环境更改的本地化。ERASE 删除至少一个文件。 EXIT 退出CMD.EXE 程序(命令解释程序)。 FC 比较两个或两套文件,并显示 不同处。 FIND 在文件中搜索文字字符串。 FINDSTR 在文件中搜索字符串。 FOR 为一套文件中的每个文件运行一个指定的命令。FORMAT 格式化磁盘,以便跟Windows 使用。FTYPE 显示或修改用于文件扩展名关联的文件类型。GOTO 将Windows 命令解释程序指向批处理程序 中某个标明的行。 GRAFTABL 启用Windows 来以图像模式显示 扩展字符集。 HELP 提供Windows 命令的帮助信息。 IF 执行批处理程序中的条件性处理。 LABEL 创建、更改或删除磁盘的卷标。

EXCEL函数使用方法――积分下载下来的

EXCEL函数使用方法 1.求和函数SUM 语法: SUM(number1,number2,...)。 参数: number 1、number 2...为1到30个数值(包括逻辑值和文本表达式)、区域或引用,各参数之间必须用逗号加以分隔。 注意: 参数中的数字、逻辑值及数字的文本表达式可以参与计算,其中逻辑值被转换为1,文本则被转换为数字。如果参数为数组或引用,只有其中的数字参与计算,数组或引用中的空白单元格、逻辑值、文本或错误值则被忽略。 应用实例一: 跨表求和 使用SUM函数在同一工作表中求和比较简单,如果需要对不同工作表的多个区域进行求和,可以采用以下方法: 选中Excel XP“插入函数”对话框中的函数,“确定”后打开“函数参数”对话框。切换至第一个工作表,鼠标单击“number1”框后选中需要求和的区域。如果同一工作表中的其他区域需要参与计算,可以单击“number2”框,再次选中工作表中要计算的其他区域。上述操作完成后切换至第二个工作表,重复上述操作即可完成输入。“确定”后公式所在单元格将显示计算结果。 应用实例二:

SUM函数中的加减混合运算 财务统计需要进行加减混合运算,例如扣除现金流量表中的若干支出项目。按照规定,工作表中的这些项目没有输入负号。这时可以构造“=SUM (B2:B6,C2:C9,-D2,-E2)”这样的公式。其中B2:B6,C2:C9引用是收入,而 D2、E2为支出。由于Excel不允许在单元格引用前面加负号,所以应在表示支出的单元格前加负号,这样即可计算出正确结果。即使支出数据所在的单元格连续,也必须用逗号将它们逐个隔开,写成“=SUM(B2:B6,C2:C9,-D2,-D3,D4)”这样的形式。 应用实例三: 及格人数统计 假如B1:B50区域存放学生性别,C1:C50单元格存放某班学生的考试成绩,要想统计考试成绩及格的女生人数。可以使用公式“=SUM(IF(B1:B50=″女″,IF (C1:C50>=60,1,0)))”,由于它是一个数组公式,输入结束后必须按住Ctrl+Shift键回车。公式两边会自动添加上大括号,在编辑栏显示为“{=SUM(IF (B1:B50=″女″,IF(C1:C50& gt;=60,1,0)))}”,这是使用数组公式必不可少的步骤。 2.平均值函数AVERAGE 语法: AVERAGE(number1,number2,...)。 参数: number 1、number 2...是需要计算平均值的1~30个参数。 注意:

Linux查找文件的相关命令

Linux查找文件的相关命令 2010-05-06 15:53 Linux查找文件的相关命令如表2-7所示。 表2-7 Linux查找文件的相关命令说明 more分页显示一个文件或任何输出结果/bin less分页显示一个文件并且可以回头/usr/bin whereis寻找文件工具/usr/bin find寻找文件工具/usr/bin locate寻找文件工具/usr/bin grep 寻找某字串内容工具/bin env查看环境设置/usr/bin more [文件名] 分页显示一个文件或任何输出结果 其实more不是用来寻找文件的,但是一般人却十有八九是在找文件时把它派上用场。 因为 more 主要的作用是把输出结果显示在屏幕上,一页停止一次,所以例如当我们用 ls 命令去找一个 x字母开头的文件,而下达了 ls x* 却仍然列出太多文件,一个屏幕看不完时,就可以配合管道符号和 more 命令: ls x* | more 它会一屏停止一下,等待您按空白键才继续往上卷。于是 more 俨然犹如DOS 的 DIR 命令 /P 选项的地位了。而 more 当主角的时候,是用做一页一次显示文章,例如我们想要看 /etc 里面的 XF86Config 文件,可以下如下命令: more /etc/XF86Config 这样,我们就可以不断按空白键把这个文件慢慢看完。但是,因为more 先天的设计,如果您看完了这页,想要回头看上一页,很抱歉,是不行的,您必须从头再来!于是大家在使用中就干脆摒弃这个命令,而代之以 vi 或者pico, joe 等文书编辑器来看文字文件了! pico /etc/XF86Config 到最后,很少人再用more了。所以more经常配合 ls在找文件的场合出现,每天都可以上场十几次。 所以,相信把失去主要舞台的 more归类为找寻文件的相关命令虽不合法,

Excel中函数的使用方法

各函数使用方法大全 Excel函数使用方法 1、ABS函数 主要功能:求出相应数字的绝对值。 使用格式:ABS(number) 参数说明:number代表需要求绝对值的数值或引用的单元格。 应用举例:如果在B2单元格中输入公式:=ABS(A2),则在A2单元格中无论输入正数(如100)还是负数(如-100),B2中均显示出正数(如100)。 特别提醒:如果number参数不是数值,而是一些字符(如A等),则B2中返回错误值“#VALUE!”。 2、AND函数 主要功能:返回逻辑值:如果所有参数值均为逻辑“真(TRUE)”,则返回逻辑“真(TRUE)”,反之返回逻辑“假(FALSE)”。 使用格式:AND(logical1,logical2, ...) 参数说明:Logical1,Logical2,Logical3……:表示待测试的条件值或表达式,最多这30个。 应用举例:在C5单元格输入公式:=AND(A5>=60,B5>=60),确认。如果C5中返回TRUE,说明A5和B5中的数值均大于等于60,如果返回FALSE,说明A5和B5中的数值至少有一个小于60。 特别提醒:如果指定的逻辑条件参数中包含非逻辑值时,则函数返回错误值“#VALUE!”或“#NAME”。 3、AVERAGE函数 主要功能:求出所有参数的算术平均值。 使用格式:AVERAGE(number1,number2,……) 参数说明:number1,number2,……:需要求平均值的数值或引用单元格(区域),参数不超过30个。 应用举例:在B8单元格中输入公式:=AVERAGE(B7:D7,F7:H7,7,8),确认后,即可求出B7至D7区域、F7至H7区域中的数值和7、8的平均值。 特别提醒:如果引用区域中包含“0”值单元格,则计算在内;如果引用区域中包含空白或字符单元格,则不计算在内。 4、COLUMN 函数 主要功能:显示所引用单元格的列标号值。 使用格式:COLUMN(reference) 参数说明:reference为引用的单元格。

如何利用find命令查找文件

如何利用find命令查找文件 find命令会在指定目录及其子目录下查找符合条件的特定文件。此命令的最大用处是当忘了文件的正确所在,而想找到该文件。命令格式find 目录名条件目录名—欲开始寻找的目录所在。find会寻找此目录及其子目录。可以有多个目录名称,只要目录与目录之间用空格分开即可。条件—欲搜索文件的条件,可包含文件名称、属主、最后修改时间等等。条件列表说明-name name 指定要被寻找的文件或目录名称,可用通配符,如, -name ‘*.c’-print 将符合条件的路径打印出来-size n 寻找占用n个block的文件-type x 以文件类型作为寻找条件。文件类型x如下:d —目录(directory), f —文件(file),b —块(block), c —字符(character),p —管道(pipe)-user user 寻找属于user所拥有的文件,user可为用户名或uid号-group group 寻找用户组为group的所有文件,group可为组名称或gid号-links n 寻找链接数等于n的所有文件-atim n 寻找n天之前曾被存取的文件-mtime n 寻找n天之前曾被修改的文件-exec command {}\; 用寻找到的文件作为执行command的对象,{}内存欲执行command时所需的参数条件的逻辑运算符:逻辑运算符逻辑意义举例说明!非!-name “*.c”所有不以.c为扩展名的文件-o 或-size +10 -o -links 3 所有大于10block或链接数为3的文件与-size +10 -links 3 大于10block且链接数为3的文

相关主题
文本预览
相关文档 最新文档