如何让用户在 c# vsto excel 插件中选择单元格(范围输入)?

Atr*_*rav 3 c# excel vba vsto excel-addins

我需要的是让用户控制选择一些将在程序中使用的单元格。该界面在许多 Excel 函数中很容易看到,例如向图表插入数据时。

可以轻松访问预先选择的范围,Globals.ThisAddIn.Application.ActiveWindow.RangeSelection但这不是我正在研究的,因为我需要多个这样的范围。我正在visual-studio上尝试这个,有一个Interaction.InputBox函数可以接受字符串,据说相当于Inputboxvba,但是vba的输入框有输入数据类型的参数,而c#输入框没有。

与此等效的 VBA 是

Dim rngX as Range
Set rngX = Application.InputBox("Select a cell or a range", "Input Cells", Type:=8)
Run Code Online (Sandbox Code Playgroud)

Type:=8 将使输入框接受范围输入。但我需要在 C# 中执行此操作(使用 Visual Studio),并且 C# 的 Inputbox 方法没有像 VBA 这样的输入类型。

小智 5

Range myRange;

myRange = Globals.ThisAddIn.Application.InputBox("Please select your range?", "Range Selector", Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, 8);
Run Code Online (Sandbox Code Playgroud)

  • 虽然此代码可以回答问题,但提供有关此代码为何和/或如何回答问题的附加上下文可以提高其长期价值。 (2认同)