【问题标题】:Insert value of Excel cell as a SQL query parameter in macro在宏中插入 Excel 单元格的值作为 SQL 查询参数
【发布时间】:2016-09-18 04:12:23
【问题描述】:

我想将 Excel 单元格的值传递到宏内的查询中,这样当我在该特定单元格中插入值并按 Enter 时,它会触发宏和其中的查询。

假设单元格是“A1”,我将作为参数传递的值(这次)是“99”

如果我“手动”执行此操作,查询将通过以下方式插入参数:

Set rs = conn.Execute("SELECT * FROM CODES WHERE ref_id like '99%' ")

需要进行哪些修改才能使查询接受来自 A1 单元格的任何值?

【问题讨论】:

    标签: sql vba excel


    【解决方案1】:

    我在基于 Excel 的 SQL 下载中使用的是将脚本放在 A:A 中,然后使用此 VBA 代码:

    Range("A1").Select
    'Set Do loop to stop when an empty cell is reached.
    Do Until IsEmpty(ActiveCell)
        ' Concatenate using a space after each line
            sql = sql + ActiveCell.Value + " "
    
        ' Step down 1 row from present location.
        ActiveCell.Offset(1, 0).Select
    Loop
    

    所以它会逐行读取所有内容。

    在你的情况下,我认为应该是这样的:

    Range("A1").Select
            sql = "SELECT * FROM CODES WHERE ref_id like '" + ActiveCell.Value + "%' "
    Set rs = conn.Execute(sql)
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-11-20
      • 2018-08-01
      • 1970-01-01
      相关资源
      最近更新 更多