【问题标题】:Allow leading zeros on a worksheet with EP Plus使用 EP Plus 允许在工作表上使用前导零
【发布时间】:2013-10-06 13:45:10
【问题描述】:

您好,我正在将 Ep Plus 与 Web 应用程序一起使用。我正在创建一个用户可以填写并上传回应用程序的 Excel 文件。当我输入带有前导零的数字时,它们会被截断。

是否允许用户输入前导零?

【问题讨论】:

  • 下载文件后,用户将使用 MS Excel 编辑 Excel 文件。我需要格式化列以允许前导零

标签: c# excel epplus


【解决方案1】:

这个问题的公认答案对我不起作用。我发现这篇 Microsoft 的文章解决了我的问题。 https://support.microsoft.com/en-gb/help/81518/using-a-custom-number-format-to-display-leading-zeros

我正在处理邮政编码,所以我能够做到这一点:

workSheet.Column(4).Style.Numberformat.Format = "00000";

这很有效,因为我的邮政编码总是 5 位数。

【讨论】:

    【解决方案2】:

    玩转ExcelRange 的风格,你可以实现你想要的:

    var range = // get the range you want
    // Force the numbers to have 2 digits to the left and 1 digit to the right
    // of the decimal place.
    range.Style.NumberFormat.Format = "00.0"
    

    您可以通过打开 Excel 并使用数字格式对话框来使用不同的可用格式。

    【讨论】:

    • 谢谢,这是让我朝着正确方向前进所需要的
    【解决方案3】:

    我需要的格式是“@”所以代码行是

    codeSheet.Cells["A:D"].Style.Numberformat.Format = "@";
    

    【讨论】:

      【解决方案4】:

      确保您使用插入或单元格格式作为text 而不是数字,而不是允许您使用前导零

      string text  = "'0001"
      

      【讨论】:

        【解决方案5】:
         Excel.Range formatRange;
            formatRange.NumberFormat = "@";
        

        【讨论】:

        • 请详细说明你的答案
        • 感谢您提供此代码 sn-p,它可能会提供一些有限的即时帮助。一个正确的解释would greatly improve 其长期价值通过展示为什么这是解决问题的好方法,并将使其对未来有其他类似问题的读者更有用。请edit您的回答添加一些解释,包括您所做的假设。
        猜你喜欢
        • 2016-08-28
        • 1970-01-01
        • 2018-12-15
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2015-02-13
        • 2020-02-21
        • 2013-03-23
        相关资源
        最近更新 更多