当前位置:文档之家› ACCESS常用方法

ACCESS常用方法

ACCESS常用方法
ACCESS常用方法

DoCmd 对象

参阅属性方法事件特性

Application

DoCmd

使用DoCmd对象的方法(方法:类似于语句或函数的过程,它对特定对象进行操作。例如,可将 Print 方法应用于 Debug 对象,以将打印输出传输到“即时”窗口。),可以从 Visual Basic 运行 Microsoft Access 操作(操作:宏的基本组成部分;这是一种自含式指令,可以与其他操作相结合来自动执行任务。在其他宏语言中有时称为命令。)。操作可以执行诸如关闭窗口、打开窗体和设置控件(控件:允许用户控制程序的图形用户界面对象,如文本框、复选框、滚动条或命令按钮等。可使用控件显示数据或选项、执行操作或使用户界面更易阅读。)值等任务。

使用 DoCmd 对象

例如,可以使用DoCmd对象的OpenForm方法来打开一个窗体,或使用Hourglass方法将鼠标指针改为沙漏图标。

DoCmd对象的大多数方法都有参数,某些参数是必需的,其他一些是可选的。如果省略可选参数,这些参数将被假定为特定方法的默认值。例如,OpenForm方法有七个参数,但只有第一个参数formname是必需的。下面的示例显示了如何打开当前数据库中的“雇员”窗体。在该窗体中只包含那些具有“销售代表”头衔的雇员。

DoCmd.OpenForm "Employees", , ,"[Title] = 'Sales Representative'"

DoCmd对象不支持对应于以下操作的方法:

?AddMenu。

?MsgBox。使用MsgBox函数。

?RunApp。使用Shell函数运行其他应用程序。

?RunCode。直接在 Visual Basic 中运行函数。

?SendKeys。使用SendKeys语句。

?SetValue。直接在 Visual Basic 中设置值。

?StopAllMacros。

?StopMacro。

有关对应于DoCmd方法的 Microsoft Access 操作的详细信息,请在“帮助”索引中查找操作的名称。

下面的示例在“窗体”视图中打开一个窗体并移到一条新记录。

Sub ShowNewRecord()

DoCmd.OpenForm "Employees", acNormal

DoCmd.GoToRecord , , acNewRec

End Sub

OpenForm 方法

参阅应用于示例特性

在 Visual Basic 中,OpenForm方法执行OpenForm操作。

expression.OpenForm(FormName, View, FilterName, WhereCondition, DataMode, WindowMode, OpenArgs)

expression 必需。返回“应用于”列表中的一个对象的表达式。FormName必需Variant型。字符串表达式(字符串表达式:任一求值为一列连续字符的表达式。表达式的元素可以是:返回字符串或字符串 Variant (VarType 8) 的函数;字符串字面值、常量、变量或 Variant。),表示当前数据库中窗体(窗体:Access 数据库对象之一,可以在这种对象上放置控件,用于执行操作,或在字段中输入、显示、编辑数据。)的有效名称。如果在某类库数据库(类库数据库:可以从任意应用程序中调用的过程和数据库对象的集合。为了使用库中的项,必须先建立从当前数据库到类库数据库的引用。)中执行包含OpenForm方法的 Visual Basic 代码,则 Microsoft Access 将先在该类库数据库中查找具有相同名称的窗体,然后再在当前数据库中查找。

View可选AcFormView。

AcFormView 可以是下列 AcFormView 常量之一:

acDesign

acFormDS

acFormPivotChart

acFormPivotTable

acNormal默认。在“窗体”视图(“窗体”视图:一个显示窗体以便显示或接受数据的窗口。“窗体”视图是添加和修改表中数据的主要方式。在该视图中还可以更改窗体的设计。)中打开窗体。

acPreview

如果将该参数留空,将假定为默认常量 (acNormal)。

FilterName可选Variant型。字符串表达式,表示当前数据库中查询(查询:有关表中所存数据的问题,或要对数据执行操作的请求。查询可以将多个表中的数据放在一起,以作为窗体、报表或数据访问页的数据源。)的有效名称。WhereCondition可选Variant型。字符串表达式,表示不包括词 WHERE 的有效 SQL WHERE 子句(WHERE 子句:SQL 语句中用于指定哪部分记录被检索的语素。)。

DataMode可选AcFormOpenDataMode。窗体的数据输入模式。它只应用于在“窗体”视图或“数据表”视图中打开的窗体。

AcFormOpenDataMode 可以是这些 AcFormOpenDataMode 常量之一:acFormAdd用户可以添加新记录,但是不能编辑现有记录。

acFormEdit用户可以编辑现有记录和添加新记录。

acFormPropertySettings默认

acFormReadOnly用户只能查看记录。

如果将该参数留空(将假定为默认常量,即acFormPropertySettings),则Microsoft Access 将在由窗体的AllowEdits、AllowDeletions、AllowAdditions和DataEntry属性设置的数据模式中打开窗体。WindowMode可选,AcWindowMode。打开窗体时所采用的窗口模式。AcWindowMode 可以是下列 AcWindowMode 常量之一:

acDialog窗体的 Modal 和 PopUp 属性设为“是”。

acHidden窗体隐藏。

acIcon打开窗体并在 Windows 工具栏中最小化。

acWindowNormal默认值窗体采用它的属性所设置的模式

如果将该参数留空,将假定为默认常量 (acWindowNormal)。

OpenArgs可选Variant型。字符串表达式,用于设置窗体的OpenArgs属性。而后该设置可用于窗体模块(窗体模块:该模块中包含在指定的窗体或其控件上事件发生时触发的所有事件过程的代码。)中的代码,例如 Open 事件过程(事件过程:自动执行的过程,以响应用户或程序代码启动的事件或系统触发的事件。)。OpenArgs属性也可以在宏(宏:可用来使任务自动化的操作或操作集。宏在 Visual Basic for Applications 编程语言中录制。)和表达式(表达式:算术或逻辑运算符、常数、函数和字段名称、控件和属性的任意组合,计算结果为单个值。表达式可执行计算、操作字符或测试数据。)中引用。

例如,假定打开的是一个客户列表的连续窗体(连续窗体:在“窗体”视图中,能在屏幕上显示多条记录的窗体。)。如果希望当窗体打开时焦点(焦点:一种接受通过鼠标或键盘操作或 SetFocus 方法进行的用户输入的能力。焦点可由用户或由应用程序设置。具有焦点的对象通常由突出显示的标题或标题栏指示。)移到特定的客户记录上,则可以使用openargs 参数指定客户名称,然后使用FindRecord方法,将焦点移到指定的客户名称的记录上。

该参数仅在 Visual Basic 中才可用。

说明

有关该操作及其参数如何使用的详细信息,请参阅该操作的主题。wherecondition 参数的最大长度为 32,768 个字符(而在“宏”窗口中,Where Condition 操作参数的最大长度为 256 个字符)。

语法中的可选参数可以留空,但是必须包含参数的逗号。如果位于末端的参数留空,则在指定的最后一个参数后面不必使用逗号。

示例

下面的示例在“窗体”视图中打开“雇员”窗体,并只显示“姓氏”字段为King 的记录。可以编辑显示的记录,也可以添加新记录。

DoCmd.OpenForm "Employees", , ,"LastName = 'King'"

示例

以下示例在“窗体”视图中打开一个窗体并且移到一个新记录。

Sub ShowNewRecord()

DoCmd.OpenForm "Employees", acNormal

DoCmd.GoToRecord , , acNewRec

End Sub

OpenForm 操作

可以使用 OpenForm 操作来打开“窗体”视图(“窗体”视图:一个显示窗体以便显示或接受数据的窗口。“窗体”视图是添加和修改表中数据的主要方式。在该视图中还可以更改窗体的设计。)中的窗体(窗体:Access 数据库对象之

一,可以在这种对象上放置控件,用于执行操作,或在字段中输入、显示、编辑数据。)、窗体设计视图(“设计”视图:显示数据库对象(包括:表、查询、窗体、宏和数据访问页)的设计的窗口。在“设计”视图中,可以新建数据库对象和修改现有数据库对象的设计。)、打印预览(打印预览:打印文档时显示文档的一种视图。)或者数据表视图(“数据表”视图:以行列格式显示来自表、窗体、查询、视图或存储过程的窗口。在“数据表”视图中,可以编辑字段、添加和删除数据,以及搜索数据。)。可以为窗体选择数据项或窗口模式,并限制窗体所显示的记录(记录:关于人员、地点、事件或某些其他项的数据的集合。记录是表中行的逻辑等同项。)。

设置

OpenForm 操作有下列参数。

操作

参数

说明

窗体名称要打开的窗体的名称。“宏”窗口(“宏”窗口:用来创建和修改宏的窗口。)的“操作参数”中的“窗体名称”框可以显示在当前数据库中的所有窗体。这是必需的参数。

如果在一个类库数据库(类库数据库:可以从任意应用程序中调用的过程和数据库对象的集合。为了使用库中的项,必须先建立从当前数据库到类库数据库的引用。)中运行包含 OpenForm 操作的宏,Microsoft Access 将首先在类库数据库中查找具有该名称的窗体,然后在当前数据库中进行该查找。

视图将要在其中打开窗体的视图。请在“视图”框中单击“窗体”、“设计”、“打印预览”、“数据表”、“数据透视表”或者“数据透视图”。默认为“窗体”。

注释“视图”参数设置将覆盖该窗体的DefaultView和ViewsAllowed属性。例如,如果窗体的ViewsAllowed属性被设置为Datasheet,仍然可以使用 OpenForm 操作在“窗体”视图中打开窗体。

筛选名称对窗体的记录进行限制或排序的筛选(筛选:应用于数据的一组条件,用以显示数据的子集或对数据进行排序。在 Access 中,可使用筛选技术,如“按选中内容筛选”和“按窗体筛选”来筛选数据。)。可以输入现有查询(查询:有关表中所存数据的问题,或要对数据执行操作的请求。查询可以将多个表中的数据放在一起,以作为窗体、报表或数据访问页的数据源。)的名称,也可以输入已被另存为查询的一个筛选的名称。但是,查询必须包括被打开的窗体内的所有字段,或者将它的OutputAllFields属性设置为“是”。

Where 条件一个有效的SQL WHERE 子句(WHERE 子句:SQL 语句中用于指定哪部分记录被检索的语素。)(没有单词 WHERE)或表达式(表达式:算术或逻辑运算符、常数、函数和字段名称、控件和属性的任意组合,计算结果为单个值。表达式可执行计算、操作字符或测试数据。),被 Access 用来从窗体的基本表或查询中选择记录。如果选择的是具有“筛选名称”参数的筛选,则 Access 将把该 WHERE 字句应用到该筛选的结果。要打开窗体,并将它的记录范围限制为由另一个窗体上的控件的值所指定的记录,则应当使用下列表达式:

[fieldname] = Forms![formname]![controlname on other form] fieldname 参数是您要打开的窗体的基本表或查询中的字段的名称。controlname on other form 参数是另一个窗体上的控件的名称,该控件包含了需要与第一个窗体中的记录相匹配的值。

注释 Where 条件参数的最大长度是 255 个字符。如果需要输入更复杂更长的 SQL WHERE 子句,请使用 Microsoft Visual Basic 中的DoCmd 对象的OpenForm方法。在 Visual Basic 中,最多可以输入有 32,768 个字符的 SQL WHERE 子句语句。

数据模式窗体的数据输入模式。该参数只应用于在“窗体”视图或“数据表”视图中打开的窗体。请单击“添加”(用户可以添加新的记录,但不能编辑现有记录)、“编辑”(用户可以编辑现有记录并添加新记录)或者“只读”(用户只能查看记录)。默认为“编辑”。

注意

?“数据模式”参数设置将覆盖窗体的AllowEdits、

AllowDeletions、AllowAdditions和DataEntry属性的设置。

例如,如果窗体的AllowEdits属性被设置为No,但仍然可以使用 OpenForm 操作在编辑模式下打开窗体。

?如果将该参数留空,Access 将在由窗体的AllowEdits、AllowDeletions、AllowAdditions和DataEntry属性所设置的

数据输入模式下打开窗体。

窗口模式窗体打开时所采用的窗口模式。可以单击“普通”(窗体采用由它的属性(窗体属性:窗体的属性,影响窗体的外观或行为。例如,窗体的默认视图属性是一种决定窗体是否将在“窗体”视图或“数据表”视图中自动打开的窗体属性。)所设置的模式)、“隐藏”(窗体被隐藏)、“图标”(窗体打开时最小化为屏幕底部的小标题栏)、或“对话框”(窗体的“模式”和“弹出式”属性被设置为“是”)。默认为“普通”。

说明

此操作类似于在单击“对象”下面的“窗体”后再单击“打开”按钮或“设计”按钮,然后在“数据库”窗口(“数据库”窗口:在打开 Access 数据库或 Access 项目时出现的窗口。它显示用于新建数据库对象和打开现有对象的快捷方式。)中选择一个窗体。

窗体可以是模式的(有模式:一种窗口或对话框,要求用户采取某些操作之后,焦点才能切换到另一个窗体或对话框。对话框和消息通常都是有模式的。)(用户必须将它先关闭或隐藏然后才能执行其他任何操作)或无模式的(用户可以在该窗体仍然打开的情况下移动到其他窗口)。它还可以是弹出式窗体(弹出式窗体:驻留在其他窗口上面的窗体。弹出式窗体可以是有模式的,也可以是无模式的。)(出现在其他所有 Access 窗体之上、用来收集或显示信息的窗体)。可以在设计窗体时设置“模式”和“弹出”属性。如果让“窗口模式”参数使用“普通”,窗体将在由这些属性设置所指定的模式下打开。如果让“窗口模式”参数使用“对话框”,这两个属性将一起设置为“是”。作为隐藏或图标打开的窗体在被显示或还原时,将返回到由其属性设置所指定的模式。

如果您打开的窗体的“窗口模式”参数被设置成“对话框”,Access 将挂起该宏,直到窗体被关闭或隐藏。要隐藏窗体,可以使用 SetValue 操作将窗体的的“可见性”属性设置为“否”。

提示

可以在“数据库”窗口中选择一个窗体,并将它拖到一个宏操作行(操作行:位于“宏”窗口上部分的一行,用来输入与特定宏或宏组相关联的宏名、操作、条件和备注。)。这样做将会自动创建在“窗体”视图中打开窗体的 OpenForm 操作。

所应用的筛选和 WHERE 条件成为窗体“筛选”属性的设置。

示例

通过使用宏设置控件的值

下面的宏将从“供应商”窗体上的一个按钮打开“添加产品”窗体。它将显示Echo、Close、OpenForm、SetValue 和 GoToControl 操作的用法。SetValue 操作将把“产品”窗体上的“供应商ID”控件设置为“供应商”窗体上的当前供应商。GoToControl 操作将把焦点移动到“类别ID”字段上,然后可以开始输入新产品的数据。这个宏应当附加到“供应商”窗体上的“添加产品”按钮。

操作参数:设置备注

Echo 打开回响:否在宏执行过程中停止屏幕更新。

Close 对象类型:窗体

对象名称:产品列表

保存:否

关闭“产品列表”窗体。

OpenForm 窗体名称:产品

视图:窗体

数据模式:添加

窗口模式:普通

打开“产品”窗体。

SetValue 项目:[窗体]![产

品]![供应商ID]

表达式:供应商ID

将“供应商ID”控件设置为“供应商”

窗体上的当前供应商。

GoToControl 控件名称:类别ID 转到“类别ID”控件。

通过使用宏同步窗体

下面的宏会在“供应商”窗体的右下角打开一个“产品列表”窗体,显示当前供应商所供应的产品。它显示了 Echo、MsgBox、GoToControl、StopMacro、OpenForm 及 MoveSize 等操作的使用方法,同时也显示了 MsgBox、GoToControl 和StopMacro 操作的条件表达式的使用方法。该宏应附加到“供应商”窗体的“回顾产品”按钮上。

条件操作参数:设置备注

Echo 打开回响:否在宏执行过程中停止屏幕更新。

IsNull([SupplierID]) MsgBox 消息:请移至要查看其

产品的供应商记录上,

然后再次单击“回顾产

品”按钮。

发嘟嘟声:是

类型:无

标题:选择供应商

如果“供应商”

窗体中没有当前

供应商的数据,则

显示一条信息。

... GoToControl 控件名称:公司名称将焦点移到“公司名称”控件上。

... StopMacro 停止执行宏。

OpenForm 窗体名称:产品列表

视图:数据表

筛选名称:

Where 条件:[供应商

ID] = [窗体]![供应

商]![供应商ID]

数据模式:只读

窗口模式:普通

打开“产品列

表”窗体并显示

当前供应商的产

品。

MoveSize 右:0.7799 英寸

下:1.8 英寸

将“产品列表”

窗体放在“供应

商”窗体的右下

方。

OpenQuery 方法

参阅应用于示例特性

在 Visual Basic 中,OpenQuery方法执行OpenQuery操作。

expression.OpenQuery(QueryName, View, DataMode)

expression 必需。返回“应用于”列表中的一个对象的表达式。QueryName必需Variant型。字符串表达式(字符串表达式:任一求值为一列连续字符的表达式。表达式的元素可以是:返回字符串或字符串 Variant (VarType 8) 的函数;字符串字面值、常量、变量或 Variant。),表示当前数据库中查询(查询:有关表中所存数据的问题,或要对数据执行操作的请求。查询可以将多个表中的数据放在一起,以作为窗体、报表或数据访问页的数据源。)的有效名称。如果在某类库数据库(类库数据库:可以从任意应用程序中调用的过程和数据库对象的集合。为了使用库中的项,必须先建立从当前数据库到类库数据库的引用。)中使用OpenQuery方法的 Visual Basic 代码,Microsoft Access 将先在该类库数据库中搜索具有该名称的查询,然后再在当前数据库中搜索。

View可选AcView。

AcView 可以是下列 AcView 常量之一:

acViewDesign

acViewNormal默认

acViewPivotChart

acViewPivotTable

acViewPreview

如果 queryname 参数是ReturnsRecords属性设为 -1 的选择查询(选择查询:就表中存储的数据提出问题,然后在不更改数据的情况下以数据表的形式返回一个结果集。)、交叉表查询(交叉表查询:这种查询用于对记录计算总计、平均值、计数或其他类型总计,然后按照两类信息对结果进行分组:一组信息分布在数据表的左侧,另一组分布在数据表的顶端。)、联合查询(联合查询:该查询使用 UNION 运算符来合并两个或更多选择查询的结果。)或传递查询(传递查询:SQL 特定查询,可以用于直接向 ODBC 数据库服务器发送命令。通过使用传递查询,可以直接使用服务器上的表,而不用让 Microsoft Jet 数据库引擎处理数据。)的名称,则acViewNormal将显示查询的结果集(结果集:运行查询或应用筛选条件所得的一组记录。)。如果 queryname 参数引用的是ReturnsRecords属性设为 0 的操作查询(操作查询:用来复制或更改数据的查询。操作查询包括追加查询、删除查询、生成表查询和更新查询。在“数据库”窗口中,是以其名称后紧跟感叹号 (!) 来标识的。)、数据定义查询(数据定义查询:包含数据定义语言 (DDL) 语句的 SQL 特有查询。这些语句可用来创建或更改数据库中的对象。)或传递查询,则acViewNormal将执行查询。

如果将该参数留空,将采用默认常量 (acViewNormal)。

DataMode可选AcOpenDataMode。

AcOpenDataMode 可以是下列 AcOpenDataMode 常量之一:

acAdd

acEdit默认

acReadOnly

如果将该参数留空,将采用默认常量 (acEdit)。

说明

有关该操作及其参数如何使用的详细信息,请参阅该操作的主题。

注释该方法仅可用于Microsoft Access 数据库(数据库:与特定主题或用途相关的数据的集合。在数据库内,关于特定实体的信息(如雇员或订单)分类归纳到表、记录和字段中。)环境 (.mdb)。如果使用 Microsoft Access 项

目(Microsoft Access 项目:与 Microsoft SQL Server 数据库连接且用于创建客户/服务器应用程序的 Access 文件。项目文件中不包含任何数据或基于数据定义的对象(如表或视图)。)环境 (.adp),请参阅OpenView或OpenStoredProcedure方法。

如果指定 datamode 参数,并将 view 参数留空,那么必须包含 view 参数的逗号。如果将末端的参数留空,则在指定的最后一个参数后面不需使用逗号。

示例

下面的示例在“数据表”视图中打开“销售额总计查询”,使用户能够查看,但是不能编辑或添加记录。

DoCmd.OpenQuery "Sales Totals Query", , acReadOnly

全部隐藏

OpenQuery 操作

使用 OpenQuery 操作,可以在“数据表”视图(“数据表”视图:以行列格式显示来自表、窗体、查询、视图或存储过程的窗口。在“数据表”视图中,可以编辑字段、添加和删除数据,以及搜索数据。)、“设计”视图(“设计”视图:显示数据库对象(包括:表、查询、窗体、宏和数据访问页)的设计的窗口。在“设计”视图中,可以新建数据库对象和修改现有数据库对象的设计。)或“打印预览”(打印预览:打印文档时显示文档的一种视图。)中打开选择(选择查询:就表中存储的数据提出问题,然后在不更改数据的情况下以数据表的形式返回一个结果集。)查询或交叉表(交叉表查询:这种查询用于对记录计算总计、平均值、计数或其他类型总计,然后按照两类信息对结果进行分组:一组信息分布在数据表的左侧,另一组分布在数据表的顶端。)查询。该操作将运行一个操作查询(操作查询:用来复制或更改数据的查询。操作查询包括追加查询、删除查询、生成表查询和更新查询。在“数据库”窗口中,是以其名称后紧跟感叹号 (!) 来标识的。)。可以为查询选择数据输入方式。

注释此操作只在Microsoft Access 数据库(Microsoft Access 数据库:数据和对象(如表、查询或窗体)组成的集合,与特定的主题或用途有关。Microsoft Jet 数据库引擎用于管理数据。)环境 (.mdb) 下才可用。如果使用的是Access 项目(Microsoft Access 项目:与 Microsoft SQL Server 数据库连接且用于创建客户/服务器应用程序的 Access 文件。项目文件中不包含任何数据或基于数据定义的对象(如表或视图)。)环境 (.adp),请参见OpenView、OpenStoredProcedure或OpenFunction操作。

设置

OpenQuery 操作具有以下参数:

说明

查询名称要打开的查询名称。在“宏”窗口(“宏”窗口:用来创建和修改宏的窗口。)“操作参数”节的“查询名称”框中显示了当前数据库中的所有查询。该参数是必选参数。

如果在类库数据库(类库数据库:可以从任意应用程序中调用的过程和数据库对象的集合。为了使用库中的项,必须先建立从当前数据库到类库数据库的引用。)中运行包含 OpenQuery 操作的宏,Access 将首先在类库数据库中查找具有该名称的查询,然后再到当前数据库中查找。

视图打开查询的视图。可在“视图”框中选择“数据表”、“设计”、“打印预览”、“数据透视表”或“数据透视图”。默认值为“数据表”。

数据模式查询的数据输入模式。该参数仅应用于在“数据表”视图中打开的查询。可选择“添加”(用户可以添加新记录(记录:关于人员、地点、事件或某些其他项的数据的集合。记录是表中行的逻辑等同项。),但不能编辑已有记录)、“编辑”(用户可以编辑已有记录,也可以添加记录)或“只读”(用户只能查看记录)。默认值为“编辑”。

说明

如果“视图”参数使用“数据表”,而查询的类型为选择、交叉表、联合(联合查询:该查询使用 UNION 运算符来合并两个或更多选择查询的结果。)或传递(传递查询:SQL 特定查询,可以用于直接向 ODBC 数据库服务器发送命令。通过使用传递查询,可以直接使用服务器上的表,而不用让 Microsoft Jet 数据库引擎处理数据。)查询,并且查询的“返回记录”属性设置为“是”,那么Access 会显示查询结果集(结果集:运行查询或应用筛选条件所得的一组记录。);如果该查询为操作、数据定义(数据定义查询:包含数据定义语言 (DDL) 语句的 SQL 特有查询。这些语句可用来创建或更改数据库中的对象。)或传递查询,且查询的“返回记录”属性设置为“否”,那么只运行该查询。OpenQuery 操作类似于在“数据库”窗口(“数据库”窗口:在打开 Access 数据库或 Access 项目时出现的窗口。它显示用于新建数据库对象和打开现有对象

的快捷方式。)中单击“对象”下的“查询” 后单击“打开”按钮或“设计”按钮,然后选择查询。使用该操作,可以选择附加选项。

提示

?在“数据库”窗口中可以选择查询,并将其拖到宏操作行(操作行:位于“宏”窗口上部分的一行,用来输入与特定宏或宏组相关联的宏名、操

作、条件和备注。)中。这样可以自动创建在“数据表”视图中打开查询的 OpenQuery 操作。

如果在查询打开时切换到“设计”视图,将删除该查询的“数据模式”参数。即使用户回到“数据表”视图中,该设置也不再有效。

?在运行操作查询时,如果不想显示通常出现的系统消息(表明运行的是操作查询,并显示将受影响的记录数),可以使用 SetWarnings 操作来避

免显示这些消息。

若要在 Microsoft Visual Basic 中运行 OpenQuery 操作,请使用DoCmd对象的OpenQuery方法。

全部隐藏

RunSQL 操作

通过使用相应的SQL 语句(SQL 字符串/语句:用于定义 SQL 命令(如 SELECT、UPDATE 或 DELETE)的表达式,可以包含子句(如 WHERE 和 ORDER BY)。SQL 字符串/语句通常用在查询和聚合函数中。),可以用 RunSQL 操作来运行Microsoft Access 的操作查询(操作查询:用来复制或更改数据的查询。操作查询包括追加查询、删除查询、生成表查询和更新查询。在“数据库”窗口中,是以其名称后紧跟感叹号 (!) 来标识的。)。还可以运行数据定义查询(数据定义查询:包含数据定义语言 (DDL) 语句的 SQL 特有查询。这些语句可用来创建或更改数据库中的对象。)。

设置

RunSQL 操作具有以下参数:

操作

说明

参数

SQL 所要运行的操作查询或数据定义查询对应的 SQL 语句。该语句的最大长

语句度是 255 个字符。该参数是必需的。

使用事务处理选择“是”则在事务处理(事务处理:对数据库的数据和构架所作的一系列更改。)中包含这个查询。如果不想使用事务处理的话,则选择“否”。默认值为“是”。在 Access 97 之前,当运行该操作时,Access 总是要在事务处理中包括查询。以BeginTrans方法开始,执行 SQL 语句,然后以CommitTrans方法结束。如果将此参数设为“否”,则查询将运行得更快。

说明

用操作查询可以追加、删除和更新记录,还可以将查询的结果集(结果集:运行查询或应用筛选条件所得的一组记录。)存为一个新表。用数据定义查询则可以创建、改变和删除表,还可以创建和删除索引。通过 RunSQL 操作可以用一个宏直接来完成这些操作而不需要使用存储的查询。

如果需要键入一个超过 255 个字符的 SQL 语句,请在 Visual Basic 中使用DoCmd对象的RunSQL方法。在 Visual Basic 中 SQL 语句可长达 32,768 个字符。

Access 查询实际上是 SQL 语句,这些语句是当您在“查询”窗口(“查询”窗口:可以切换到“设计”视图、“数据表”视图、“SQL 视图”或“打印预览”视图中运用查询的窗口。)中使用设计网格(设计网格:在查询“设计”视图或“高级筛选/排序”窗口中设计查询或筛选时所用的网格。对于查询,该网格以前称为“QBE 网格”。)设计查询时创建的。下表给出了 Access 的操作查询和数据定义查询以及相应的 SQL 语句。

查询类型SQL 语句

操作

追加(追加查询:一种操作查询,它将查询结果集内的记录添

加到现有表的尾部。)

INSERT INTO 删除(删除查询:一种查询(SQL 语句),它从一个或多个表

中删除那些符合指定条件的行。)

DELETE

生成表(生成表查询:一种查询(SQL 语句),它创建一个新

表,然后通过从一个现有表中复制记录,在新表中创建记录

(行)。)

SELECT...INTO

更新(更新查询:一种操作查询(SQL 语句),它根据所指定

的条件(查找条件)更改记录集。)

UPDATE

数据定义(SQL 特定查询)

创建表CREATE TABLE 修改表ALTER TABLE 删除表DROP TABLE

创建索引CREATE INDEX 删除索引DROP INDEX

另外,还可在这些语句中使用 IN 子句来修改另一个数据库中的数据。

注释若要在宏中运行选择查询(选择查询:就表中存储的数据提出问题,然后在不更改数据的情况下以数据表的形式返回一个结果集。)或交叉表查询(交

叉表查询:这种查询用于对记录计算总计、平均值、计数或其他类型总计,然后按照两类信息对结果进行分组:一组信息分布在数据表的左侧,另一组分布在数据表的顶端。),可以使用 OpenQuery 操作的“视图”参数在“数据表”视

图(“数据表”视图:以行列格式显示来自表、窗体、查询、视图或存储过程的窗口。在“数据表”视图中,可以编辑字段、添加和删除数据,以及搜索数据。)中打开现有的选择查询或交叉表查询。还可以相同的方式运行现有的操作查询和SQL 特定查询(SQL 特定查询:由 SQL 语句组成的查询。子查询、传递查询、联合查询和数据定义查询都是 SQL 特定查询。)。

提示

若要查看与 Access 查询对应的 SQL 语句,请在“查询”窗口中单击“视图”菜单上的“SQL 视图”命令。可以将列出的 SQL 语句作为模板来创建用 RunSQL 操作运行的查询。将 SQL 语句复制到 RunSQL 操作的“SQL 语句”参数上,其效果等同于在“查询”窗口中运行该 Access 查询。

DeleteObject 操作

用 DeleteObject 操作可删除指定的数据库对象(数据库对象:Access 数据库包含诸如表、查询、窗体、报表、页、宏和模块等对象;Access 项目包含诸如窗体、报表、页、宏和模块等对象。)。

设置

DeleteObject 操作具有以下参数:

说明

对象类型要删除对象的类型。可在“宏”窗口(“宏”窗口:用来创建和修改宏的窗口。)“操作参数”部分的“对象类型”框中单击“表”、“查询”、“窗体”、“报表”、“宏”、“模块”、“数据访问页”、“服务器视图”、“图表”、“存储过程”或“函数”。若要删除“数据库”窗口(“数据库”窗口:在打开 Access 数据库或 Access 项目时出现的窗口。它显示用于新建数据库对象和打开现有对象的快捷方式。)中的选定对象,请将该参数留空。

对象名称要删除对象的名称。“对象名称”框中显示了数据库中由“对象类型”参数指定的类型的所有对象。如果“对象类型”框为空,则也请将本框留空。如果在某个类库数据库(类库数据库:可以从任意应用程序中调用的过程和数据库对象的集合。为了使用库中的项,必须先建立从当前数据库到类库数据库的引用。)中运行一个包含 DeleteObject 操作的宏,Microsoft Access 将首先在该类库数据库中查找具有该名称的对象,然后再到当前数据库中查找。

警告如果“对象类型”和“对象名称”参数为空,Access 在遇到DeleteObject 操作而删除“数据库”窗口中选定的对象时并不显示警告信息。说明

用 DeleteObject 操作可删除在运行宏时创建的临时对象。例如,在用OpenQuery 操作运行一个生成表查询(生成表查询:一种查询(SQL 语句),

它创建一个新表,然后通过从一个现有表中复制记录,在新表中创建记录(行)。)时可以创建一个临时的表。在使用完该临时表之后,就可用 DeleteObject 操作删除它。

该操作的效果与在“数据库”窗口中选择一个对象,然后按 Del 键或单击“编辑”菜单上的“删除”是一样的。

若要在 Visual Basic 中运行 DeleteObject 操作,请使用DoCmd对象的DeleteObject方法。

CopyFile 方法

描述

把一个或多个文件从一个地方复制到另一个地方。

语法

object.CopyFile source, destination[, overwrite]

CopyFile 方法语法有如下几部分:

部分描述

object必需的。object始终是一个FileSystemObject 的名字。source必需的。指明一个或多个要被复制文件的字符串文件说

明,它可以包括通配符。

destination必需的。指明source 中的一个或多个文件要被复制到的

接受端的字符串,不允许有通配符。

overwrite选项的。Boolean 值,它表示存在的文件是否被覆盖。如

果是True,文件将被覆盖;如果是False,它们不被覆盖。

缺省值是True。注意如果destination 具有只读属性设

置,不论overwrite 值如何,CopyFile 都将失败。

说明

通配符只能用在source 参数的最后一个路径部件。例如,你可以在下面请况使用通配符:

FileSystemObject.CopyFile "c:\mydocuments\letters\*.doc",

"c:\tempfolder\"

但下面情况不能使用:

FileSystemObject.CopyFile "c:\mydocuments\*\R1???97.xls",

"c:\tempfolder"

如果source 包含通配符或destination 以路径分隔符(\)为结尾,则认为destination 是一个已存在文件夹,在其中复制相匹配的文件。否则认为destination 是一个要创建文件的名字。不论是那种情况,当复制一个文件时,可能发生三种事件。

?如果destination 不存在,source 得到复制。这是通常的情况。

?如果destination 是一个已存在的文件,则当overwrite 值为False 时发生一个错误,否则,source的复制文件将试图覆盖已存在文件。

?如果destination 是一个目录,发生一个错误。

如果使用通配符的source 不能和任何文件匹配,同样产生一个错误。CopyFile 方法停止在它遇到的第一个错误上。不要试图回卷或撤消错误发生前所做的任何改变。

CopyFolder 方法

描述

从一个地方递归地复制一个文件夹到另一个地方。

语法

object.CopyFolder source, destination[, ove r write]

CopyFolder 方法语法有如下几部分:

部分描述

Object必需的。始终为一个FileSystemObject的名字。

source必需的。指明一个或多个被复制文件夹的字符串文件夹说明,可以包括通配符。

destination必需的。指明source 中被复制文件夹和子文件夹的接受端的字符串,不允许有通配符。

overwrite选项的。Boolean 值,它表示已存在的文件夹是否被覆盖。如果为True,文件被覆盖。如果为False,文件不被覆盖。缺省值

为True。

说明

通配符仅可用于source 参数的最后一个路径部件。例如你可以在下面情况使用它:

FileSystemObject.CopyFolder "c:\mydocuments\letters\*",

"c:\tempfolder\"

但不能在下面情况使用它:

FileSystemObject.CopyFolder "c:\mydocuments\*\*", "c:\tempfolder\"

如果source 包含通配符或destination 以路径分隔符(\)为结尾,则认为destination 是一个已存在的文件夹,在其中复制相匹配的文件夹和子文件夹。否则认为destination 是一个要创建的文件夹的名字。不论何种情况,当复制一个文件夹时,可能发生四种事件。

?如果destination 不存在,source 文件夹和它所有的内容得到复制。这是通常的情况。

?如果destination 是一个已存在的文件,则发生一个错误。

?如果destination 是一个目录,它将尝试复制文件夹和它所有的内容。如果一个包含在source 的文件已在destination 中存在,当overwrite 为

False 时发生一个错误,否则它将尝试覆盖这个文件。

?如果destination 是一个只读目录,当尝试去复制一个已存在的只读文件到此目录并且overwrite为False 时,则发生一个错误。

如果source 使用的通配符不能和任何文件夹匹配,也发生一个错误。

CopyFolder 方法停止在它遇到的第一个错误上。不要尝试回卷错误发生前所做的任何改变。

Move 方法

描述

将一个指定的文件或文件夹从一个地方移动到另一个地方。

语法

object.Move destination

Move 方法语法有如下几部分:

部分描述

object必需的。始终是一个File 或Folder 对象的名字。destination必需的。文件或文件夹要移动到的目标。不允许有通配符。

说明

Move 方法对一个File 或Folder 的结果和执行

FileSystemObject.MoveFile 或FileSystemObject.MoveFolder操作的结果是一样的。但应当注意,后面的方法能够移动多个文件或文件夹。

FileCopy 语句

复制一个文件。

语法

FileCopy source,destination

FileCopy语句的语法含有以下这些命名参数:

部分描述

source必要参数。字符串表达式,用来表示要被复制的文件名。source可以包含目录或文件夹、以及驱动器。

destination必要参数。字符串表达式,用来指定要复制的目地文件名。

destination可以包含目录或文件夹、以及驱动器。

命名参数

一参数,在对象库中预先定义了其名称。对每个参数,不必拘泥于语法所规定的特定顺序来提供值,而是只需按任何顺序用命名参数分配值。例如,假设一方法接受了三个参数:

DoSomeThing namedarg1, namedarg2, namedarg3

在对命名参数赋值时,可使用以下语句:

DoSomeThing namedarg3 := 4, namedarg2 := 5, namedarg1 := 20

注意,命名的参数不必按语法中安排的正规顺序出现。

说明

如果想要对一个已打开的文件使用FileCopy语句,则会产生错误。

Copy 方法

描述

把一个指定的文件或文件夹从一个地方复制到另一个地方。

语法

object.Copy destination[, overwrite]

Copy 方法语法有如下几部分:

部分描述

object必需的。始终是一个File 或Folder 对象的名字。destination必需的。文件或文件夹要复制到的接受端。不允许有通配符。overwrite可选的。Boolean 值,如果该值为True (缺省),则已存在的文件或文件夹将被覆盖。如果为False,则它们不被覆盖。

说明

对一个File 或Folder,Copy 方法的结果和执行

FileSystemObject.CopyFile 或FileSystemObject.CopyFolder 操作的结果是一样的,在后者中,object所引用的文件或文件夹是作为参数传递的。应当注意,后面的方法能够复制多个文件或文件夹。

TransferDatabase 方法

参阅应用于示例特性

在 Visual Basic 中,TransferDatabase方法执行TransferDatabase操作。expression.TransferDatabase(TransferType, DatabaseType, DatabaseName, ObjectType, Source, Destination, StructureOnly, StoreLogin) expression 必需。返回“应用于”列表中的一个对象的表达式。TransferType可选AcDataTransferType。

AcDataTransferType 可以是下列 AcDataTransferType 常量之一:

acExport

acImport默认

acLink

如果将该参数留空,将采用默认常量 (acImport)。

注释Microsoft Access 项目(Microsoft Access 项目:与 Microsoft SQL Server 数据库连接且用于创建客户/服务器应用程序的 Access 文件。项目文件中不包含任何数据或基于数据定义的对象(如表或视图)。) (.adp) 不支持acLink转换类型。

DatabaseType可选Variant型。字符串表达式(字符串表达式:任一求值为一列连续字符的表达式。表达式的元素可以是:返回字符串或字符串 Variant (VarType 8) 的函数;字符串字面值、常量、变量或 Variant。),表示一类可用来导入、导出或链接数据的数据库类型的名称。

数据库的类型

Microsoft Access(默认值)

Jet 2.x

Jet 3.x

dBase III

dBase IV

dBase 5.0

Paradox 3.x

Paradox 4.x

Paradox 5.x

Paradox 7.x

ODBC 数据库

WSS

在“宏”窗口(“宏”窗口:用来创建和修改宏的窗口。)中 TransferDatabase 操作的“数据库类型”操作参数的列表中可以查看数据库类型。

DatabaseName可选Variant型。字符串表达式,表示要用来导入、导出或链接数据的数据库的完整名称(包括路径)。

ObjectType可选AcObjectType。

AcObjectType 可以是下列 AcObjectType 常量之一:

acDataAccessPage

acDefault

acDiagram

acForm

acFunction

acMacro

acModule

acQuery

acReport

acServerView

acStoredProcedure

acTable默认

该参数是指要对其数据进行导入、导出或链接的对象的类型。仅当在两个Microsoft Access 数据库之间导入或导出数据时,才可以指定acTable外的对象。如果要将 Microsoft Access 选择查询(选择查询:就表中存储的数据提出问题,然后在不更改数据的情况下以数据表的形式返回一个结果集。)的结果导出为另一类型的数据库,请指定acTable参数。

如果将该参数留空,将采用默认常量 (acTable)。

注释显示在该参数“自动列表成员”列表中的acDefault常量对于该参数是无效的。必须选择上述常量列表中的常量。

Source可选Variant型。字符串表达式,表示要对其数据进行导入、导出或链接的对象的名称。

Destination可选Variant型。字符串表达式,表示目标数据库中所导入、导出或链接的对象的名称。

StructureOnly可选Variant型。使用True (–1) 可以只导入或导出数据库表的结构。使用False (0) 将导入或导出表的结构及其数据。如果将该参数留空,将采用默认值 (False)。

StoreLogin可选Variant型。使用True可以存储数据库链接表的连接字符串(连接字符串:用于打开外部数据库的字符串表达式。)中、用于ODBC 数据库(ODBC 数据库:在 ODBC 数据库中,可以使用开放式数据库连接 (ODBC) 驱动程序来导入、链接或导出数据。)的登录标识 (ID) 和密码。如果进行了这种设置,则不必在每次打开表时都进行登录。如果不想存储登录 ID 和密码,则可以使用False。如果将该参数留空,将采用默认值 (False)。该参数仅可用于Visual Basic。

说明

有关该操作及其参数如何使用的详细信息,请参阅该操作的主题。

语法中的可选参数允许留空,但是必须包含参数的逗号。如果将位于末端的参数留空,则在指定的最后一个参数后面不需使用逗号。

ODBC 数据库的管理员可以禁用 saveloginid 参数所提供的功能,要求所有的用户在每次连接到 ODBC 数据库时,都必须输入登录标识和密码。

注释还可以通过使用Recordset对象的ActiveConnection属性,来使用ActiveX 数据对象 (ADO) (数据访问对象 (DAO):一种数据访问接口,与Microsoft Jet 和符合 ODBC 的数据源通讯,以连接到、检索、操作和更新数据和数据库结构。)创建链接。

若要链接到 Windows SharePoint Services 列表,必须为DatabaseName参数指定下列语法:

WSS;HDR=NO;IMEX=2;DATABASE=;LIST=

GUID>;VIEW=;RetrieveIds=Yes;TABLE=

其中 是到 Windows SharePoint Services 网站的路径, 是列表的全局唯一标识符,而 是列表的友好名称。获取此信息的最简单方法是执行下列步骤:

1.在数据库窗口中,创建链接到 Windows SharePoint Services 列表的新

表。

2.在“设计”视图中打开链接表。

3.单击“视图”菜单上的“属性”。

所需字符串列在Description属性中。

示例

下面的示例从 Microsoft Access 数据库 NWSales.mdb 中将“NW Sales for April”报表导入到当前数据库的“Corporate Sales for April”报表中:DoCmd.TransferDatabase acImport, "Microsoft Access", _

"C:\My Documents\NWSales.mdb", acReport, "NW Sales for April", _ "Corporate Sales for April"

下面的示例将 ODBC 数据库的“Authors”表链接到当前数据库:

DoCmd.TransferDatabase acLink, "ODBC Database", _

"ODBC;DSN=DataSource1;UID=User2;PWD=www;LANGUAGE=us_english;" _ & "DATABASE=pubs", acTable, "Authors", "dboAuthors"

下列示例将“Customers”表的内容导出到 Windows SharePoint Services 网站“http://example/WSSSite”中名为“Customer List”的新列表中。DoCmd.TransferDatabase transfertype:=acExport, databasetype:="WSS", _ databasename:="http://example/WSSSite", _

objecttype:=acTable, Source:="Customers", _

Destination:="Customer List",

structureonly:=False

TransferSpreadsheet 方法

参阅应用于示例特性

在 Visual Basic 中,TransferSpreadsheet方法执行TransferSpreadsheet 操作。

expression.TransferSpreadsheet(TransferType, SpreadsheetType, TableName, FileName, HasFieldNames, Range, UseOA)

expression 必需。返回“应用于”列表中的一个对象的表达式。TransferType可选AcDataTransferType。

AcDataTransferType 可以是下列 AcDataTransferType 常量之一:

acExport

acImport默认

acLink

如果将该参数留空,将采用默认常量 (acImport)。

SpreadsheetType可选AcSpreadSheetType。

AcSpreadSheetType 可以是这些 AcSpreadSheetType 常量之一:acSpreadsheetTypeExcel3

acSpreadsheetTypeExcel4

acSpreadsheetTypeExcel5

acSpreadsheetTypeExcel7

acSpreadsheetTypeExcel8默认

acSpreadsheetTypeExcel9默认

acSpreadsheetTypeLotusWJ2 -仅适用于日文版acSpreadsheetTypeLotusWK1

acSpreadsheetTypeLotusWK3

acSpreadsheetTypeLotusWK4

注释可以链接 Lotus 1-2-3 电子表文件中的数据,但是这些数据在Microsoft Access 中是只读的。可以导入和链接 Lotus .WK4 文件,但是不能将 Microsoft Access 数据导出到此电子表格式中。而且,Microsoft Access 不再支持使用此方法导入、导出或链接 Lotus .WKS 或 Microsoft Excel 2.0 电子表中的数据。

如果将该参数留空,将采用默认常量 (acSpreadsheetTypeExcel8)。

TableName可选Variant型。字符串表达式(字符串表达式:任一求值为一列连续字符的表达式。表达式的元素可以是:返回字符串或字符串 Variant (VarType 8) 的函数;字符串字面值、常量、变量或 Variant。),表示要向其中导入电子表格数据、从中导出电子表格数据或链接电子表格数据的 Microsoft Access 表的名称,或要将其结果导出到电子表格的 Microsoft Access 选择查询(选择查询:就表中存储的数据提出问题,然后在不更改数据的情况下以数据表的形式返回一个结果集。)的名称。

FileName可选Variant型。字符串表达式,表示要从其中导入、导出到或链接到的电子表格的名称与路径。

HasFieldNames可选Variant型。使用True (-1) 可以在导入或链接时,将电子表格中的第一行用作字段名。使用False (0) 可以将数据表第一行看成普通数据。如果将该参数留空,则采用默认值 (False)。在将 Microsoft Access 表或选择查询数据导出到电子表格中时,无论为该参数输入了何值,字段名称都将插入到电子表格的第一行中。

Range可选Variant型。字符串表达式,表示电子表格中单元格的有效范围或范围名称。该参数仅可用于导入。若要导入整个电子表格,请将该参数留空。导出到电子表格时,必须将该参数留空。如果输入了一个范围,导出将失败。UseOA可选Variant型。

说明

有关该操作及其参数如何使用的详细信息,请参阅该操作的主题。

语法中的可选参数允许留空,但是必须包含参数的逗号。如果将位于末端的参数留空,则在指定的最后一个参数后面不需使用逗号。

注释还可以通过使用Recordset对象的ActiveConnection属性,来使用ActiveX 数据对象 (ADO) (数据访问对象 (DAO):一种数据访问接口,与Microsoft Jet 和符合 ODBC 的数据源通讯,以连接到、检索、操作和更新数据和数据库结构。)创建链接。

示例

下面的示例在 Lotus 电子表格 Newemps.wk3 的指定范围内将表导入到Microsoft Access 的“Employees”表,并用电子表格中的第一行作为字段名。DoCmd.TransferSpreadsheet acImport, 3, _

"Employees","C:\Lotus\Newemps.wk3", True, "A1:G12"

Source 属性

参阅应用于示例特性

使用Source属性可以指定查询的源表或查询的源连接字符串(连接字符串:用于打开外部数据库的字符串表达式。)和源数据库。如果正在访问的是外部表中的数据,而没有对表进行链接,则必须设置该属性。

提示

使用Source属性和SourceConnectStr属性访问 ODBC 表,要比使用链接

表(链接表:存储在已打开数据库之外的文件中的表,Access 可以访问它的记录。可以对链接表中的记录进行添加、删除和编辑等操作,但不能更改其结构。)慢得多。

设置

Access数据库VBA常用标准函数

Access数据库VBA常用标准函数 一、算术函数 1.绝对值函数:Abs(<表达式>) 返回数值表达式的绝对值。如Abs(-3)=3 2.向下取整函数:Int(<数值表达式>) 返回数值表达式的向下取整数的结果,参数为负值时返回小于等于参数值的第一负数。 3.取整函数:Fix(<数值表达式>) 返回数位表达式的整数部分,参数为负值时返回大于等于参数值的第一负数。 例如:Int(3.25)=3,Fix(3.25)=3但Int(-3.25)= -4,Fix(-3.25)= -3 4.四舍五入函数:Round(<数值表达式>[,<表达式>]) 按照指定的小数位数进入四舍五入运算的结果。[<表达式>]是进入四舍五入运算小数点右边应保留的位数。 例如:Round(3.255,1)= 3.3;Round(3. 754,2)= 3.75;Round(3.754,0)= 4 5.开平方函数:Sqr(<数值表达式>) 计算数值表达式的平方根。例如:Sqr(9)= 3 6.产生随机数函数:Rnd(<数值表达式>) 产生一个0-1之间的随机数,为单精度类型。 例如:Int(100 * Rnd)’产生[0,99]的随机整数Int(101 * Rnd)’产生[0,100]的随机整数 7..求平均值函数Avg() 例如:在tstud表中求小于所有学生年龄的平均值的学生<(select avg([年龄]) from tstud) 8.. 求和函数sum() 二、字符串函数 1.字符串检索函数:InStr([Start,] [,Compare]) 检索子字符申Str2在字符串Strl中最早出现的位置,返回一整型数。Start为可选参数,为数值式,设置检索的起始位置。如省略,从第一个字符开始检索;注意,如果Strl的申长度为零,或Str2表示的申检索不到,则InStr返回0;如果Str2的串长度为零,InStr返回Start的值。 例如:strl =“98765”str2 =“65”s = InStr(strl ,str2)’返回4 s = InStr(3,“aSsiAB”,“A”,1)’返回5。从字符s开始,检索出字符A 2.字符申长度检测函数:Len(<字符申表达式>或<变量名>) 返回字符串所含字符数。注意,定长字符,其长度是定义时的长度,和字符串实际值无关。 例如:lenl = Len(“12345”)’返回5len4 = Len(“考试中心”)’返回4 3.字符串截取函数 Left (<字符串表达式>,):字符串左边起截取N个字符。 Right(<字符串表达式>,):字符串右边起截取N个字符。 Mid(<字符串表达式>,,[N2]):从字符申左边第N1个字符起截取N2个字符。 例如:strl =“opqrst” str2 =“计算机等级考试” str = Left(strl,3)’返回“opq”str = Left(str2,4)’返回“计算机等” str = Right(strl,2)’返回“st”str = Right(str2,2)’返回“考试” str = Mid(strl,4,2)’返回“rs”str = Mid(str2,1,3)’返回“计算机” str = Mid(str2,4,)’返回“等级考试” 4.生成空格字符函数:Space(<数值表达式>) 返回数值表达式的值指定的空格字符数。 例如:strl = Space(3)’返回3个空格字符 5.大小写转换函数 Ucase(<字符串表达式>):将字符串中小写字母转换成大写字母。 Lcase(<字符串表达式>):将字符串中大写字母转换成小写字毋。 例如:strl = Ucase(“fHkrYt”)’返回“FHKRYT”str2 = Lcase(“fHKrYt”)’返回“fhkryt” 6.删除空格函数 Ltrim(<字符串表达式>):删除字符串的开始空格。

Access 常用函数

Access常用函数 ▲日期/时间 CDate将字符串转化成为日期,如:CDate("2005/4/5")。 Date返回当前日期。 DateAdd返回包含一个日期的值,这一日期还加上了一段时间间隔。如:dateAdd("d",30,Date())将当前日期加上30天。 其中d还可换为: yyyy年 q季 m月 y一年的日数 d日 w一周的日数 ww周 h时 n分钟 s秒 DateDiff判断两个日期之间的间隔,如:DateDiff("d","2006-5-1","2006-6-1")返回31,其中d可以换为上述的yyyy、q、m、y、d、w、ww、h、n、s等。DatePart返回日期的某个部分,如:DatePart("d","2006-5-1")返回1,即1号,d可以换为上述的yyyy、q、m、y、d、w、ww、h、n、s等。 Now返回当前时间(完整时间,包括年月日小时分秒) Date返回当前的系统日期 Year返回某个日期的年 Month返回某个日期的月 Day返回某个日期日 Time返回当前的系统时间 Hour返回某个日期的小时 Minute返回日期的分钟 Second返回日期的秒 Weekday返回某个日期的当前星期(星期天为1,星期一为2,星期二为3...) ▲检查 IsDate判断是否是日期,是日期返回-1,不是日期返回0 IsEmpty检测是否为空(不过经测试,不管什么情况,都返回0) IsNull检测是否为Null值,null值返回0,非null值返回-1 IsNumeric检测是否为数字,是数字返回-1,否则返回0 ▲算术 Abs绝对值 Atn返正切值。 Cos余弦值 Exp返回e的给定次幂。

Access中的常用函数

Access中的常用函数 1.Count 函数 计算查询所返回的记录数 语法 Count(expr) expr 占位符代表字符串表达式,它标识的字段包含了要统计的数据,或者是使用该字段的数据执行计算的表达式。expr 中的操作数可包括表字段名或函数名(可以是固有的或者用户自定义的函数,但不能是其他 SQL 聚合函数)。可以统计包括文本在内的任何类型数据。 说明 可以使用Count来统计基本查询的记录数。例如,可以通过Count来统计已发往特定城市的定单数目。 尽管 expr 能够对字段执行计算,但是Count仅仅计算出记录的数目。记录中所存储的数值类型与计算无关。 Count函数不统计包含Null字段的记录,除非 expr 是星号 (*) 通配符。如果使用了星号通配符,Count会计算出包括包含Null字段在内的所有记录的数目。使用Count(*)方式比使用Count([Column Name])方式快很多。不要用单引号 (' ') 将星号括起来。下面的示例计算 Orders 表中的记录数目。 SELECT Count(*) AS TotalOrders FROM Orders; 如果 expr 标识多个字段,那么Count函数仅统计至少有一个字段为非Null值的记录。如果所有指定字段均为Null值,那么该记录不被统计在内。可以使用 & 号分隔字段名。下面的示例显示了如何将计算限于那些 ShippedDate 或 Freight 为非Null值的记录: SELECT Count('ShippedDate & Freight') AS [Not Null] FROM Orders; 可以在查询表达式中使用Count。也可以将该表达式用于QueryDef对象的SQL属性中,或者在基于 SQL 查询创建Recordset对象时使用该表达式。

Access中变量、函数及表达式的含义及应用

作业要求:求Access、变量、函数及表达式的值。 通过立即窗口完成以下各题 1.填写命令的结果 ?7\2 结果为 3 ?7 mod 2 结果为 1 ?5/2<=10 结果为 True ?#2012-03-05# 结果为 2012-03-05 ?"VBA"&"程序设计基础" 结果为 VBA程序设计基础 ?"Access"+"数据库" 结果为 Access数据库 ?"x+y="&3+4 结果为 x+y= 7 a1=#2009-08-01# a2=a1+35 ?a2 结果为 2012-09-05 ?a1-4 结果为 2012-07-28 2.数值处理函数 在立即窗口中输入命令结果功能 ?int(-3.25 -4 返回不大于-3.25的最 大整数 ?sqr(9 3 求平方根 ?sgn(-5 -1 返回正负1或0 ?fix(15.23515 返回15.235的整数部 分

?round(15.345,215.34 使15.345保留2位小 数 ?abs(-5 5 取绝对值 3.常用字符函数 在立即窗口中输入命令结果功能 ?InStr("ABCD","CD" 3 在字符串”ABCD”中找” CD”的位置 c="Beijing 赋值 University" ?Mid(c,4,3 jin 从字符串c的第四位开 始取三位 ?Left(c,7Beijing从字符串c的左边开始 取7位数 ?Right(c,10 University从字符串c的右边开始 取10位数 ?Len(c18字符串c的长度 d=" BA "赋值 ?"V"+Trim(d+"程序"VBA程序删除字符串d两端的空 格

计算机二级access数据库常用函数

一、算术函数 算术函数完成数学计算功能。主要包括以下算术函数: 1.绝对值函数:Abs(<表达式>) 返回数值表达式的绝对值。如Abs(-3)=3 2.向下取整函数:Int(<数值表达式>) 返回数值表达式的向下取整数的结果,参数为负值时返回小于等于参数值的第一负数。 3.取整函数:Fix(<数值表达式>) 返回数位表达式的整数部分,参数为负值时返回大于等于参数值的第一负数。 Int和Fix函数当参数为正值时,结果相同;当参数为负时结果可能不同。Int返回小于等于参数值的第一个负数,而Fix返回大于等于参数值的第一负数。 例如:Int(3.25)=3,Fix(3.25)=3但Int(-3.25)=-4,Fix(-3.25)=-3 4.四舍五入函数:Round(<数值表达式>[,<表达式>]) 按照指定的小数位数进入四舍五入运算的结果。[<表达式>]是进入四舍五入运算小数点右边应保留的位数。 例如:Round(3.255,1)=3.3;Round(3.255,2);Round(3.754,1)=3.28;Round(3.754,2)=3.75;Round(3.754,0)=4 5.开平方函数:Sqr(<数值表达式>)

计算数值表达式的平方根。例如:Sqr(9)=3 6.产生随机数函数:Rnd(<数值表达式>) 产生一个0-1之间的随机数,为单精度类型。 数值表达式参数为随机数种子,决定产生随机数的方式。如果数值表达式值小于0,每次产生相同的随机数;如果数值表达式值大于0。每次产生新的随机数;如果数值表达式值等于0,产生最近生成的随机数,且生成的随机数序列相同;如果省略数值表达式参数,则歌认参数位大于0。 实际操作时,先要使用无参数的Randomize语句初始化随机数生成器。以产生不同的随机数序列。 例如:Int(100*Rnd)’产生[0,99]的随机整数 Int(101*Rnd)’产生[0,100]的随机整数 Int(100,Rnd+l)’产生[i,l00]的随机整数 Int(100+200*Rnd)’产生[100,299]的随机整数 Int(100+201*Rnd)’产生[100,300]的随机整数 二、字符串函数 1.字符串检索函数:InStr([Start,][,Compare]) 检索子字符申Str2在字符串Strl中最早出现的位置,返回一整型数。Start为可选参数,为数值式,设置检索的起始位置。如省略,从

access公式大全

选择查询 1、设有数据表“pay”(考VFP的同学请下载{};考ACCESS的同学请下载{}),包含以下字段:工号(C)、姓名(C)、性别(C)、部门(C)、婚否(L)、工作日期(D)、工资(N)、补贴(N)、公积金(N),应发工资(N)。(填写命令时,均不考虑表的打开和关闭。) 要求填写VFP或SQL命令, 列出部门为“研发部”的男性职工的工号,姓名,性别和部门。 SELECT pay.工号, pay.姓名, pay.性别, pay.部门 FROM pay WHERE (((pay.性别)="男") AND ((pay.部门)="研发部")); 2、列出工资大于1800元的男性职工的工号、姓名、性别、部门和工资。 SELECT pay.工号, pay.姓名, pay.性别, pay.部门, pay.工资 FROM pay WHERE (((pay.性别)="男") AND ((pay.工资)>1800)); 3、列出部门为“财务科”和“研发部”的所有女性职工的信息。 SELECT pay.* FROM pay WHERE (((pay.性别)="女") AND (((pay.部门)="财务科") OR ((pay.部门)="研发部"))); 4、列出工资小2000元的女性职工的工号、姓名、性别、部门和工资。 SELECT pay.工号, pay.姓名, pay.性别, pay.部门, pay.工资 FROM pay WHERE (((pay.性别)="女") AND ((pay.工资)<2000)); 5、列出所有已婚男性职工的部门、姓名、婚否和工资。 SELECT pay.部门, pay.姓名, pay.婚否, pay.工资 FROM pay WHERE (((pay.婚否)=True) AND ((pay.性别)="男")); 6、列出部门为“财务科”的女性职工的工号,姓名,性别和部门。 SELECT pay.工号, pay.姓名, pay.性别, pay.部门 FROM pay WHERE (((pay.性别)="女") AND ((pay.部门)="财务科")); 7、列出所有未婚女性职工的部门、姓名、婚否和工资。 SELECT pay.部门, pay.姓名, pay.婚否, pay.工资 FROM pay WHERE (((pay.婚否)=False) AND ((pay.性别)="女")); 8、列出部门为“办公室”和“研发部”的所有男性职工的信息。 SELECT pay.*, pay.部门, pay.性别 FROM pay WHERE (((pay.部门)="办公室" Or (pay.部门)="研发部") AND ((pay.性别)="男")); 9、要求利用工号的前2位产生一个新字段“部门代码”,并在查询中显示原来的所有字段和“部门代码”字段。 SELECT Left([工号],2) AS 部门代码, pay.* FROM pay; 文档冲亿季,好礼乐相随mini ipad移动硬盘拍立得百度书包 赋值查询 1、列出工号前2位等于“02”的女性职工的信息。 2、列出工号前2位等于“01”的男性职工的信息。 SELECT pay.* FROM pay WHERE (((Left([pay].[工号],2))="01") AND ((pay.性别)="男")); 3、统计女性职工中工资不超过1800元的人数,并将结果赋给变量A56(或者新字段A56)。 SELECT Count([姓名]) AS a56 FROM pay

access常量变量常用函数与表达式

补充实验一常量、变量、常用函数与表达式[实验目标] ·正确书写不同类型的常量; ·掌握变量的赋值及使用方法; ·熟练掌握常用函数的用法; ·根据要求正确书写表达式。 [实验内容] ·常量的类型; ·变量的操作; ·常用函数; ·表达式的构建。 [实验环境] 本次实验的全部实验内容均要求在VBE的立即窗口中进行。 [方法分析与操作步骤] 1,常量 (1)数值型 ? 100 ? 1.45e3 ? 1.45e-2 (2)字符型 ? ”100” ? “a1b0c0” ? “abcd” (3)逻辑型 ? True ? False (4)日期型 ? # 06/20/12 # ? #2012/06/18# ? # 06-20-12 # ? # 2012-06-18 # ? #2012/06/18 10:32 # ? #2012/06/18 10:32 pm# 2.变量 nVar_x = 234. 5 cVar_y = “abc123” ? “nVar_ x=”, nVar_ x ? “cVar_y = “, cVar_y ? “nVar_ x=”& nVar_ x ? “cVar_y = “& cVar_y 3.函数

(l)数学函数 ①abs(); ? abs(36.9) ? abs( - 36.9) ②int(); ? int(36.9) ? int( - 36.9) ? int(36.3) ? int( - 36.3) ③fix(); ? fix(36.9) ? fix( - 36.9) ? fix(36.3) ? fix( - 36.3) ④sqr(); ? sqr(9) ? sqr(3) ? sqr(0) ? sqr( -9) ‘显示出错提示框 ⑤sin()、cos()、tan(); ? sin(60/180*3.14) ‘计算60°角的正弦值 ? cos(90/180*3.14) ‘计算90°角的余弦值 ? tan(45/180*3.14) ‘计算45°角的正切值 ⑥rnd(); ? rnd() ’产生O~l之间的随机数 ? rnd ? rnd(0) ‘产生最近生成的随机数 ? int(100*rnd) ‘产生[0,99]的随机整数 ? int(101*rnd) ‘产生[0,100]的随机整数 ? int(100*rnd+1) ‘产生[1,100]的随机整数 ? int(100 + 200*rnd) ‘产生[100,299]的随机整数 (2)字符串函数 ①Instr(); ? instr (“access”, ” e” ) ? instr ( “access” , “E” ) ? instr (1, “access” , “E” , 1) ? instr ( “access”, “s”) ? InStr (3,”aSsiAB”,”a”,1) ‘返回5(从字符S开始,检索出字符A,不区分大小写) ②len(); ? len(”南京财大”) ? len(”中文Access”) ? len(“2500”) ③left( ), right( ), mid( ) ;

2018年二级ACCESS常用函数详解

1、数组的使用 Dim 数组名( [下标下界to ] 下标上界) [As 数据类型] Dim 数组名( [ 下界to ] 上界[ , …] ) [ As 数据类型] 说明:As选项缺省时,数组中各元素为变体数据类型。 下标下界的默认值为0,如果设置下标下界为非0值,则要使用to选项。 例子:Dim aa ( 5 ) As Single Dim bb ( 1 to 10 , 2 to 20 ) As String Dim cc ( 2 to 5 , 3 to 7 , 10) As Boolean Dim dd ( 3 , 1 to 4 ) 可以在模块的通用声明部分用Option Base来指定数组的默认下标下界。 Option Base 1 设置数组的下标下界为1 Option Base 0 设置数组的下标下界为默认值 2、整除(\) 对两个操作数做除法运算并返回一个整数。 当操作数是小数时,首先被四舍五入为整型或长整型,然后再进行整除运算。 如果运算结果是小数,系统自动将其截断为整型或长整数,不再进行四舍五入处理。 3、取模(Mod) 对两个操作数做除法运算并返回余数 如果操作数有小数时,则系统将其四舍五入为整数后再进行运算。 结果的正负号与被除数相同 4、& 运算符&两边的操作数可以是字符型、数值型或日期型。进行连接操作前先将数值型、日期型转换为字符型,然后再做连接运算。 5、+ 如果两边的操作数都是数字字符串,则做字符串连接运算 如果两边的操作数都是数值型,则做普通的加法运算 如果一个是数字字符串,另一个为数值型,则系统自动将数字字符串转化为数值,然后进行算术加法运算。 如果一个是非数字字符串,另一个为数值型,则出错 6、关系运算符号< > = 如果参与比较的两个操作数都是数值型,则按它们的大小进行比较。 如果参与比较的两个操作数都是字符型,则从左到右一一对应比较。 汉字字符按汉语拼音比较大小,且大于西文字符 字母不区分大小写,且大于数字

Access常用函数

1. 转换 所谓转换就是从一种格式转换为另一种格式,比如数字转换成字符串,字符串转换成数字等。在Access 2007的帮助中该类函数共有16个,这里只介绍一些常用的函数,其它函数的使用方法请查看联机帮助文档。 l 数字转字符串函数Str(数字) Str()函数是将一个数值转换成字符串,例:Str(9999.863),其结果是“9999.863”,Str(-9999.863),其结果是“-9999.863”如果含有字母,系统将出现错误。 当一数字转成字符串时,总会在前头保留一空位来表示正负。如果“数字”为正,返回的字符串包含一前导空格暗示有一正号。 可以使用Format函数可将数值转成必要的格式,如日期、时间、货币或其他用户自定义格式。与Str不同的是,Format函数不包含前导空格来放置“数字”的正负号。 注意:Str函数只视句点(.) 为有效的小数点。如果使用不同的小数点(例如,国际性的应用程序),可使用CStr将数字转成字符串。 l 字符串转数字函数Val(字符串) Val函数是将一个数值型字符串转换成数值,例:Val(“9999.863”),其结果是9999.863,Val函数,在它不能识别为数字的第一个字符上,停止读入字符串。那些被认为是数值的一部分的符号和字符,例如美圆号与逗号,都不能被识别。但是函数可以识别进位制符号&O(八进制)和&H(十六进制)。空白、制表符和换行符都从参数中被去掉。 下面的例子返回值为1615198: Val(" 1615 198th Street N.E.") 在下面的代码中,Val为所示的十六进制数值返回十进制数值-1。 Val("&HFFFF") 如果字符串的首位是字母,其结果为0。 l 空值处理函数Nz(表达式) 空值处理函数Nz是专门用来处理表达式空值的,如果该表达式是值为Null时,可以使用Nz 函数返回零、零长度字符串(零长度字符串:不含字符的字符串。可以使用零长度字符串来表明您知道该字段没有值。输入零长度字符串的方法是键入两个彼此之间没有空格的双引号("")。如果表达式不为空,则原样返回。 这个函数十非常有用的,因为在Access中空值是不被处理的,比如介绍逻辑运算符时就已经有这类情况发生,表达式1 or表达式2,只要有一个为空,结果必定为空,这就会引起逻辑判断上的错误,不能真实反映其判断结果,再比如在计算两个表达式的值时,也会出现异常,假设在VBA中有下面一段程序: A=18.69 B=Null C=A+B 其结果C等于Null,这不是想要的结果,如改成C=Nz(A)+Nz(B),其结果为18.69。 2. 日期函数 在Access 2007的帮助中该类函数共有19个,但笔者认为应该是20个,其中Day()函数归到转换函数里,也可以归到日期函数中,表示取日期数据月的天数。 l 当前系统日期函数Date() 返回当前系统的日期,在任何可以使用表达式的地方都可以使用Date函数。例如,您可以如下设置窗体上文本框的“控件来源”属性:=Date(),在窗体视图中打开窗体时,该文本框会显示当前系统日期。 l 当前系统日期和时间函数Now()

Access统配符、运算符与常用函数

Access统配符、运算符与常用函数 1.*,代表任意多个任何字符。 例如:李*,通配所有第一个字符为“李”的字符串。 2.?,代表任意一个任何字符。 例如:李?,通配所有第一个字符为“李”且只有2个字符的字符串。 3.[ ],通配方括号内的任何单个字符。 例如:淡[红绿黄]色,代表的字符串有:淡红色、淡绿色、淡黄色。 4.!,通配不在方括号内的任何单个字符。 例如:淡[!红绿黄]色,代表的字符串有:淡蓝色、淡紫色、等,中间的字不能是红、绿、黄3个字中的任何一个。。 5.-,通配指定范围内的任何字符,该范围必须是升序,通常针对英文字母。 例如:a[e-g]b,代表的字符串有:aeb、afb、agb。 6.#,代表任意一个数字字符。 例如:2##2,代表的字符串有:2112、2802、等,第一个和最后一个必须是2,中间2个可以是任何数字。 1.算术运算符:+、-、*、/,乘、除同级,加、减同级,同级运算从左到右,乘、除运算优先于加、减运算。 2.关系运算符:>、>=、<、<=、!=、==,Access系统用true或-1表示“真”,用false或0表示“假”。 3.逻辑运算符:not、and、or,运算结果是逻辑值。 4.连接运算符:+、&,用于字符连接,+号要求两边必须是字符型,连接后得到新字符串。

&号不论两边的操作数是字符串还是数字,都按字符串连起来,得到新字符串。 分外运算符 1.like,为文本字段设置查询模式,支持通配符。 如:like “李*“,Like “*红*“ 2.in,指定一个值列表作为查询的匹配条件,不支持通配符。 如:in(“张三“,“李四“,“王五“) 3.between,指定数据范围,用and连接起始数据和终止数据。 如:between 10 and 30,相当于:>=10 and <=30 4.is Null,查找为空的数据。 5.is not Null,查找非空的数据。 字符函数 1.left函数,从字符串左边取n个字符,得到左子串。 格式:left(“字符串”,n)或left(string型变量名,n) 2.right函数,从字符串右边取n个字符,得到右子串。 格式:right(“字符串”,n)或right(string型变量名,n) 3.mid函数,从字串第n1个字符开始取n2个字符,得到子字串。 格式:mid(“字符串”,n1,n2)或right(string型变量名,n1,n2) 说明:如果省略n2,则从字串第n1个字符开始一直取到最后。 1.date函数,返回系统当前日期。 格式:date()或date

ACCESS函数列表

ACCESS函数列表 ABS ACCRINT ACCRINTM ACOS ACOSH ADDRESS AMORDEGRC AM ORLINC AND AREAS ASC ASIN ASINH ATAN ATAN2 ATANH AVEDE V A VERAGE A VERAGE A VERAGEA BAHTTEXT BETADIST BETAINV BI NOMDIST CEILING CELL CHAR CHIDIST CHIINV CHITEST CHOOSE CLEAN CODE COLUMN COLUMNS COMBIN CONCA TENATE CONFIDEN CE CORREL COS COSH COUNT COUNT COUNTA COUNTBLANK CO UNTIF COUPDAYBS COUPDAYS COUPDAYSNC COUPNCD COUPNUM C OUPPCD COV AR CRITBINOM CUMIPMT CUMPRINC DA TE DATEV ALUE DA VERAGE DAY DAYS360 DB DCOUNT DCOUNTA DDB DEGREES DEVSQ DGET DISC DMAX DMIN DOLLARDE DOLLARFR DPRODUCT DSTDEV DSTDEVP DSUM DURATION DV AR DV ARP EDATE EFFECT EOMONTH ERROR.TYPE EVEN EXACT EXP EXPONDIST FACT FALS E FDIST FIND FINV FISHER FISHERINV FIXED FLOOR FORECAST FREQUENCY FTEST FV FVSCHEDULE GAMMADIST GAMMAINV GAMM ALN GCD GEOMEAN GETPIVOTDATA GROWTH HARMEAN HLOOKUP HOUR HYPERLINK HYPERLINK HYPGEOMDIST IF IF INDEX INDIREC T INFO INT INTERCEPT INTRA TE IPMT IRR ISBLANK ISERR ISERR OR ISEVEN ISLOGICAL ISNA ISNONTEXT ISNUMBER ISODD ISPMT ISREF ISTEXT KURT LARGE LCM LEFT LEN LENB LINEST LN L OG LOG10 LOGEST LOGINV LOGNORMDIST LOOKUP LOWER MA TCH MAX MAX MAXA MDETERM MDURA TION MEDIAN MID MIN MI NA MINUTE MINVERSE MIRR MMULT MOD MODE MONTH MROUN D MULTINOMIAL N NA NEGBINOMDIST NETWORKDAYS NOMINAL N ORMDIST NORMINV NORMSDIST NORMSINV NOT NOW NPER NPV ODD ODDFPRICE ODDFYIELD ODDLPRICE ODDL YIELD OFFSET OR P EARSON PERCENTILE PERCENTRANK PERMUT PHONETIC PI PMT PM T POISSON POWER PPMT PRICE PRICEDISC PRICEMA T PROB PROD UCT PROPER PV QUARTILE QUOTIENT RADIANS RAND RANDBETWE EN RANK RA TE RECEIVED REPLACE REPT RIGHT RMB ROMAN R OUND ROUNDDOWN ROUNDUP ROW ROWS RSQ RTD SEARCH SEC OND SECOND SERIESSUM SIGN SIN SIN SINH SKEW SLN SLOPE SMALL SQRT SQRTPI STANDARDIZE STDEV STDEV STDEV A STDE VP STDEVPA STEYX SUBSTITUTE SUBTOTAL SUM SUM SUMIF SU MIF SUMPRODUCT SUMSQ SUMX2MY2 SUMX2PY2 SUMXMY2 SYD T TAN TANH TBILLEQ TBILLPRICE TBILL YIELD TDIST TEXT TIME TIMEV ALUE TINV TODAY TRANSPOSE TREND TRIM TRIMMEAN TRU E TRUNC TTEST TYPE UPPER V ALUE V AR V ARA VARP V ARPA V DB VLOOKUP WEEKDAY WEEKNUM WEIBULL WIDECHAR WORKDAY XIRR XNPV YEAR YEARFRAC YIELD YIELDDISC YIELDMAT ZTEST

ACCESS2003 常用函数

ACCESS2003常用函数 日期和时间函数 Now函数 返回Variant(Date)值,该值是根据计算机系统日期和时间所指定的当前日期和时间。 语法 Now Date函数 返回一个包含当前系统日期的Variant(Date)。 语法 Date 说明 若要设置系统日期,请使用Date语句。 Date和Date$(如果日历是公历)的行为不受Calendar属性设置的影响。如果日历是回历,那么Date$将返回mm-dd-yyyy形式的包含10个字符的字符串,其中mm(01-12)、dd(01-30)和yyyy(1400-1523)是回历月、日和年。等效的公历范围是1980年1月1日到2099年12月31日。 Day函数 返回Variant(Integer),该返回值指定介于1与31之间的整数(含1和31),代表月中的日期。 语法

Day(date) date参数是必选的,它是能够代表日期的任何Variant、数值表达式、字符串表达式或上述任意组合。如果date包含Null,那么将返回Null。 注释如果Calendar属性设置是公历,那么返回的整数将代表date参数的月部分的公历日。如果Calendar是回历,那么返回的整数将代表date参数的月部分的回历日。 Weekday函数 返回Variant(Integer)值,该值包含一个整数,表示一周内的某天。 语法 Weekday(date,[firstdayofweek]) Weekday函数语法具有下面这些命名参数: 部分说明 date 必选。表示日期的Variant、数值表达式、字符串表达式或任何组合。如果date包含Null,则将返回Null。 firstdayofweek 可选。一个常量,用于指定一周的第一天。如果没有指定,则假定为vbSunday。 设置 firstdayofweek参数具有下面这些设置: 常量值说明vbUseSystem0使用NLS API设置。vbSunday1星期天(默认值)vbMonday2星期一 vbTuesday3星期二 vbWednesday4星期三 vbThursday5星期四 vbFriday6星期五 vbSaturday7星期六

ACCESS基本函数大全【经典免费】

ACCESS 基本函数大全类 函数格式说明函数名 型 绝对值Abs(< 数值表达式 >)返回数值表达式的绝对值 Int(< 数值表达式 >)返回数值表达式的整数部分值,参考为负值时返回大于等于参数值的第一个负数 Fix(< 数值表达式 >)返回数值表达式的整数部分值,参考为负值时返回小于等于参数值的第一个负数 取整 按照指定的小数位数进行四舍五入运算的结果。 Round(< 数值表达式 >[ , [< 表达式 >] 是进行四舍五入运算小数点右边保留<表达式 >] ) 的位数 平方根Srq(<数值表达式 >)返回数值表达式的平方根值 算 返回数值表达式值的符号值。当数值表达式值大Sgn(< 数值表达式 >)于 0,返回值为 1;当数值表达式值等于0,返回符号 术 值为 0;当数值表达式值小于0,返回值为 -1函 产生一个 0 到 9 之间的随机数,为单精度类型。数 如果数值表达式值小于0,每次产生相同的随机 随机数Rnd(< 数值表达式 >)数;如果数值表达式值大于0,每次产生新的随机数;如果数值表达式等于0,产生最近生成的随机数,且生成的随机数序列相同;如果省略数 值表达式参数,则默认参数值大于0 正弦函数 余弦函数 正切函数 自然指数 自然对数 生成空格字符 字符重复 文 本 函 数字符串截取Sin(< 数值表达式 >)返回数值表达式的正弦值 Cos(< 数值表达式 >)返回数值表达式的余弦值 Tan(<数值表达式 >)返回数值表达式的正切值 Exp(< 数值表达式 >)计算 e 的 N 次方,返回一个双精度 Log(< 数值表达式 >)计算以 e 为底的数值表达式的值的对数 Space(<数值表达式 >) 返回由数值表达式的值确定的空格个数组成的 空字符串 String(< 数值表达式>,<返回一个由字符表达式的第 1 个字符重复组成的字符表达式 ))指定长度为数值表达式值的字符串 返回一个值,该值是从字符表达式左侧第 1 个字 符开始,截取的若干字符。其中,字符个数是数 Left(< 字符表达式>,<数值表达式的值。当字符表达式是 null 时,返回 null 值表达式 >)值;当数值表达式值为0 时,返回一个空串;当 数值表达式值大于或等于字符表达式的字符个 数时,返回字符表达式 返回一个值,该值是从字符表达式右侧第 1 个字Right(< 字符表达式 >,< 符开始,截取的若干个字符。其中,字符个数是 数值表达式的值。当字符表达式是 Null 时,返回数值表达式 >) Null 值;当数值表达式值为0 时,返回一个空串; 当数值表达式大于或等于字符表达式的字符个

ACCESS常用函数举例

常用函数举例 常用函数举例1. 转换 所谓转换就是从一种格式转换为另一种格式,比如数字转换成字符串,字符串转换成数字等。在Access 2007的帮助中该类函数共有16个,这里只介绍一些常用的函数,其它函数的使用方法请查看联机帮助文档。 l 数字转字符串函数Str(数字) Str()函数是将一个数值转换成字符串,例:Str(9999.863),其结果是“9999.863”,Str(-9999.863),其结果是“-9999.863”如果含有字母,系统将出现错误。 当一数字转成字符串时,总会在前头保留一空位来表示正负。如果“数字”为正,返回的字符串包含一前导空格暗示有一正号。 可以使用Format 函数可将数值转成必要的格式,如日期、时间、货币或其他用户自定义格式。与Str 不同的是,Format 函数不包含前导空格来放置“数字”的正负号。 注意:Str 函数只视句点(.) 为有效的小数点。如果使用不同的小数点(例如,国际性的应用程序),可使用CStr 将数字转成字符串。 l 字符串转数字函数Val(字符串) Val函数是将一个数值型字符串转换成数值,例:Val(“9999.863”),其结果是9999.863,Val 函数,在它不能识别为数字的第一个字符上,停止读入字符串。那些被认为是数值的一部分的符号和字符,例如美圆号与逗号,都不能被识别。但是函数可以识别进位制符号&O (八进制)和&H(十六进制)。空白、制表符和换行符都从参数中被去掉。 下面的例子返回值为1615198: Val(" 1615 198th Street N.E.")在下面的代码中,Val 为所示的十六进制数值返回十进制数值-1。 Val("&HFFFF")如果字符串的首位是字母,其结果为0。 l 空值处理函数Nz(表达式) 空值处理函数Nz是专门用来处理表达式空值的,如果该表达式是值为Null时,可以使用Nz 函数返回零、零长度字符串(零长度字符串:不含字符的字符串。可以使用零长度字符串来表明您知道该字段没有值。输入零长度字符串的方法是键入两个彼此之间没有空格的双引号("")。 如果表达式不为空,则原样返回。 这个函数十非常有用的,因为在Access中空值是不被处理的,比如介绍逻辑运算符时就已经有这类情况发生,表达式1 or 表达式2,只要有一个为空,结果必定为空,这就会引起逻辑判断上的错误,不能真实反映其判断结果,再比如在计算两个表达式的值时,也会出现异常,假设在VBA中有下面一段程序: A=18.69 B=Null C=A+B 其结果C等于Null,这不是想要的结果,如改成C=Nz(A)+Nz(B),其结果为18.69。 2. 日期函数 在Access 2007的帮助中该类函数共有19个,但笔者认为应该是20个,其中Day()函数归到转换函数里,也可以归到日期函数中,表示取日期数据月的天数。 l 当前系统日期函数Date() 返回当前系统的日期,在任何可以使用表达式的地方都可以使用Date 函数。例如,您可以如下设置窗体上文本框的“控件来源”属性:=Date(),在窗体视图中打开窗体时,该文本框

ACCESS常用函数

1.转换 所谓转换就是从一种格式转换为另一种格式,比如数字转换成字符串,字符串转换成数字等。在Access2007的帮助中该类函数共有16个,这里只介绍一些常用的函数,其它函数的使用方法请查看联机帮助文档。 l数字转字符串函数Str(数字) Str()函数是将一个数值转换成字符串,例:Str(9999.863),其结果是“9999.863”,Str(-9999.863),其结果是“-9999.863”如果含有字母,系统将出现错误。 当一数字转成字符串时,总会在前头保留一空位来表示正负。如果“数字”为正,返回的字符串包含一前导空格暗示有一正号。 可以使用Format函数可将数值转成必要的格式,如日期、时间、货币或其他用户自定义格式。与Str不同的是,Format函数不包含前导空格来放置“数字”的正负号。 注意:Str函数只视句点(.)为有效的小数点。如果使用不同的小数点(例如,国际性的应用程序),可使用CStr将数字转成字符串。 l字符串转数字函数Val(字符串) Val函数是将一个数值型字符串转换成数值,例:Val(“9999.863”),其结果是9999.863,Val函数,在它不能识别为数字的第一个字符上,停止读入字符串。那些被认为是数值的一部分的符号和字符,例如美圆号与逗号,都不能被识别。但是函数可以识别进位制符号&O(八进制)和&H(十六进制)。空白、制表符和换行符都从参数中被去掉。 下面的例子返回值为1615198: Val("1615198th Street N.E.") 在下面的代码中,Val为所示的十六进制数值返回十进制数值-1。 Val("&HFFFF") 如果字符串的首位是字母,其结果为0。 l空值处理函数Nz(表达式) 空值处理函数Nz是专门用来处理表达式空值的,如果该表达式是值为Null时,可以使用Nz函数返回零、零长度字符串(零长度字符串:不含字符的字符串。可以使用零长度字符串来表明您知道该字段没有值。输入零长度字符串的方法是键入两个彼此之间没有空格的双引号("")。如果表达式不为空,则原样返回。 这个函数十非常有用的,因为在Access中空值是不被处理的,比如介绍逻辑运算符时就已经有这类情况发生,表达式1or表达式2,只要有一个为空,结果必定为空,这就会引起逻辑判断上的错误,不能真实反映其判断结果,再比如在计算两个表达式的值时,也会出现异常,假设在VBA中有下面一段程序: A=18.69 B=Null C=A+B 其结果C等于Null,这不是想要的结果,如改成C=Nz(A)+Nz(B),其结果为18.69。 2.日期函数 在Access2007的帮助中该类函数共有19个,但笔者认为应该是20个,其中Day()函数归到转换函数里,也可以归到日期函数中,表示取日期数据月的天数。 l当前系统日期函数Date() 返回当前系统的日期,在任何可以使用表达式的地方都可以使用Date函数。例如,您可以如下设置窗体上文本框的“控件来源”属性:=Date(),在窗体视图中打开窗体时,该文本框会显示当前系统日期。 l当前系统日期和时间函数Now()

所有Access函数

所有Access函数1.1日期/时间

有效性规则示例 下表提供了字段级和记录级有效性规则的示例,以及说明性有效性文本。可以针对您的内容对这些示例进行相应的改编。

常见有效性规则的语法 有效性规则中的表达式不使用任何特殊语法。本节中的信息说明某些较常见类型的有效性规则的语法。在执行操作时,请记住:表达式和函数可能会非常复杂,全面的讨论不在本文讨论范围之内。 有关表达式的详细信息,请参阅创建表达式一文。有关函数的详细信息,请参阅函数(按类别排列)一文。 创建表达式时,请牢记下列规则: 将表字段的名称用方括号括起来,例如:[要求日期]<=[订购日期]+30。 将日期用井号(#) 括起来,例如:<#01/01/2007# 将文本值用双引号括起来,例如:IN ("东京","巴黎","莫斯科")。另外,请注意用逗号分隔项目,并将列表放在圆括号内。 除了上述规则之外,下表显示了常见的算术运算符并提供了使用方法示例。 运算符函数示例 NOT 测试相反值。在除IS NOT NULL 之外的任何比较运算符之前使用。NOT > 10(与<=10 相同)。 IN 测试值是否等于列表中的现有成员。比较值必须是括在圆括号中的逗号分隔列表。IN ("东京","巴黎","莫斯科") BETWEEN 测试值范围。必须使用两个比较值(低和高),并且必须使用AND 分隔符来分隔这两个值。BETWEEN 100 AND 1000(与>=100AND <=1000相同)LIKE 匹配文本和备注字段中的模式字符串。LIKE "Geo*" IS NOT NULL 强制用户在字段中输入值。此设置与将“必填”字段属性设置为“是”具有同样的效果。但是,如果启用了“必填”属性但用户没有输入值,则Access 会显示令人稍感不快的错误消息。通常,如果使用IS NOT NULL 并在“有效性文本”属性中输入友好的消息,则您的数据库会更易于使用。IS NOT NULL

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