0

RichTextBox には、1 行に 1 項目ずつ、52 項目が格納されています。だから私は52行を持っています。

RichTextBox の各行の値を Excel の範囲 C17:C42 & H17:H42 に書き込む必要があります。

正確なセルに配列を書き込むための種類のコードを使用します。

//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;

RichTextBox の各行を読む方法は次のとおりです。

    string s = richTextBoxReceive.Text;
    var k = Regex.Split(s, "\\n", RegexOptions.Multiline);

    foreach (string str in k)
    {
        //do what you want
        MessageBox.Show(str);
    }

これらを組み合わせるにはどうすればよいですか?

4

2 に答える 2

0

うまくいくと思います……

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);
于 2012-06-10T07:35:32.320 に答える
0

わかりました、私はすでにこれを自分で解決しました。配列を使用して、行ごとにリッチテキスト ボックスを読み取りました。

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];
    }
}
于 2012-06-10T15:09:08.367 に答える