C# Excel 互操作合并不工作
C# Excel interop merge not working
我定义了一个范围:
Range range = ws.Range[ws.Cells[7, 1], ws.Cells[7, 4]];
并用
检查
range.Interior.Color = rgbBlueViolet;
所以范围是正确的,因为我看到它是彩色的。
但是当我这样做的时候
range.Merge(true);
我得到以下异常:
{System.Runtime.InteropServices.COMException (0x800A03EC): Exception from HRESULT: 0x800A03EC
at System.RuntimeType.ForwardCallToInvokeMember(String memberName, BindingFlags flags, Object target, Int32[] aWrapperTypes, MessageData& msgData)
at Microsoft.Office.Interop.Excel.Range.Merge(Object Across)
我看不懂。
我的目标是将前 4 列合并在一起,这对我来说似乎是合法的。
感谢您的帮助
帕特里克
好的,问题是必须先选择要合并的范围。为此,工作表不能最小化。因此代码是:
Application app = new Application();
app.Visible = false;
app.WindowState = XlWindowState.xlNormal; <---not minimized
...
Range r = ws.Range[ws.Cells[row + 7, 1], ws.Cells[row + 7, 5]];
r.Select(); <-----necessary
r.Merge(false);
我定义了一个范围:
Range range = ws.Range[ws.Cells[7, 1], ws.Cells[7, 4]];
并用
检查range.Interior.Color = rgbBlueViolet;
所以范围是正确的,因为我看到它是彩色的。
但是当我这样做的时候
range.Merge(true);
我得到以下异常:
{System.Runtime.InteropServices.COMException (0x800A03EC): Exception from HRESULT: 0x800A03EC at System.RuntimeType.ForwardCallToInvokeMember(String memberName, BindingFlags flags, Object target, Int32[] aWrapperTypes, MessageData& msgData) at Microsoft.Office.Interop.Excel.Range.Merge(Object Across)
我看不懂。
我的目标是将前 4 列合并在一起,这对我来说似乎是合法的。
感谢您的帮助 帕特里克
好的,问题是必须先选择要合并的范围。为此,工作表不能最小化。因此代码是:
Application app = new Application();
app.Visible = false;
app.WindowState = XlWindowState.xlNormal; <---not minimized
...
Range r = ws.Range[ws.Cells[row + 7, 1], ws.Cells[row + 7, 5]];
r.Select(); <-----necessary
r.Merge(false);