删除单元格中值前面的空白字符 C#

Removing a blank character in-front of a value in a cell C#

我目前正忙于使用 C# 处理 excel 数据的应用程序。但是我遇到了一个问题。

列中的数据前面都有一个空白 space,这会扰乱 Sum() 功能。

我有这个方法来读取列中的每一行并删除数据前面的空白 space。

private void BlankCheck()
        {
            string Val,NT;
            int RCount = xlWorksheet.UsedRange.Rows.Count;
            for(int X = 3; X < RCount; X++)
            {
                Val = (string)(xlWorksheet.Cells[X, 8] as Excel.Range).Text;
                NT = Val.Trim();
                xlWorksheet.Cells[X, 8] = "\b"+NT.ToString();
            }
            xlApp.Quit();
            ReleaseObject(xlWorksheet);
            ReleaseObject(xlWorkbook);
            ReleaseObject(xlApp);
        }

由此产生的结果是正确的,如下面的截图所示

现在问题就出在这里,打开新的excel文档时,空白的space都还在数据的前面。所以我在写入单元格时将“\b”添加到字符串中,但这就是结果。

我不确定为什么会出现那些 []? 有什么建议吗?

这是 excel 列在代码 运行 没有 /b 之前和之后的样子。不确定你是否能看到它,但时间前面有一个空白字符。对于那些有问题的人,这里也有代码。

private void BlankCheck()
        {
            string Val,NT;
            int RCount = xlWorksheet.UsedRange.Rows.Count;
            for(int X = 3; X < RCount; X++)
            {
                Val = (string)(xlWorksheet.Cells[X, 8] as Excel.Range).Text;
                NT = Val.Trim();
                xlWorksheet.Cells[X, 8] = NT.ToString();
            }
            xlApp.Quit();
            ReleaseObject(xlWorksheet);
            ReleaseObject(xlWorkbook);
            ReleaseObject(xlApp);
        }

谢谢

我认为如果您在释放对象之前调用 xlWorkbook.Save() 会有所帮助。