Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/27.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql server MS ACCESS报告-使用代码将字段中的值从选项组更改为其他值_Sql Server_Ms Access_Vba_Ms Access 2010_Ms Access 2016 - Fatal编程技术网

Sql server MS ACCESS报告-使用代码将字段中的值从选项组更改为其他值

Sql server MS ACCESS报告-使用代码将字段中的值从选项组更改为其他值,sql-server,ms-access,vba,ms-access-2010,ms-access-2016,Sql Server,Ms Access,Vba,Ms Access 2010,Ms Access 2016,我在ACCESS中有一个报告,它基于一个由带有选项组的表单填充的表的查询。(为了更好地解释这一点-表是inspector qualifications,查询将获取inspector的所有资格,资格通过填充inspector qualification表字段的表单上的选项组进行选择。)当然,选择存储为数字值,“1、2、3或4”在表中,但4实际上表示不适用或无。由于所有内容都是以这种方式构建的,因此我正在尝试编写一个代码,该代码将在生成(或打开)报告时运行,该代码将接受输入的“4”值(如果字段等于该

我在ACCESS中有一个报告,它基于一个由带有选项组的表单填充的表的查询。(为了更好地解释这一点-表是inspector qualifications,查询将获取inspector的所有资格,资格通过填充inspector qualification表字段的表单上的选项组进行选择。)当然,选择存储为数字值,“1、2、3或4”在表中,但4实际上表示不适用或无。由于所有内容都是以这种方式构建的,因此我正在尝试编写一个代码,该代码将在生成(或打开)报告时运行,该代码将接受输入的“4”值(如果字段等于该值),并在报告中将其更改为空值/空白,而不是在查询或表中。我仍然希望此报告按原样生成所有其他内容-显示所有记录-如果该特定选项是该字段中为该特定记录显示的选项,请更改该值。
有人知道这样做的好方法吗?任何帮助都将不胜感激

您只需在查询中放置一个“IIF”,测试您要更改的值,然后将其更改为其他值,或者保留原始值。下面将测试字段“Nbr1”是否存在4,如果找到,将其更改为“N/a”,否则将保持不变

注意!您需要更改报告中的控制源以反映您提供的名称(即“MyChange”),因为您无法保留原始名称

SELECT Table1.ID, Table1.EMPID, Table1.TestResult, 
       IIf([Nbr1]=4,"N/A",[Nbr1]) AS MyChange, Table1.Nbr2
       FROM Table1;

该报告的查询是否在其他地方使用?如果没有,那么为什么不更改查询?这是最容易做到的地方。否则,您将需要使用VBA。不,我不相信是这样。更改查询的最佳途径是什么?抱歉,但是在我使用“N/A”的地方,我看到您想要空的,所以请使用“。感谢您提供的信息-很抱歉,在这方面有很多问题。我最初的想法是在查询中创建一个IIF语句,尝试进行此更改。我并没有让它为我工作。我相信这是因为我可能在提取所有信息的查询中完成了,而没有创建第二个查询?我在上面看到,您说过“在测试您要更改的值的查询中”。我是否应该先使用一个查询来执行此操作,然后将报表上所需的所有内容拉到第二个查询中?您说过报表的recordsource是一个查询。因为我不知道这是什么样子,所以我提供了一些可以工作的东西——除非您已经在该查询中做了一些改变相关字段的事情。您没有提及字段的名称或其派生方式。您可以发布您的查询,或者以我为例,更改表名和字段名,看看您得到了什么。Wayne-非常感谢您提供的信息-我一定会保留它以备将来使用。在这个特殊的例子中,我有一个完整的大脑屁-我可以解决我的问题,只需使用有问题的细胞上的条件格式。(这是一个选项组,它将单元格填充为1,2,3,4作为值,而不是标签I、II、III或none(变为4。))我所做的就是在单元格上调用条件格式。当值等于4时,它将文本更改为白色,使其成为空白字段。这似乎相当有效。再次感谢您的知识!