如何将dynamic范围string文本传递给EXCEL VBA中的SQL查询IN子句
我有dynamic范围string数据,需要传递修剪单元格和单引号和逗号分隔到SQL查询。
A 123ABC345 234CDE678 ZSE123MTR POR123456
结果:
select * from table name where col1 in ('123ABC345','234CDE678','ZSE123MTR','POR123456')
Dim query as String query = "select * from table name where col1 in (" range("A1").Select While ActiveCell.Value <> "" and ActiveCell.Offset(1, 0).Value <> "" query = query + "'" + Activecell.Value + "', " ActiveCell.Offset(1, 0).Select Wend query = query + "'" + Activecell.Value + "')"
试试这个代码:
sqlstr = "select * from table name where col1 in ('" sqlstr = sqlstr & Join(Application.Transpose(Range("A1:A4").Value), "','") & "')"