从 Excel 调用具有多个参数的存储过程

2023-11-30

我已经建立了 SQL Server 与存储过程所在数据库的连接。存储过程在 SQLServer 中运行良好。存储过程通过与 Excel 中的硬编码参数的连接运行得很好。我得到了我的数据集并将其插入到我的电子表格中。宏不起作用。在宏中,我尝试指向电子表格中包含参数值的范围,以便我可以将值键入电子表格中,然后让宏选取它们并将它们传递给存储过程。我对电子表格值和存储过程中的参数使用日期格式。我希望在宏运行时返回的数据集在电子表格中使用新数据进行更新。这是我的宏:

Sub GetHeatMapData()

    With ActiveWorkbook.Connections("CARLA-PC-Billing-SP").OLEDBConnection.CommandText = "EXECUTE dbo.GetBillingHeatMap '" & Range("A9").Value & "" & Range("B9").Value & "'"

    End With
    ActiveWorkbook.Connections("CARLA-PC-Billing-SP").Refresh

End Sub

但是,如果我尝试从 Excel 中的宏运行存储过程,则会发生以下两种情况之一:

  1. 如果电子表格中存在从连接窗口运行存储过程创建的现有数据集,则宏运行时不会出现错误,但它不会拾取动态变量,因此数据不会按应有的方式更改。

  2. 如果我删除通过从连接窗口运行存储过程创建的数据集,选择数据应开始的单元格,然后触发宏,我会收到“下标超出范围”错误,但什么也没有发生。

我正在设置NOCOUNT在我的存储过程结束时关闭。以下是存储过程中的参数定义:

-- Add the parameters for the stored procedure here
    @StartDate Date, 
    @EndDate Date

Here are my connection settings: enter image description here

我的问题是为什么存储过程无法从 Excel 电子表格单元格获取参数并使用它们来过滤返回的数据?


1 – 在 Excel 中公开参数

enter image description here

2 – 定义参数从excel输入

enter image description here

3 – 确定并刷新。

enter image description here

好的, 您不必在命令文本中输入参数,您可以以期望参数从 Excel 单元传递到存储过程的方式定义命令文本。如果您所在的国家/地区不使用美国数据格式,这尤其有用。此外,它使最终用户能够使用其他一些参数进行刷新,而无需编辑命令文本。 这很简单 - 在 Excel 中,在您输入的存储过程名称之后的命令文本中连接到 SQL Server ? - 尽可能多 ?因为您的存储过程需要不同的参数(除以,) - 像这样 - 执行 dbo.your_procedure ?,? 之后,您进入参数选项卡(在与输入命令文本相同的表单上)并从女巫单元定义将参数传递给存储过程。当然,在存储过程中还需要指定需要哪些参数:

创建过程 [dbo].[your_procedure]

( @DateFrom 日期时间, @DateTo 日期时间 ) 作为

--- 您的存储程序 ---

在 Excel 中 - 参数 1 将发送到存储过程的 Date From 参数。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

从 Excel 调用具有多个参数的存储过程 的相关文章

  • 如何使用VBA根据条件删除Excel中的行?

    我目前正在构建一个宏来格式化数据表并删除不适用的数据行 具体来说 我希望删除列 L ABC 的行以及删除列 AA DEF 的行 到目前为止 我已经实现了第一个目标 但还没有实现第二个目标 现有代码是 Dim LastRow As Integ
  • 在 MS Word 中运行外部 vba 代码

    我可以将外部代码链接到 Word 文档吗 我有很多带有宏的 Word 文档 VBA 代码 全部使用相同的代码 我希望代码从外部源运行 而不是从所有这些文档中运行 这样 如果我必须更新代码 我只有一个地方需要更新 您可以创建一个模板并将其放入
  • Excels COUNTIFS 函数中的数组作为条件,混合 AND 和 OR [重复]

    这个问题在这里已经有答案了 我已经在谷歌上搜索了一段时间 但似乎无法让它发挥作用 我使用 Excel 2010 希望混合使用 AND 和 OR 运算符来计算行数 我想做的是这样的 COUNTIFS A A string1 B B strin
  • 当使用公式生成超链接时,VBA 打开 Excel 超链接不起作用

    使用公式生成的 Excel 超链接似乎存在错误 我使用的是 Excel 2010 我有一个电子表格 其中的单元格包含 URL 我的目标是执行以下两件事 将这些单元格变成超链接 创建一个键盘快捷键来打开这些超链接 这样我就不必使用鼠标了 为了
  • 将html表格保存到excel中[关闭]

    很难说出这里问的是什么 这个问题是含糊的 模糊的 不完整的 过于宽泛的或修辞性的 无法以目前的形式得到合理的回答 如需帮助澄清此问题以便重新打开 访问帮助中心 help reopen questions 我必须编写一个程序 定期读取网页并将
  • 在 Node.js 中解析 Json(带有数组和对象)并将数据导出到 Excel 文件中

    我是 Node js 新手 我的要求是 我需要解析 JSON 并将数据导出到 Excel 文件中 其中包含 JSON 中的所有字段 我的 JSON 如下 id 1255 title The Brain and Nervous System
  • 在二维范围内查找匹配的公式

    我需要一个公式来查找二维范围内的值并返回匹配单元格的坐标或单元格地址 例如 R A B C 1 John Matt Pete 2 Sara Bret Chad 3 Lila Maya Cami 我想搜索范围A1 C3 for Chad并返回
  • SpreadsheetML 文件扩展名被 IE 和 FF 更改 - 内容类型错误?

    我正在 PHP 中生成 SpreadsheetML 文件 当用户下载文件并保存时 默认情况下文件会另存为 Report xml 并在 Excel 中打开 但是 如果选择在 Excel 中打开文件而不是保存文件 则文件名将更改为 Report
  • VBA中的字符串是可以迭代的数组吗?

    VBA中字符串是数组吗 例如 我可以像在 C C 中那样迭代它吗 做这样的事情 char myArray 10 for int i 0 i lt length i cout lt lt myArray i VBA 中的等价物是什么 它的行为
  • 仅具有存储过程的实体框架

    我对在我们的场景中仅使用实体框架与存储过程的合理性有疑问 我们计划拥有一个 N 层架构 包括 UI BusinessLayer BLL DataAccessLayer DAL 和 BusinessObjectDefinitions BOD
  • Excel VBA - 添加自定义数字格式

    我有一个在 Excel 外部生成的文件 其中包含许多百分比 所有这些百分比都有一位小数 当导入到 Excel 中时 Excel 会在百分比中添加第二位小数 这似乎是 Excel 中百分比的某种默认格式 它只是添加了一个 0 我想将所有两位小
  • PostgreSQL 错误 42501:架构权限被拒绝

    我正在 ASP NET 中构建一个用户注册系统 使用 PostgreSQL 数据库来维护用户信息 作为注册过程的一部分 用户会收到一条确认消息 他们必须单击其中的链接来验证其电子邮件地址 然后 他们将进入一个可以创建密码的页面 一旦用户提供
  • numpy NPV 和 Excel NPV 有区别吗?

    我的 Excel 中有一行包含 11 个值 TotalSavings 0 8000 8000 8000 8000 8000 8000 8000 8000 8000 8000 贴现率为 0 08 我在 Excel 中使用 计算 NPVNPV
  • VSTO 替代方案 [关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 VSTO 有哪些替代方案 ManagedXll 能做什么而 VSTO 不能 你什么时候使用其中一个而不
  • Excel 工作表名称的有效字符

    在 Java 中 我们使用以下包以编程方式创建 Excel 文档 org apache poi hssf 如果您尝试设置工作表的名称 不是文件 而是内部 Excel 工作表 在以下情况下您将收到错误消息 名称超过 31 个字符 该名称包含以
  • Redim Preserve 给出“下标超出范围”

    我想要Redim Preserve一个数组我不断收到错误 下标超出范围 我知道只有最后一个维度的大小可以更改 这正是我正在做的事情 这里出了什么问题 数组的类型是Variant BmMatrix Sheets BENCH Range a60
  • 从 MS Access 调用存储过程会导致错误 3146

    当我使用下面所示的代码从 MS Access 前端调用 SQL Server 存储过程时 它停止运行并抛出运行时错误 3146 这个存储过程在 SQL Server 中工作正常 但是当我从 MS Access 运行时 它首先工作 但突然停止
  • VBA 架构技巧 - 宏封装

    我拼凑了 Excel 的概念证明 以从数据库获取数据 并需要将其打包 以便可以将其分发给我们的客户 我的第一次尝试只是将所有代码放入代码模块中 但随后在 Excel 中我可以看到宏列表中的所有模块 而我实际上只想要列表中的主要模块 我猜想我
  • HTML/VBA Click 事件未触发

    这是我第一次在 StackOverflow 上发布问题 到目前为止 我已经能够通过 VBA 帮助论坛解决我的大部分问题 我的问题很简单 我有一个自动数据拉取 我需要在其中导出数据 我过去曾在这方面取得过成功 但这次略有不同 我尝试单击以生成
  • 如果 Excel 中的表格包含单元格引用,如何对其进行排序?

    我在工作表 1 中有一个 Excel 数据表 它引用了许多其他工作表中的各种不同单元格 当我尝试对工作表进行排序或过滤时 引用会随着单元格的移动而发生变化 但是 我不想手动进入每个单元格并在各处插入 符号 因为有些引用是连续的 我可能想稍后

随机推荐

  • Angular:根据从下拉菜单中选择的选项显示 div 内容(ng-show/ng-switch)

    所以我对前端 角度 bootsrap 等 完全陌生 但我这里有一个我创建的 JSFiddle 链接 我想做的基本上是如果有人在下拉列表中选择选项 VA 菜单 我想使用适当的 ng 开关或显示 并显示具有相同名称的 div 类 在本例中为 d
  • 使用 CType 时检测从 Windows DLL 调用 Python 脚本

    我正在寻求在 Windows DLL 中添加功能来检测调用 Python 脚本的名称 我正在使用 ctypes 通过 Python 调用 dll 如答案中所述如何从脚本语言调用 DLL 在 dll 中 我能够使用 WINAPI GetMod
  • 如何在 Jupyter Lab 中打开调试器按钮

    我正在使用 jupyter lab 并尝试嵌入debugger in it Windows 10 64 bit 以下是我遵循的步骤 conda create name ml python 3 8 2 conda activate ml co
  • 使用 Chef 在 Windows 节点上挂载 Windows 共享

    我正在尝试将文件从 Windows 共享复制到我的节点的缓存 显然没有办法从remote file 做到这一点 所以我的替代想法是尝试将Windows 共享安装到本地驱动器并通过文件资源访问我需要的文件 然而 即使 Chef 告诉我挂载成功
  • 如何在 Eclipse 中使用调试视角。[调试 java/j2ee 应用程序]

    是否有任何易于遵循的教程来在 Eclipse 中调试 Java J2EE 应用程序 有关如何检查未检查和已检查异常的分步指南 我一直试图在互联网上寻找 但没有用 要添加 Java 异常断点 在 调试 透视图中选择 断点 视图 然后单击异常断
  • ip地址和mac地址的正则表达式

    谁能建议我 ip 地址和 mac 地址的正则表达式 我正在使用 python 和 django 例如 http ip地址 SaveData 127 0 0 1 00 0C F1 56 98 AD 对于 mac 地址 我尝试遵循但没有成功 0
  • 以 boost 精神实现运算符优先级

    我试图复制这个例子为了实现类似 C 的运算符优先级规则 我从一个子集开始 但最终计划添加其他子集 尽我所能 我无法获得解析单个二进制操作的语法 它可以很好地解析文字 44 3 42 stackoverflow 但会失败 例如3 4 我确实看
  • 通过 Selenium 运行测试用例时出现 java.lang.NullPointerException

    我面临 NullPointerException 的问题 我尽了最大努力 但无法解决这个问题 我正在为我的项目实现 POM 模型 Selenium 这一页 public class VendorsHomePageApp WebDriver
  • 用科学记数法写json float

    我想使用 Python 3 6 以科学记数法表示 JSON 文件中的浮点数 没有 import json a 0 001234567 print json dumps a json encoder FLOAT REPR lambda x e
  • 如何防止 Android 设备在插入电源时进入睡眠状态

    我希望每当我的一项活动正在运行并且手机插入电源时都保持屏幕打开 我知道唤醒锁很棘手 因此我正在寻找有关如何实现此特定目标的示例或一些文档 不要为此使用唤醒锁 只需设置和清除窗口标志WindowManager LayoutParams FLA
  • 在Python中的嵌套字典中添加键

    elements hydrogen number 1 weight 1 00794 symbol H helium number 2 weight 4 002602 symbol He Add an is noble gas氢和氦字典的布尔
  • QFileSystemModel 自定义图标?

    在我的项目中 我有一个 QTreeView 显示我的驱动器上的位置 我需要将文件的所有图标更改为自定义图标 但保留文件夹 我重新实现了 QFileSystemModel 并且能够更改所有图标 有什么方法可以限制仅更改文件而不是文件夹吗 QV
  • 我怎样才能知道 JSF 组件的 id 以便在 Javascript 中使用

    Problem 有时你会想从 javascript 访问一个组件getElementById 但是 id 是在 JSF 中动态生成的 所以你 需要一种获取对象 ID 的方法 我在下面回答了如何做到这一点 原问题 我想使用如下代码 如何在 J
  • 无法更新数据库“*.mdf”,因为只读 EntityFramework

    我有一个 C NET Framework 4 0 桌面应用程序 其中实体框架作为 DAL 当尝试将数据保存到除我之外的任何人的机器上的 DBContext 时 我收到了一个异常 Failed to update database mdf r
  • 属性和多态性

    我有两节课 public class Increase public int a 3 public void add a 5 System out println f class SubIncrease extends Increase p
  • R 中的行相关

    我有两个相同大小的矩阵 我想计算这些矩阵中每对行之间的相关系数 A 的第 1 行与 B 的第 1 行 A 的第 2 行与 B 的第 2 行 等等 A lt matrix runif 1 200 nrow 20 B lt matrix run
  • 在 Android 中使用通过 OTG 线连接的 USB 播放视频?

    我想问是否有可用的应用程序 用户可以通过 OTG 电缆设备将 USB 连接到 Android 并播放其中包含的媒体 特别是视频 我制作了一个广播接收器来检测连接的 USB 我也想读取内容 我正在使用这个代码片段 private final
  • 多层应用程序数据文件夹 - Windows 7

    在命令窗口中 如果我导航到 c users me 并执行 dir 我会看到 13 个文件夹 但没有文件 如果我执行 dir s 我会看到数千个文件 但令我困扰的是我看到这样的路径 C Users me AppData Local Appli
  • 异步 https firebase 函数

    HTTPS 函数是否应该像实时函数那样返回异步承诺 我们还没有返回 HTTPS 函数 仅使用 res status send 等 而且看起来 firebase function samples 也没有返回 但文档有点含糊https fire
  • 从 Excel 调用具有多个参数的存储过程

    我已经建立了 SQL Server 与存储过程所在数据库的连接 存储过程在 SQLServer 中运行良好 存储过程通过与 Excel 中的硬编码参数的连接运行得很好 我得到了我的数据集并将其插入到我的电子表格中 宏不起作用 在宏中 我尝试