方法一 if  IsNull(Me.新_退休费) = True Then Me.新_退休费 = 0

方法二 if Nz(Me.原_退休费) = Me.原_退休费 Then Me.原_退休费 = 0

有些时候,一些初接触Access的朋友容易犯这样的错误:if  Me.新_退休费 = "" Then Me.新_退休费 = 0

以下是Access帮助中NZ的内容

当 Variant 类型的值为 Null 时,可以使用 Nz 函数返回零、零长度字符串 ("") 或其他指定值。例如,可以使用此函数将 Null 值转换为其他值,并防止它通过表达式传播。

语法Nz(variant [, valueifnull ] )

Nz 函数的语法包含以下参数:

参数

说明

variant

必选。数据类型为 Variant 的变量。

valueifnull

可选(除非用于查询中)。如果 variant 参数为 Null,则此参数是可提供返回值的 Variant 型参数。此参数允许您返回零或零长度字符串以外的值。

注释 如果在查询表达式中使用 Nz 函数而不使用 valueifnull 参数,则在包含空值的字段中结果将是零长度字符串。

如果 variant 参数的值为 Null,则 Nz 函数返回数值零或零长度字符串(用在查询表达式中时始终返回零长度字符串),具体取决于上下文是否对该值应该是数值还是字符串做出了指示。如果包括可选的 valueifnull 参数,则当 variant 参数为 Null 时,Nz 函数将返回该参数指定的值。用在查询表达式中时,NZ 函数应始终包含 valueifnull 参数。

如果 variant 的值不为 Null,则 Nz 函数将返回 variant 的值。

注解

Nz 函数对于可能包括 Null 值的表达式很有用。要强制表达式计算出非 Null 值(即使它包含 Null 值),请使用 Nz 函数来返回零、零长度字符串或自定义返回值。

例如,当 VariantvarX 为 Null 时,表达式 2 + varX 将始终返回 Null 值。但 2 + Nz(varX) 返回 2。

通常可以使用 Nz 函数作为 IIf 函数的备选方案。例如,在下面的代码中,为了返回期望的结果,必须使用包括 IIf 函数的两个表达式。第一个包括 IIf 函数的表达式用于检查变量的值并在它为 Null 时将其转换为零。

varTemp = IIf(IsNull(varFreight), 0, varFreight)

varResult = IIf(varTemp > 50, "High", "Low")

在下一个示例中,Nz 函数可与第一个表达式提供相同的功能,并且只需一步而非两步便可获得期望的结果。

varResult = IIf(Nz(varFreight) > 50, "High", "Low")

如果为可选的参数 valueifnull 提供一个值,则当 variant 为 Null 时将返回该值。通过包括此可选参数,可以避免使用包含 IIf 函数的表达式。例如,如果 varFreight 的值为 Null,下面的表达式将使用 IIf 函数返回一个字符串。

varResult = IIf(IsNull(varFreight), _

"No Freight Charge", varFreight)

在下一个示例中,Nz 函数的可选参数提供了 varFreight 为 Null 时将返回的字符串。

varResult = Nz(varFreight, "No Freight Charge")

示例

注释   以下示例演示了此功能在 Visual Basic for Applications (VBA) 模块中的使用。有关使用 VBA 的详细信息,请在“搜索”旁边的下拉列表中选择“开发人员参考”,然后在搜索框中输入一个或多个词条。

下面的示例对窗体上的一个控件进行计算,并根据该控件的值返回两个字符串之一。如果该控件的值为 Null,该过程将使用 Nz 函数将 Null 值转换为零长度字符串。

Public Sub CheckValue()

Dim frm As Form

Dim ctl As Control

Dim varResult As Variant

' Return Form object variable

' pointing to Orders form.

Set frm = Forms!Orders

' Return Control object variable

' pointing to ShipRegion.

Set ctl = frm!ShipRegion

' Choose result based on value of control.

varResult = IIf(Nz(ctl.Value) = vbNullString, _

"No value.", "Value is " & ctl.Value & ".")

' Display result.

MsgBox varResult, vbExclamation

End Sub

如何让access空值变成0?(确切的说是让access Null值变成0)的更多相关文章

  1. sql语句常用功能(null值转换为0)

    COALESCE(规格,' ') 或者 COALESCE(规格,0) select * from ( ) 客户,() 物料号,p4.name 内部批次,p4.outsidename 外部批次,p1.库 ...

  2. 黄聪:Microsoft Enterprise Library 5.0 系列教程(五) Data Access Application Block

    原文:黄聪:Microsoft Enterprise Library 5.0 系列教程(五) Data Access Application Block 企业库数据库访问模块通过抽象工厂模式,允许用户 ...

  3. EnterpriseLibrary 6.0(微软企业库6.0学习笔记) 之Data Access Block 配置和获取链接字符串

    EnterpriseLibrary 的特点是快速开发,融合了微软工程师多年的经验,现在在微软内部有专门的一个小组在完善EnterpriseLibray,最近的更新时间是April 2013. 相关链接 ...

  4. 【HANA系列】SAP HANA 2.0 SPS00 SDA(Smart Data Access)连接Hadoop

    公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[HANA系列]SAP HANA 2.0 SPS ...

  5. win10 压缩包安装mysql8.0.11报错:Access denied for user 'root'@'localhost'

    按这篇:https://blog.csdn.net/Myuhua/article/details/84792121#commentsedit 这里精简下,还有update语句中authenticati ...

  6. [改善Java代码]别让null值和空值威胁到变长方法

    建议5:别让null值和空值威胁到变长方法 public class Client { public void methodA(String str,Integer... is){ } public ...

  7. Javascript中的undefined、null、""、0值和false的区别总结

    在程序语言中定义的各种各样的数据类型中,我们都会为其定义一个"空值"或"假值",比如对象类型的空值null,.NET Framework中数据库字段的空值DBN ...

  8. Access空字符串和Null值

    什么是空字符串和Null值: Microsoft Access可以区分两种类型的空值.因为在某些情况下,字段为空,可能是因为信息目前无法获得,或者字段不适用于某一特定的记录.例如,表中有一个“电话号码 ...

  9. 为什么说JAVA中要慎重使用继承 C# 语言历史版本特性(C# 1.0到C# 8.0汇总) SQL Server事务 事务日志 SQL Server 锁详解 软件架构之 23种设计模式 Oracle与Sqlserver:Order by NULL值介绍 asp.net MVC漏油配置总结

    为什么说JAVA中要慎重使用继承   这篇文章的主题并非鼓励不使用继承,而是仅从使用继承带来的问题出发,讨论继承机制不太好的地方,从而在使用时慎重选择,避开可能遇到的坑. JAVA中使用到继承就会有两 ...

随机推荐

  1. 从一道简单的dp题中学到的...

    今天想学点动态规划的知识,于是就看了杭电的课件,数塔问题啊,LCS啊都是比较经典的动规了,然后随便看了看就开始做课后练习题... HDOJ 1421 搬寝室 http://acm.hdu.edu.cn ...

  2. C#基础系列 - 反射基础

    反射用于在程序运行过程中,获取类里面的信息或发现程序集并运行的一个过程.通过反射可以获得.dll和.exe后缀的程序集里面的信息.使用反射可以看到一个程序集内部的类,接口,字段,属性,方法,特性等信息 ...

  3. CF 248B 前缀和

    操作1 l r 是原序列l-r的和操作2 l r 是从小到大排序后的l-r的和 input66 4 2 7 2 732 3 61 3 41 1 6output24928 # include <i ...

  4. spring-boot分环境打包为war包

    1.启动类修改 @EnableSwagger2 @SpringBootApplication public class CustWebAcApplication extends SpringBootS ...

  5. day5模块学习--sys模块

    sys模块 sys模块是处理与系统相关的模块,sys(system),下面来看看sys模块常用的方法: 1.sys.argv         #命令行参数list,第一个元素是程序本身路径 2.sys ...

  6. Ionic Js二十:选项卡栏操作

    ion-tabs ion-tabs 是有一组页面选项卡组成的选项卡栏.可以通过点击选项来切换页面. 对于 iOS,它会出现在屏幕的底部,Android会出现在屏幕的顶部(导航栏下面). 用法 < ...

  7. 02:实现Singleton模式

    Java实现单例模式有很多种实现方法,其中我们应根据需要选择线程安全的与非线程安全的两种方式,根据对象实现的方式又分为饱汉与饿汉方式. 这里使用java中的volatile关键字与synchroniz ...

  8. 使用 Web 服务 为 ECS Linux 实例配置网站及绑定域名

    Nginx 服务绑定域名 https://help.aliyun.com/knowledge_detail/41091.html?spm=a2c4e.11155515.0.0.4lvCpF 以 YUM ...

  9. redis与DB数据同步问题

    Redis 是一个高性能的key-value数据库. redis的出现,很大程度补偿了memcached这类key-value存储的不足,在部 分场合可以对关系数据库起到很好的补充作用.它提供了Pyt ...

  10. OpenVAS漏洞扫描基础教程之创建用户

    OpenVAS漏洞扫描基础教程之创建用户 OpenVAS管理服务 默认情况下,OpenVAS服务仅创建了一个名为admin的用户,而且是管理员用户(拥有最高的权限).如果想要其它客户端登陆的话,不可能 ...