0

Excel からテキスト ボックスに読み込まれたデータを取得する必要があります。

GridView で表示する方法は知っていますが、特定のセル値をテキスト ボックスにキャプチャする必要があります。

例: TextBox FirstName はセル A3 から取得する必要があります LastName はセル A4 から取得する必要があります。

誰でも簡単に並べ替えることができますか?

2013 年 11 月 6 日編集

以下のコードを試してみましたが、機能していますが、各テキスト ボックスの値をキャプチャするために別のリーダーを配置しましたが、最初の行のデータのみをキャプチャします。行と列の差のセル値を一度に読み取ってキャプチャするのを手伝ってくれる人はいますか?

string constrg = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + Txtpath.Text + ";Extended Properties=Excel 12.0;";
OleDbConnection conns = new OleDbConnection(constrg);


OleDbDataReader dr;
try
{
    conns.Open();
    OleDbCommand cmd = new OleDbCommand("Select * From [Sheet1$A10:H18]", conns);
    dr = cmd.ExecuteReader();
    if (dr.HasRows == false)
    {
        throw new Exception();
    }
    if (dr.Read())
    {
        
        TxtCluster.Text = dr[2].ToString();
        TxtPGroup.Text = dr[6].ToString();
                        
    }

    OleDbCommand cmd1 = new OleDbCommand("Select * From [Sheet1$A11:H18]", conns);
    dr = cmd1.ExecuteReader();
    if (dr.HasRows == false)
    {
        throw new Exception();
    }
    if (dr.Read())
    {
        
        TxtJbsize.Text = dr[2].ToString();
        TxtOsource.Text = dr[6].ToString();

    }

    OleDbCommand cmd2 = new OleDbCommand("Select * From [Sheet1$A12:H18]", conns);
    dr = cmd2.ExecuteReader();
    if (dr.HasRows == false)
    {
        throw new Exception();
    }
    if (dr.Read())
    {

        TxtNoPg.Text = dr[2].ToString();
        TxtProject.Text = dr[6].ToString();

    }
4

2 に答える 2

2

このリンクを試してくださいOpen xmlを使用してExcelデータをデータテーブルに読み込む方法

OpenDocument(strfileLocation, true);
OpenSheet("Sheet1");
ReadDocument(ref dtData);

あなたはデータテーブルでデータを取得します。その後、このように列を追加するfirstnameことで取得できますlastname

txtFirstName.Text = dtData.rows[0]["C3"].toString();
txtLastName.Text = dtData.rows[0]["C4"].toString();
于 2013-11-05T08:55:06.613 に答える