【问题标题】:How to eliminate trailing empty row/columns如何消除尾随的空行/列
【发布时间】:2012-06-06 08:56:45
【问题描述】:

我正在使用 Microsoft Interop 将 excel 文件转换为 csv 文件。我使用 sheet.SaveAs 函数。

我的初始 excel 表有 100 行的从 A1 到 AZ 列的数据。 我在 CSV 中只需要从 A1 到 AP 的数据,并且只需要 50 行。

使用 Range 函数,我删除了第 51-100 行,我清除了相同行的内容,当我保存为 CSV 时,我发现第 51-100 行如下:(只是逗号)。我不想在 CSV 中看到这些逗号。

,,,,,,,,,,,,,,,,,,,,,,,,,, ,,,,,,,,,,,,,,,,,,,,,,,,,

AQ-AZ 列也是如此。我不希望 CSV 中的这些数据。我使用 Range 功能删除、清除内容,但这些 AQ-AZ 列在 CSV 文件中显示为“,,,,,,,,,,,,,,,,,,,,,”。

有没有办法将 XLS 保存为 CSV,只包含我想在 CSV 文件中看到的范围。有没有办法控制进入 CSV 文件的范围?

简而言之,我想在 CSV 文件中查看 50 行的 A1 到 AP 列的数据。没有空的尾随“,”。有什么办法吗?

【问题讨论】:

    标签: c# excel csv interop xls


    【解决方案1】:

    您所描述的问题似乎是“最后一个单元格”问题。最后一个单元格是数据的原始结尾,即使在您删除行/列之后也是如此。

    以下是微软对此的评价:How to reset the last cell in Excel

    我似乎记得执行此操作的程序化方式,但在我的一生中,我不记得是如何做到的。

    看过这些信息后,也许您可​​以重新考虑如何做到这一点。

    也许你可以只读取你需要的数据并自己写出来。

    即对于范围内的每一行,将该行作为一个值获取,该值将是一个对象数组, 转换为字符串数组,string.join,分隔符为逗号并追加 到 .csv 文件。

    【讨论】:

    • 这对我有用。刚刚选择了空列,然后在清除菜单下我选择了全部。
    • @wsams 对我不起作用,起作用的是将填充的列复制到新工作表中并覆盖旧的 CSV 文件。
    【解决方案2】:

    只需选择 Excel 中的尾随空列,右键单击并选择:清除内容。然后保存。

    【讨论】:

      【解决方案3】:

      按照另一个答案中的建议清除内容对我不起作用,起作用的是将填充的列复制到新工作表中并覆盖旧的 CSV。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2021-08-09
        • 2019-11-27
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多