以编程方式在Excel上隐藏列并再次填充时出错

时间:2013-03-26 11:33:21

标签: c# excel excel-interop

我正在开发一个Excel Addin,用于填充包含网页信息的工作表。

有一个按钮,显示另外两列,我获取信息并填充列,然后,如果未按下“显示此列”按钮,我隐藏它们:

Range gColumn = swatDataSheet.Columns["G"];
Range hColumn = swatDataSheet.Columns["H"];

if (!showOmniWorksButton.Checked)
{
    gColumn.Hidden = true;
    hColumn.Hidden = true;
}
else
{
    gColumn.Hidden = false;
    hColumn.Hidden = false;
}

第一次一切正常,但如果我刷新工作表并再次填充,一切都从我之前隐藏的列开始,即使它现在没有被隐藏。如果我的数据在A1上开始,则在删除并再次填充后,它将从我隐藏的列G1开始。

这是一个错误还是我做错了什么?

谢谢。

1 个答案:

答案 0 :(得分:0)

粘贴代码中没有看到任何错误,所以我猜它可能与填充信息的代码有关。

您如何填写数据?您刚开始填充当前所选列中的列吗?如果是这样,也许这就是原因,你算法只是从选择中填充。首次运行填充时,尝试从G列中选择一个单元格。