C#regex.split从richtextbox到范围excel

C#regex.split从richtextbox到范围excel,c#,.net,excel,C#,.net,Excel,我有52项存储在RichTextBox中,每行一项。所以我有52行 我需要将RichTextBox中每行的值写入Excel范围C17:C42和H17:H42 我使用a类代码在精确单元格中写入数组: //for the first 26 data range = objSheet.get_Range("C17:C42", Missing.Value); object[,] numbers1 = new object[26, 1]; for (int i = 0; i <= 25; i++)

我有52项存储在RichTextBox中,每行一项。所以我有52行

我需要将RichTextBox中每行的值写入Excel范围C17:C42和H17:H42

我使用a类代码在精确单元格中写入数组:

//for the first 26 data
range = objSheet.get_Range("C17:C42", Missing.Value);
object[,] numbers1 = new object[26, 1];
for (int i = 0; i <= 25; i++)
{
   numbers1[i, 0] = //here i want a read each line in richtextbox; 
}
range.Value2 = numbers1;

我如何将这些结合起来?

我认为它会起作用

void insert( List<string> value)
{
    //for the first 26 data
    range = objSheet.get_Range("C17:C42", Missing.Value);
    object[,] numbers1 = new object[26, 1];
    for (int i = 0; i <= 25; i++)
    {
        //value contains the data
        numbers1[i, 0] = value[i];
    }
     range.Value2 = numbers1;
}


//Get value from richtextbox
string s = richTextBoxReceive.Text;
var k = Regex.Split(s, "\\n", RegexOptions.Multiline);
List<string> allvalue=new List<string>();

foreach (string str in k)
{
    allvalue.Add(str);
}
//call insert method to insert data into excell
insert(allvalue);
void插入(列表值)
{
//对于前26个数据
范围=对象表.get_范围(“C17:C42”,缺少.Value);
对象[,]numbers1=新对象[26,1];

对于(inti=0;iok),我已经自己解决了这个问题。我使用了一个数组,每行读取richtextbox

range = objSheet.get_Range("C17:C42", Missing.Value);
object[,] numbers3 = new object[26,1];
for (int i = 0; i<= richTextBoxReceive.Lines.Length; i++)
{
    for (int j = 0; j <= 25; j++)
    {
        numbers3[j, 0] = richTextBoxReceive.Lines[j + 1];
    }
}
range=objSheet.get_range(“C17:C42”,缺少.Value);
对象[,]numbers3=新对象[26,1];

对于(int i=0;代码已成功编译,但excel中没有任何值),我认为问题在于您的这行代码范围=objSheet.get_range(“C17:C42”,Missing.value);object[,]numbers1=新对象[26,1];您认为应该做些什么?我已经尝试提供更多数组和单元格,数据不会在excel中显示;range=objSheet.get_range(“C17:C67”,缺少.Value);对象[,]numbers1=新对象[52,1];用于(int i=0;我非常清楚如何在excell数组中插入值。谢谢pallob先生,我已经解决了这个问题,最终我使用数组读取richtextbox中的行,因为我不熟悉正则表达式方法,你的数学是错误的,c17:c42总共有26个单元格,所以h17:h42给出了52,数据是我从se中的微控制器读取的电压数rial端口,我试图通过GUI绕过它
range = objSheet.get_Range("C17:C42", Missing.Value);
object[,] numbers3 = new object[26,1];
for (int i = 0; i<= richTextBoxReceive.Lines.Length; i++)
{
    for (int j = 0; j <= 25; j++)
    {
        numbers3[j, 0] = richTextBoxReceive.Lines[j + 1];
    }
}