【发布时间】:2018-07-30 14:16:44
【问题描述】:
我正在开发一个填充 Excel 文件的小程序(C#,使用 Visual Studio 2015)。 此 Excel 工作表包含一个下拉列表,其中填充了来自同一文件中不同工作表的数据。
目前您必须手动选择所需的项目,因此可以设置许多变量。工作表有一个宏,其中包含一些需要这些变量的计算。 我正在制作的程序将使该过程自动化,因此我需要以编程方式在列表中选择正确的项目,然后运行宏。这就是我卡住的地方。我可以向其他单元格添加值并且宏运行良好,但它使用的是默认列表值。
我一直在寻找解决方案,但无法让它发挥作用。 这对我没有任何作用: Changing the value in a drop down list Excel C#
worksheet.Cells[4, 3] = "5";
其中“5”是一个任意索引,只是为了让它改变。不工作。 用“实际字符串值”替换“5”也不起作用。
我正在使用 Microsoft.Office.Interop.Excel.Application 对象来控制文件。
如何从列表中选择一个项目?通过匹配字符串或通过索引,两者都可以。
【问题讨论】:
-
你试过
worksheet.Cells[4, 3].Value2 = "The Value"吗? -
是的,也没有用。我尝试在打开文件后立即添加睡眠,然后在运行宏之前添加另一个,可能列表尚未填充。虽然没有解决它..
-
更多信息:单元格值确实会更新,但在打开文件时它会重置为默认列表项。新值在很短的时间内可见。
-
在更改下拉值时参考此答案 stackoverflow.com/a/56024648/7892990>
标签: c# excel drop-down-menu