Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/313.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C#.NET:将滚动条添加到Excel工作表_C#_Excel Interop - Fatal编程技术网

C#.NET:将滚动条添加到Excel工作表

C#.NET:将滚动条添加到Excel工作表,c#,excel-interop,C#,Excel Interop,我需要向工作表添加一个滚动条,并使用Microsoft.Office.Interop.Excel库和C#.NET将单元格链接到该工作表 相应的VBA代码如下所示: ActiveSheet.ScrollBars.Add(545.25, 172.5, 398.25, 24.75).Select With Selection .Value = 0 .Min = 0 .Max = 100 .SmallChange = 1 .LargeChange = 10

我需要向工作表添加一个滚动条,并使用Microsoft.Office.Interop.Excel库和C#.NET将单元格链接到该工作表

相应的VBA代码如下所示:

    ActiveSheet.ScrollBars.Add(545.25, 172.5, 398.25, 24.75).Select
With Selection
    .Value = 0
    .Min = 0
    .Max = 100
    .SmallChange = 1
    .LargeChange = 10
    .LinkedCell = "$A$1"
    .Display3DShading = True
End With
我尝试了下面的代码,它添加了滚动条,但没有按预期工作,也无法将单元格链接到它

oSheet.Shapes.AddOLEObject("Forms.ScrollBar.1", Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, 545.25, 172.5, 398.25, 24.75);
我的C#.NET代码将滚动条作为对象添加到Excel中,我需要它作为控件。这似乎是有区别的

使用我的C#.NET代码的实际结果如下图所示

但预期结果如下图所示:

我找到了解决办法。 是的,之前我添加了ActiveX对象来代替控件。下面的代码工作正常

using Excel = Microsoft.Office.Interop.Excel;

                   :
                   :

Excel.ControlFormat Scrollbar  = oSheet.Shapes.AddFormControl(Excel.XlFormControl.xlScrollBar, 545, 172, 398, 24).ControlFormat;

Scrollbar.Value = 0;
Scrollbar.Min = 0;
Scrollbar.Max=100;
Scrollbar.SmallChange = 1;
Scrollbar.LargeChange = 10;
Scrollbar.LinkedCell = "$A$1";