【问题标题】:C# Excel from textbox to excel cellC# Excel 从文本框到 Excel 单元格
【发布时间】:2020-04-08 07:16:27
【问题描述】:

我在从文本框复制和粘贴到 Excel 单元格时遇到了一点问题。基本上,当我从网站获取数据到文本框时,我无法定期将这些值放入 excel 单元格中。

我的数据:

xxxxxxx-qqq-1111-13661 3********************* 01/02/2020 02/03/2016 0

xyzxyzx-qqq-2222-11067 3********************* 02/03/2016 12/09/2028 0

qazwsge-qqq-1234-01940 6********************* 03/04/2015 09/01/2002 0

qweqwfe-qqq-4567-01941 6********************* 04/05/2013 17/06/2025 0         

您可以看到列之间有 4 个空格。

当我使用手动或 [Clipboard.SetText(textBox1.Text)] 技术从文本框中复制这些数据时,我可以再次手动粘贴任何 Excel 工作表。但是,当我选择任何单元格时,我确实选择并单击了单元格,我可以定期将我的数据一一粘贴。 (当我双击单元格时,我无法将数据一个一个地粘贴到单元格中,只能留在一个单元格中)

我试过这段代码,但它的反应就像双击一样。

        Clipboard.SetText(textBox1.Text);
        Excel.Range area = (Excel.Range)xlPage.Cells[2,1];
        area.Value2 = Clipboard.GetText();

我的问题是,如何使用 C# 代码进行手动操作?这种手工技术可行吗?

最好的问候,

【问题讨论】:

    标签: c# excel textbox excellibrary


    【解决方案1】:

    在 excel VBA 中,您可以使用方法 TextToColumns 来做您想做的事。 有关 C#.NET 示例,请参阅 https://docs.microsoft.com/en-us/dotnet/api/microsoft.office.tools.excel.namedrange.texttocolumns?view=vsto-2017

    以下是您的应用程序的示例代码。

    Clipboard.SetText(textBox1.Text);
    Excel.Range area = (Excel.Range)xlPage.Cells[2,1];
    area.Value2 = Clipboard.GetText();
    
    area.TextToColumns(area, Excel.XlTextParsingType.xlDelimited, Excel.XlTextQualifier.xlTextQualifierDoubleQuote, true)
    

    【讨论】:

      【解决方案2】:

      感谢您的回答,

      我找到了解决方案。您可以尝试 PasteSpecial 方法。

      Clipboard.SetText(textBox1.Text); Excel.Range area = (Excel.Range)xlPage.Cells[2,1]; area.PasteSpecial();

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2017-07-23
        • 1970-01-01
        • 2015-01-01
        • 2017-05-31
        • 1970-01-01
        • 1970-01-01
        • 2018-12-12
        • 1970-01-01
        相关资源
        最近更新 更多