连接字段并分配给 Access 中的行源时出现类型不匹配错误
Type mismatch error when concatenating fileds and assigning to Row source in Access
我有一个带有名为 lstCustomer
的列表控件的表单。我正在向 rowsource
方法传递一个字符串,如下所示
me.lstCustomer.RowSource = lstSQL
在分配给 rowSource 方法之前指定 lstSQL。
lstSQL = "SELECT FullName, City & " - " & Region AS Location FROM tblContact ORDER BY FullName;"
这会产生错误 Type Mismatch
当我不使用串联列时,我不会收到此错误。我尝试了下面的代码(这不会产生错误)
lstSQL = "SELECT FullName, City, Region FROM tblContact ORDER BY FullName;"
我想在一个列中显示城市和地区。请指出我的错误。
提前致谢。
请在查询中使用单引号 '
而不是 "
:
SELECT FullName, City & ' - ' & Region AS Location
FROM tblContact ORDER BY FullName;
lstSQL = "SELECT FullName, City & ' - ' & Region AS Location FROM tblContact ORDER BY FullName;"
两件事:在引号内必须使用单引号或转义字符。否则,VBA 会混淆您的文字字符串的开始和停止位置。双引号意味着将中间的所有内容都作为文字。双引号内的单引号是当 SELECT 语句实际上是 运行.
时的文字
您收到 type mismatch
错误是因为您实际上是在尝试在此处减去两个字符串,而您实际上无法添加或减去字符串。
另外,您应该有一个计算字段的别名。这就是 AS
运算符在上述答案中发挥作用的地方。
我有一个带有名为 lstCustomer
的列表控件的表单。我正在向 rowsource
方法传递一个字符串,如下所示
me.lstCustomer.RowSource = lstSQL
在分配给 rowSource 方法之前指定 lstSQL。
lstSQL = "SELECT FullName, City & " - " & Region AS Location FROM tblContact ORDER BY FullName;"
这会产生错误 Type Mismatch
当我不使用串联列时,我不会收到此错误。我尝试了下面的代码(这不会产生错误)
lstSQL = "SELECT FullName, City, Region FROM tblContact ORDER BY FullName;"
我想在一个列中显示城市和地区。请指出我的错误。 提前致谢。
请在查询中使用单引号 '
而不是 "
:
SELECT FullName, City & ' - ' & Region AS Location
FROM tblContact ORDER BY FullName;
lstSQL = "SELECT FullName, City & ' - ' & Region AS Location FROM tblContact ORDER BY FullName;"
两件事:在引号内必须使用单引号或转义字符。否则,VBA 会混淆您的文字字符串的开始和停止位置。双引号意味着将中间的所有内容都作为文字。双引号内的单引号是当 SELECT 语句实际上是 运行.
时的文字您收到 type mismatch
错误是因为您实际上是在尝试在此处减去两个字符串,而您实际上无法添加或减去字符串。
另外,您应该有一个计算字段的别名。这就是 AS
运算符在上述答案中发挥作用的地方。