|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
20.12.2010, 08:58 | #1 |
Новичок
Джуниор
Регистрация: 20.12.2010
Сообщений: 1
|
Как взять Range для GridView?
Здравствуйте всем!!!
У меня есть код который тянет данные с Excel файла в GridView. Я хотел бы взять с спридшта только определенные ячейки. Например: Range("A1") и Range("C6") Пожалуйста помогите чем можете. Заранее спасибо!!! using System; using System.Collections; using System.Configuration; using System.Data; using System.Linq; using System.Web; using System.Web.Security; using System.Web.UI; using System.Web.UI.HtmlControls; using System.Web.UI.WebControls; using System.Web.UI.WebControls.WebParts; using System.Xml.Linq; using Microsoft.Office.Interop.Excel; using System.Text; using System.Reflection; public partial class _Default : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { } protected void Button1_Click(object sender, EventArgs e) { DataSet ds = GetExcel("C:\\Book1.xls"); GridView1.DataSource = ds; GridView1.DataBind(); } public DataSet GetExcel(string fileName) { Application oXL; Workbook oWB; Worksheet oSheet; Range oRng; try { // creat a Application object oXL = new ApplicationClass(); // get WorkBook object oWB = oXL.Workbooks.Open(fileName, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value); // get WorkSheet object oSheet = (Microsoft.Office.Interop.Excel.Wor ksheet)oWB.Sheets[1]; System.Data.DataTable dt = new System.Data.DataTable("dtExcel"); DataSet ds = new DataSet(); ds.Tables.Add(dt); DataRow dr; StringBuilder sb = new StringBuilder(); int jValue = oSheet.UsedRange.Cells.Columns.Coun t; int iValue = oSheet.UsedRange.Cells.Rows.Count; // get data columns for (int j = 1; j <= jValue; j++) { dt.Columns.Add("column" + j, System.Type.GetType("System.String" )); } // get data in cell for (int i = 1; i <= iValue; i++) { dr = ds.Tables["dtExcel"].NewRow(); for (int j = 1; j <= jValue; j++) { oRng = (Microsoft.Office.Interop.Excel.Ran ge)oSheet.Cells[i, j]; string strValue = oRng.Text.ToString(); dr["column" + j] = strValue; } ds.Tables["dtExcel"].Rows.Add(dr); } return ds; } catch (Exception) { return null; } finally { Dispose(); } } } |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Где взять, как установить и настроить PDFlib для php 5.3.0 ? | zvezda_t | PHP | 1 | 26.01.2010 11:03 |
Как получить тип range из значений cells | Kuraj | Microsoft Office Excel | 2 | 11.01.2010 14:49 |
Как скопировать range в другой документ | Diego__ | Microsoft Office Word | 10 | 25.12.2009 15:39 |
Как обновить GridView после изменения SELECT в SqlDataSource? | posdnyaa | БД в Delphi | 2 | 21.04.2008 11:55 |
Где взять модуль для редактирования текста. Подойдёт как на этом форуме | kkkggg | PHP | 1 | 21.09.2007 00:59 |