🙂 İNSANLARIN EN HAYIRLISI INSANLARA FAYDALI OLANDIR 🙂

Ramazan HABER / C# RMOS / Excel to Class C#

4-) 4. yolu en üste yazdım en iyisi gibi

 

public void ExcelXlsxYukle()

        {

            DevExpress.DataAccess.Excel.ExcelDataSource myExcelSource = new DevExpress.DataAccess.Excel.ExcelDataSource();

            myExcelSource.FileName = @"TurkiyeOtelleri.xlsx";

 

            ExcelWorksheetSettings worksheetSettings = new ExcelWorksheetSettings("SalesPerson", "A1:L13");

            myExcelSource.SourceOptions = new ExcelSourceOptions(worksheetSettings);

            //or

            myExcelSource.SourceOptions = new CsvSourceOptions() { CellRange = "A1:L100000" };

            myExcelSource.SourceOptions.SkipEmptyRows = false;

            myExcelSource.SourceOptions.UseFirstRowAsHeader = true;

            myExcelSource.Fill();

            gridControl1.DataSource = myExcelSource;

 

            gridView1.BestFitColumns();

 

        }

 

1-) C# RMOS - Excel to Class C# (1.YOL)

 

public void MyExcelRead(string path)

        {

            try

            {

                //path = @"C: \Users\rambo\Documents\visual studio 2015\Projects\Excel\Rezervasyon100718.XLSX";

                var fileName = string.Format(path);

                var connectionString = string.Format("Provider=Microsoft.ACE.OLEDB.12.0;Data Source={0}; Extended Properties=Excel 12.0;", fileName);

 

                var adapter = new OleDbDataAdapter("SELECT * FROM [Sayfa1$]", connectionString);

                var ds = new DataSet();

 

                adapter.Fill(ds, "hardcatAssets");

                DataTable data = ds.Tables["hardcatAssets"];

                gridControl1.DataSource = data;

 

            }

            catch (Exception ex)

            {

                MessageBox.Show("Hata! "+ex.Message);

            }

        }

2-) 2. YOL

 

 

public static DataTable exceldata(string filePath)

        {

            DataTable dtexcel = new DataTable();

            bool hasHeaders = false;

            string HDR = hasHeaders ? "Yes" : "No";

            string strConn;

            if (filePath.Substring(filePath.LastIndexOf('.')).ToLower() == ".xls")

                strConn = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + filePath + ";Extended Properties=\"Excel 12.0;HDR=" + HDR + ";IMEX=0\"";

            else

                strConn = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + filePath + ";Extended Properties=\"Excel 8.0;HDR=" + HDR + ";IMEX=0\"";

            OleDbConnection conn = new OleDbConnection(strConn);

            conn.Open();

            DataTable schemaTable = conn.GetOleDbSchemaTable(OleDbSchemaGuid.Tables, new object[] { null, null, null, "TABLE" });

            //Looping Total Sheet of Xl File

            /*foreach (DataRow schemaRow in schemaTable.Rows)

            {

            }*/

            //Looping a first Sheet of Xl File

            DataRow schemaRow = schemaTable.Rows[0];

            string sheet = schemaRow["TABLE_NAME"].ToString();

            if (!sheet.EndsWith("_"))

            {

                string query = "SELECT  * FROM [Sayfa1$]";

                OleDbDataAdapter daexcel = new OleDbDataAdapter(query, conn);

                dtexcel.Locale = CultureInfo.CurrentCulture;

                daexcel.Fill(dtexcel);

            }

 

            conn.Close();

            return dtexcel;

 

        }

 

3-) 3. YOL en iyisi gibi

 

 

  private System.Data.DataTable LoadXLS(string strFile, string sheetName)

        {

            System.Data.DataTable dtXLS = new System.Data.DataTable(sheetName);

            try

            {

                string strConnectionString = "";

                if (strFile.Trim().EndsWith(".xlsx"))

                {

                    strConnectionString = string.Format("Provider=Microsoft.ACE.OLEDB.12.0;Data Source={0};Extended Properties=\"Excel 12.0 Xml;HDR=YES;IMEX=1\";", strFile);

                }

                else if (strFile.Trim().EndsWith(".xls"))

                {

                    strConnectionString = string.Format("Provider=Microsoft.Jet.OLEDB.4.0;Data Source={0};Extended Properties=\"Excel 8.0;HDR=Yes;IMEX=1\";", strFile);

                }

                else if (strFile.Trim().EndsWith(".xlsm"))

                {

                    strConnectionString = string.Format("Provider=Microsoft.ACE.OLEDB.12.0;Data Source={0};Extended Properties=\"Excel 12.0 Macro;HDR=Yes;IMEX=1\";", strFile);

                }

                OleDbConnection SQLConn = new OleDbConnection(strConnectionString);

                SQLConn.Open();

                OleDbDataAdapter SQLAdapter = new OleDbDataAdapter();

                string sql = "SELECT * FROM [" + sheetName + "$]";

                OleDbCommand selectCMD = new OleDbCommand(sql, SQLConn);

                SQLAdapter.SelectCommand = selectCMD;

                SQLAdapter.Fill(dtXLS);

                SQLConn.Close();

            }

            catch (Exception)

            {

                throw;

            }

            return dtXLS;

        }

 

 

2-) AÇIKLAMA

 

 AS -> KOYARAK DEĞİŞTİREBİLİRSİN

 

 string query = "SELECT F1 AS firma FROM [Sayfa1$]";

 

 

 2021 Ocak 18 Pazartesi
 498