Register Register Member Login Member Login Member Login Forgot Password ??
PHP , ASP , ASP.NET, VB.NET, C#, Java , jQuery , Android , iOS , Windows Phone
 

Registered : 109,038

HOME > .NET Framework > Forum > ดึงข้อมูลจาก Excel มาใส่ในแต่ละที่เช่นใน textbox dategridview


 

[.NET] ดึงข้อมูลจาก Excel มาใส่ในแต่ละที่เช่นใน textbox dategridview

 
Topic : 122256



โพสกระทู้ ( 202 )
บทความ ( 0 )



สถานะออฟไลน์



หน้า Ui ครับ
1

ข้อมูล
02

เราจะดึงข้อมูลแบบเปิดไฟล์ แล้วข้อมูลมาแสดงยังไงบ้างอะครับ
ขอตัวอย่างหน่อยครับ ขอบคุณครับ



Tag : .NET, C#

Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2016-04-01 13:09:29 By : phuriwat View : 5295 Reply : 56
 

 

No. 1

Guest


ใช้อะไรอ่าน excel
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-04-01 13:24:34 By : ห้ามตอบเกินวันละ 2 กระทู้
 

 

No. 2



โพสกระทู้ ( 202 )
บทความ ( 0 )



สถานะออฟไลน์


ตอบความคิดเห็นที่ : 1 เขียนโดย : ห้ามตอบเกินวันละ 2 กระทู้ เมื่อวันที่ 2016-04-01 13:24:34
รายละเอียดของการตอบ ::
อันนี้ผมไช้ visual c# 2012 กับ excel2010 อันนี้ผมแอด reference แล้วนะครับ



ประวัติการแก้ไข
2016-04-01 13:33:23
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-04-01 13:32:15 By : phuriwat
 

 

No. 3

Guest


แล้วเรียก interop มาอ่านได้ยัง
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-04-01 13:35:40 By : ห้ามตอบเกินวันละ 2 กระทู้
 

 

No. 4



โพสกระทู้ ( 202 )
บทความ ( 0 )



สถานะออฟไลน์


ตอบความคิดเห็นที่ : 3 เขียนโดย : ห้ามตอบเกินวันละ 2 กระทู้ เมื่อวันที่ 2016-04-01 13:35:40
รายละเอียดของการตอบ ::
คือยังไงครับต้องมีขั้นตอนแบบไหนบ้างครับ

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-04-01 13:38:48 By : phuriwat
 

 

No. 5

Guest


using interop แล้วก็สร้าง intance ของ excel แล้วก็เลือก sheet วนลูป row อ่านข้อมูลในแต่ละ cell
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-04-01 13:44:13 By : ห้ามตอบเกินวันละ 2 กระทู้
 

 

No. 6



โพสกระทู้ ( 202 )
บทความ ( 0 )



สถานะออฟไลน์


ตอบความคิดเห็นที่ : 5 เขียนโดย : ห้ามตอบเกินวันละ 2 กระทู้ เมื่อวันที่ 2016-04-01 13:44:13
รายละเอียดของการตอบ ::
Code (C#)
01.using System;
02.using System.Collections.Generic;
03.using System.ComponentModel;
04.using System.Data;
05.using System.Drawing;
06.using System.Linq;
07.using System.Text;
08.using System.Threading.Tasks;
09.using System.Windows.Forms;
10.using excel = Microsoft.Office.Interop.Excel;
11. 
12.namespace exceltext1
13.{
14.    public partial class Form1 : Form
15.    {
16.        public Form1()
17.        {
18.            InitializeComponent();
19.        }
20. 
21.         private void button1_Click(object sender, EventArgs e)
22.        {
23.            string nameExcel = "";
24.            OpenFileDialog fdlg = new OpenFileDialog();
25.            fdlg.Title = "C# Corner Open File Dialog";
26.            fdlg.InitialDirectory = @"C:\";
27.            fdlg.Filter = "All files (*.*)|*.*|All Files (*.*)|*.xlsx";
28.            fdlg.FilterIndex = 2;
29.            fdlg.RestoreDirectory = true;
30.            if (fdlg.ShowDialog() == DialogResult.OK)
31.            {
32.                textBox1.Text = fdlg.FileName;
33.            }
34. 
35.            nameExcel = fdlg.FileName;
36. 
37. 
38. 
39.          excel.Application App;
40.           excel.Workbook workBook;
41.           excel.Worksheet worksheet;
42.           string strtemplate = nameExcel;
43. 
44.           App= new excel.Application();
45. 
46.           workBook = App.Workbooks.Open(nameExcel,Microsoft.Office.Interop.Excel.XlPlatform.xlWindows);
47. 
48.           worksheet = (excel.Worksheet)workBook.Worksheets.get_Item(1);
49. 
50.           worksheet.Cells[4, 1] = textBox2.Text;
51.}}}




ประวัติการแก้ไข
2016-04-01 13:49:08
2016-04-01 13:49:42
2016-04-01 13:50:12
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-04-01 13:47:28 By : phuriwat
 

 

No. 7



โพสกระทู้ ( 202 )
บทความ ( 0 )



สถานะออฟไลน์


ตอบความคิดเห็นที่ : 6 เขียนโดย : phuriwat เมื่อวันที่ 2016-04-01 13:47:28
รายละเอียดของการตอบ ::
อันนี้โค๊ดตอนนี้อะครับ

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-04-01 13:48:01 By : phuriwat
 

 

No. 8



โพสกระทู้ ( 202 )
บทความ ( 0 )



สถานะออฟไลน์


ได้แล้วครับ ขอบคุณมากครับ
โค๊ดประมานนี้ครับ
Code (C#)
01.string nameExcel = "";
02.            OpenFileDialog fdlg = new OpenFileDialog();
03.            fdlg.Title = "C# Corner Open File Dialog";
04.            fdlg.InitialDirectory = @"C:\";
05.            fdlg.Filter = "All files (*.*)|*.*|All Files (*.*)|*.xlsx";
06.            fdlg.FilterIndex = 2;
07.            fdlg.RestoreDirectory = true;
08.            if (fdlg.ShowDialog() == DialogResult.OK)
09.            {
10.                textBox1.Text = fdlg.FileName;
11.            }
12. 
13.            nameExcel = fdlg.FileName;
14. 
15.            excel.Application App;
16.            excel.Workbook workBook;
17.            excel.Worksheet worksheet;          
18.            string strtemplate = nameExcel;
19.            App = new excel.Application();
20.            workBook = App.Workbooks.Open(nameExcel, 0, true, 5, "", "", true, Microsoft.Office.Interop.Excel.XlPlatform.xlWindows, "\t", false, false, 0, true, 1, 0);
21.            worksheet = (excel.Worksheet)workBook.Worksheets.get_Item(1);
22.            textBox2.Text  = worksheet.get_Range("a3").Value2.ToString();



ประวัติการแก้ไข
2016-04-01 15:20:51
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-04-01 14:34:43 By : phuriwat
 

 

No. 9



โพสกระทู้ ( 4,440 )
บทความ ( 23 )



สถานะออฟไลน์
Facebook

Code
worksheet.Cells[4, 1] = textBox2.Text;


ไม่ตรงกับคำถามนี่ครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-04-01 14:40:56 By : lamaka.tor
 

 

No. 10



โพสกระทู้ ( 202 )
บทความ ( 0 )



สถานะออฟไลน์


ตอบความคิดเห็นที่ : 9 เขียนโดย : lamaka.tor เมื่อวันที่ 2016-04-01 14:40:56
รายละเอียดของการตอบ ::
คือผมจะ browse ไฟล์ excel เข้ามาอะครับ แล้วก็ดึงข้อมูลมาใส้ใน textbox กับ datagrid

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-04-01 14:58:30 By : phuriwat
 

 

No. 11



โพสกระทู้ ( 4,440 )
บทความ ( 23 )



สถานะออฟไลน์
Facebook


แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-04-01 15:21:03 By : lamaka.tor
 

 

No. 12



โพสกระทู้ ( 202 )
บทความ ( 0 )



สถานะออฟไลน์


ตอบความคิดเห็นที่ : 11 เขียนโดย : lamaka.tor เมื่อวันที่ 2016-04-01 15:21:03
รายละเอียดของการตอบ ::
ถ้าจะดึงมาใส่ในgrid ต้องทำไงครับ

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-04-01 15:26:46 By : phuriwat
 

 

No. 13



โพสกระทู้ ( 4,440 )
บทความ ( 23 )



สถานะออฟไลน์
Facebook

1. เราต้องรู้ก่อนว่า excel มันมีข้อมูลสิ้นสุดตรงไหน
2. for loop เพื่อเอาข้อมูลมาลงใน datatable หรือ Datagrid

ประมาณนี้ครับ
Code (C#)
01.DataTable dt = new DataTable();
02.            dt.Columns.Add(new DataColumn("SampleID", typeof(string)));
03.            dt.Columns.Add(new DataColumn("Parameter", typeof(string)));
04.            dt.Columns.Add(new DataColumn("Value", typeof(string)));
05.            dt.Columns.Add(new DataColumn("Date", typeof(string)));
06.            dt.Columns.Add(new DataColumn("ผู้วิเคราะห์", typeof(string)));
07.            dt.Columns.Add(new DataColumn("ผู้ตรวจสอบ", typeof(string)));
08.            dt.Columns.Add(new DataColumn("Seleced", typeof(Boolean)));
09. 
10.OfficeOpenXml.ExcelPackage package = new OfficeOpenXml.ExcelPackage(new System.IO.FileInfo(FileExcel));
11.OfficeOpenXml.ExcelWorksheet sheet = package.Workbook.Worksheets[1];
12.for (int i = 1; i < sheet.Dimension.End.Row; i++)
13.                                {
14.                                    item = 15;
15.                                    if (sheet.Cells[i, item].Value != null)
16.                                    {
17. 
18.                                        if (sheet.Cells[i, item].Value.ToString() != "" && int.TryParse(sheet.Cells[i, item].Value.ToString().Trim().Substring(0, 1), out _i) != true)
19.                                        {
20.                                            DataRow dr = dt.NewRow();
21.                                            sampleID =  sheet.Cells[i, item].Value.ToString();
22.                                            dr["SampleID"] =rgx.Match(sampleID).Groups[1].Value.ToUpper() + " " +string.Format("{0:0000}"int.Parse(rgx.Match(sampleID).Groups[2].Value));
23.                                            dr["Parameter"] = sheet.Cells[i, item + 1].Value;
24.                                            dr["Value"] = sheet.Cells[i, item + 2].Value.ToString();
25.                                            dr["Date"] = dd;
26.                                            dr["ผู้วิเคราะห์"] = sheet.Cells[i, item + 4].Value;
27.                                            dr["ผู้ตรวจสอบ"] = sheet.Cells[i, item + 5].Value;
28.                                            dr["Seleced"] = false;
29.                                            dt.Rows.Add(dr);
30.                                        }
31.                                    }
32.                                }
33. 
34.dataGridView1.Invoke(new Action(() =>
35.                    {
36.                        dataGridView1.DataSource = dt;
37.                        dataGridView1.Columns[2].Width = 120;
38.                        dataGridView1.Columns[3].Width = 150;
39.                        dataGridView1.Columns[4].Width = 180;
40.                        dataGridView1.Columns[5].Width = 180;
41.                        dataGridView1.Columns[6].Width = 80;
42.                        dataGridView1.Sort(dataGridView1.Columns[0], ListSortDirection.Ascending);
43.                    }));

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-04-01 15:37:17 By : lamaka.tor
 

 

No. 14



โพสกระทู้ ( 202 )
บทความ ( 0 )



สถานะออฟไลน์


ตอบความคิดเห็นที่ : 13 เขียนโดย : lamaka.tor เมื่อวันที่ 2016-04-01 15:37:17
รายละเอียดของการตอบ ::
ถ้ากรณีเราไม่รู้ว่าข้อมูลสิ้นสุดตรงไหน่ แต่ถ้าเชคว่า ถ้าแถวAเป้นค่าว่างไห้หยุดการเพิ่มทำไงครับ

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-04-01 15:40:50 By : phuriwat
 

 

No. 15



โพสกระทู้ ( 4,440 )
บทความ ( 23 )



สถานะออฟไลน์
Facebook

แต่ก่อนผมใช้วิธีบ้านๆ ครับ

Code (C#)
1.for (int i = 1; i < 555; i++) //เอาเยอะเข้าว่า
2.      {
3.           item = 15;
4.          if (sheet.Cells[i, item].Value != null)
5.          {
6.           // ค่อยว่ากันไป
7.          }
8.    }


แต่ค้นตะกี้ ก็มีแบบนี้
Code (C#)
1.Microsoft.Office.Interop.Excel.Range range = sheet.UsedRange;
2. int lastColumn = range.Columns.Count;
3. int lastRow = range.Rows.Count;


http://stackoverflow.com/questions/17430418/get-the-last-cell-column-row-of-a-excel-range-object
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-04-01 15:47:54 By : lamaka.tor
 

 

No. 16



โพสกระทู้ ( 202 )
บทความ ( 0 )



สถานะออฟไลน์


ตอบความคิดเห็นที่ : 15 เขียนโดย : lamaka.tor เมื่อวันที่ 2016-04-01 15:47:54
รายละเอียดของการตอบ ::
คือถ้ามันไม่มีแล้วหรือเป็นค่าว่างมันจะหยุด เพิ่มป่ะครับ



ประวัติการแก้ไข
2016-04-01 15:53:37
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-04-01 15:49:38 By : phuriwat
 

 

No. 17



โพสกระทู้ ( 4,440 )
บทความ ( 23 )



สถานะออฟไลน์
Facebook

ใจเยนๆอย่ายึดติดครับ

Code (C#)
01.for (int i = 1; i < 555; i++) //เอาเยอะเข้าว่า
02.      {
03.           item = 15;
04.          if (sheet.Cells[i, item].Value == null)
05.          {
06.           return; //แบบนี้หยุด
07.            
08.          }
09.    }


แต่
Code (C#)
1.for (int i = 1; i < sheet.Rows.End; i++) //แบบนี้หยุด
2.      {
3.           
4.      }


มองให้ต่างกันครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-04-01 16:07:49 By : lamaka.tor
 

 

No. 18



โพสกระทู้ ( 202 )
บทความ ( 0 )



สถานะออฟไลน์


ตอบความคิดเห็นที่ : 17 เขียนโดย : lamaka.tor เมื่อวันที่ 2016-04-01 16:07:49
รายละเอียดของการตอบ ::
ผมก็กะว่าจะไช้ return หละครับง่ายดี

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-04-01 16:22:36 By : phuriwat
 

 

No. 19



โพสกระทู้ ( 4,440 )
บทความ ( 23 )



สถานะออฟไลน์
Facebook

แต่ก่อน(หลายเดือนมาแล้ว) ผมใช้ Select มาเป็น datatable

ออกมาซะเละเลย 5555
เลยคิดว่าวิธี for loop น่าจะเหมาะดี

แต่หากว่า excel เป็น table จ๋า เลยก็แนะนำให้ลองใช้ Select มาเป็น datatable ดูครับจะเร็วกว่า

ของผมตารางมันไม่ตรงกันซะทีเดียวเลยต้องมาใช้ วิธี for loop

http://stackoverflow.com/questions/16293643/import-excel-to-datagridview
http://csharp.net-informations.com/datagridview/csharp-datagridview-load-excel.htm
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-04-01 16:29:46 By : lamaka.tor
 

 

No. 20



โพสกระทู้ ( 202 )
บทความ ( 0 )



สถานะออฟไลน์


ตอบความคิดเห็นที่ : 19 เขียนโดย : lamaka.tor เมื่อวันที่ 2016-04-01 16:29:46
รายละเอียดของการตอบ ::
ถ้าจะบังคับให้มันเริ่มคัดลอก ที่บรรทัด ไหนหละครับ เช่น ถ้ามี หัวแบบอื่นด้วย ละข้อมุลอยู่ตรงกลาง
คือจะเอาแค่ตรงกลางลง grid อะครับสมมุติว่าเอาตั้วแต่ a3 b3 c3 d3 จนถึง บรรทัดสุดท้ายอะครับ


แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-04-02 18:53:25 By : phuriwat
 

 

No. 21



โพสกระทู้ ( 4,440 )
บทความ ( 23 )



สถานะออฟไลน์
Facebook

Code (C#)
1.for (int i = 1; i < sheet.Rows.End; i++) //แบบนี้หยุด
2.      {
3.          // จัดไป
4.      }

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-04-04 08:09:33 By : lamaka.tor
 

 

No. 22



โพสกระทู้ ( 202 )
บทความ ( 0 )



สถานะออฟไลน์


ตอบความคิดเห็นที่ : 21 เขียนโดย : lamaka.tor เมื่อวันที่ 2016-04-04 08:09:33
รายละเอียดของการตอบ ::
อัยยี้เราจะต้องประกาศ พวก using อะไรบ้างอะครับ ผมประกาศไปแค่ อันเดียวอะครับ
Code (C#)
1.using excel = Microsoft.Office.Interop.Excel;


แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-04-05 13:11:01 By : phuriwat
 

 

No. 23



โพสกระทู้ ( 4,440 )
บทความ ( 23 )



สถานะออฟไลน์
Facebook

ตามตัวอย่างเลยครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-04-05 13:20:10 By : lamaka.tor
 

 

No. 24



โพสกระทู้ ( 202 )
บทความ ( 0 )



สถานะออฟไลน์


ตอบความคิดเห็นที่ : 23 เขียนโดย : lamaka.tor เมื่อวันที่ 2016-04-05 13:20:10
รายละเอียดของการตอบ ::
ตรงนี้มันไม่ได้อะครับ
Code (C#)
1.OfficeOpenXml.ExcelPackage package = new OfficeOpenXml.ExcelPackage(new System.IO.FileInfo(FileExcel));
2.OfficeOpenXml.ExcelWorksheet sheet = package.Workbook.Worksheets[1];


แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-04-05 13:34:46 By : phuriwat
 

 

No. 25



โพสกระทู้ ( 4,440 )
บทความ ( 23 )



สถานะออฟไลน์
Facebook

ตอบความคิดเห็นที่ : 24 เขียนโดย : phuriwat เมื่อวันที่ 2016-04-05 13:34:46
รายละเอียดของการตอบ ::
ผมได้ได้ใช้ Microsoft.Office.Interop.Excel เวลาเปลี่ยน ver แล้วอ่านเพี้ยนๆผมเลยใช้ OfficeOpenXml.ExcelPackage

ที่ผมหมายถึงคือตัวอย่าง Microsoft.Office.Interop.Excel

http://stackoverflow.com/questions/17430418/get-the-last-cell-column-row-of-a-excel-range-object


แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-04-05 15:13:53 By : lamaka.tor
 

 

No. 26



โพสกระทู้ ( 202 )
บทความ ( 0 )



สถานะออฟไลน์


ตอบความคิดเห็นที่ : 25 เขียนโดย : lamaka.tor เมื่อวันที่ 2016-04-05 15:13:53
รายละเอียดของการตอบ ::
ยัง ไม่ได้เลยครับ ผมไม่เข้าใจตรง for อะ มันต้องทำยังไงอ่าครับ ต้องเพิ่มเติมตรงไหนยัง ไง งงครับ

อันนี้ต้องเพิ่มเติมยังไงครับ
1

อันนี้โค๊ดตอนนี้

Code (C#)
01.string nameExcel = "";
02.            OpenFileDialog fdlg = new OpenFileDialog();
03.            fdlg.Title = "C# Corner Open File Dialog";
04.            fdlg.InitialDirectory = @"C:\Users\Administrator.UDZOWK481SBWBZN\Desktop\";
05.            fdlg.Filter = "All files (*.*)|*.*|All Files (*.*)|*.xlsx";
06.            fdlg.FilterIndex = 2;
07.            fdlg.RestoreDirectory = true;
08.            if (fdlg.ShowDialog() == DialogResult.OK)
09.            {
10.                textBox1.Text = fdlg.FileName;
11.            }
12. 
13.            nameExcel = fdlg.FileName;
14. 
15.            excel.Application App;
16.            excel.Workbook workBook;
17.            excel.Worksheet worksheet;
18.            string strtemplate = nameExcel;
19.            App = new excel.Application();
20.            workBook = App.Workbooks.Open(nameExcel, 0, true, 5, "", "", true, Microsoft.Office.Interop.Excel.XlPlatform.xlWindows, "\t", false, false, 0, true, 1, 0);
21.            worksheet = (excel.Worksheet)workBook.Worksheets.get_Item(1);
22. 
23.            Microsoft.Office.Interop.Excel.Range range = worksheet.UsedRange;
24.            int lastColumn = range.Columns.Count;
25.            int lastRow = range.Rows.Count;
26. 
27. 
28. 
29.            textBox2.Text = worksheet.get_Range("c4").Value2.ToString();
30. 
31. 
32.            DataTable dt = new DataTable();
33.            dt.Columns.Add(new DataColumn("1", typeof(string)));
34.            dt.Columns.Add(new DataColumn("2", typeof(string)));
35.            dt.Columns.Add(new DataColumn("3", typeof(string)));
36.            dt.Columns.Add(new DataColumn("4", typeof(string)));
37.            dt.Columns.Add(new DataColumn("5", typeof(string)));
38.            dt.Columns.Add(new DataColumn("6", typeof(string)));
39.            dt.Columns.Add(new DataColumn("7", typeof(string)));
40. 
41. 
42.            for (int i; i = worksheet.Rows.End; i++)
43.            {
44. 
45.            }





ประวัติการแก้ไข
2016-04-18 15:44:09
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-04-18 15:43:12 By : phuriwat
 

 

No. 27



โพสกระทู้ ( 4,440 )
บทความ ( 23 )



สถานะออฟไลน์
Facebook

for (int i; i = range.Rows.Count; i++)
{
//ว่าเข้าไปนั่น 5555
}
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-04-18 16:46:09 By : lamaka.tor
 

 

No. 28



โพสกระทู้ ( 202 )
บทความ ( 0 )



สถานะออฟไลน์


ตอบความคิดเห็นที่ : 27 เขียนโดย : lamaka.tor เมื่อวันที่ 2016-04-18 16:46:09
รายละเอียดของการตอบ ::
ไม่ได้เหมือนกันครับ

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-04-18 18:35:19 By : phuriwat
 

 

No. 29



โพสกระทู้ ( 4,440 )
บทความ ( 23 )



สถานะออฟไลน์
Facebook

for (int i; i <= range.Rows.Count; i++)
{
//ว่าเข้าไปนั่น 5555
}

ติดตรงไหน ยังไง รึ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-04-19 08:32:07 By : lamaka.tor
 

 

No. 30



โพสกระทู้ ( 202 )
บทความ ( 0 )



สถานะออฟไลน์


ตอบความคิดเห็นที่ : 29 เขียนโดย : lamaka.tor เมื่อวันที่ 2016-04-19 08:32:07
รายละเอียดของการตอบ ::
ผมไม่เข้าใจอะครับ ว่าต้องไปวน for ตรงไหน ของในexcel อะครับ มันกำหนดจุด วนยังไงครับ

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-04-20 03:01:46 By : phuriwat
 

 

No. 31



โพสกระทู้ ( 4,440 )
บทความ ( 23 )



สถานะออฟไลน์
Facebook

ตรงที่เดิมก็ถูกแล้วครับ

เอางี้ ให้ยึด วัตถุประสงค์ไว้ แล้ว หาโค๊ดไปใส่ให้ได้ตาม วัตถุประสงค์ ง่ายๆบ้านๆ ไม่มาก และ ไม่น้อยเกินไป
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-04-20 08:31:19 By : lamaka.tor
 

 

No. 32



โพสกระทู้ ( 202 )
บทความ ( 0 )



สถานะออฟไลน์


ตอบความคิดเห็นที่ : 31 เขียนโดย : lamaka.tor เมื่อวันที่ 2016-04-20 08:31:19
รายละเอียดของการตอบ ::
คือโค๊ดหละครับที่ยังไม่ได้ งมหลายวันละครับ TT

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-04-20 10:22:21 By : phuriwat
 

 

No. 33



โพสกระทู้ ( 4,440 )
บทความ ( 23 )



สถานะออฟไลน์
Facebook

ตอบความคิดเห็นที่ : 32 เขียนโดย : phuriwat เมื่อวันที่ 2016-04-20 10:22:21
รายละเอียดของการตอบ ::
แสดงว่า วัตถุประสงค์ไม่กระจ่าง ครับ

ความจริง เรื่องโค๊ดนี่ถือว่าเป็นเรื่องที่ง่ายมากๆเลยถ้าเรามีเป้าหมายที่ชัดเจนครับ

รูปแบบการเขียนโปรแกรมผมมีบ้านๆแบบนี้

1.วัตถุประสงค์ของโปรแกรม เช่นมีไว้สำหรับใช้จัดการ karaoke
2.ขั้นตอนการทำงานของโปรแกรม ก็เหมือน input output บ้านๆ
3.ลองทำมือหรือใช้อะไรที่ถนัดทำมันไปก่อนอย่าเพิ่งลงมือเขียนโปรแกรม
4.ศึกษาโค้ดแต่ละขั้นตอนตามข้อ 2
5.เมื่อคล่องแล้วก็มาลงมือทำกัน 55555
6.แก้ไขโค้ดเรื่อยๆเพื่อให้ทำงานได้ดีขึ้น

เอาละ ติดตรงไหนรึ
เห็นบอกแต่ว่าติดๆๆๆๆ ผมยังงงยุเลยว่าติดตรงไหน


แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-04-20 11:19:48 By : lamaka.tor
 

 

No. 34



โพสกระทู้ ( 202 )
บทความ ( 0 )



สถานะออฟไลน์


ตอบความคิดเห็นที่ : 33 เขียนโดย : lamaka.tor เมื่อวันที่ 2016-04-20 11:19:48
รายละเอียดของการตอบ ::
ติดตรงที่เอาข้อมูลจาก excel ลง grid ไม่ได้ครับ คือรู้ว่าต้องใช้ for วน แต่ต้องไปวนในไหนครับ

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-04-20 12:00:20 By : phuriwat
 

 

No. 35



โพสกระทู้ ( 4,440 )
บทความ ( 23 )



สถานะออฟไลน์
Facebook

ถ้าจะให้ผ่าน DataTable ก็ศึกษาเรื่อง DataTable Add rows
ถ้าจะให้ผ่าน Datagrid ก็ศึกษาเรื่อง Datagrid Add rows

เลือกได้เรื่องใดเรื่องหนึ่งครับ

ขอบอกว่าข้อมูลเยอะมากกกกกกกกกกกกกก

10 ปากว่าไม่เท่าตาบอดคับ 55555
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-04-20 14:01:41 By : lamaka.tor
 

 

No. 36



โพสกระทู้ ( 202 )
บทความ ( 0 )



สถานะออฟไลน์


ตอบความคิดเห็นที่ : 35 เขียนโดย : lamaka.tor เมื่อวันที่ 2016-04-20 14:01:41
รายละเอียดของการตอบ ::
คืองี้อะครับ ผมจะเอา ตามกรอบแดงอ่าครับ เอาหมดลงgridหมด แต่ไม่เอา บางช่องอะครับ สมมุติว่ามันมี100 แถวอ่าครับ อันนี้รูปตัวอย่างอ่าครับมันต้องทำยังไงอะครับ
1



ประวัติการแก้ไข
2016-04-20 18:10:25
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-04-20 18:09:24 By : phuriwat
 

 

No. 37



โพสกระทู้ ( 4,440 )
บทความ ( 23 )



สถานะออฟไลน์
Facebook

ให้ผ่าน DataTable หรือ ให้ผ่าน Datagrid เลยละครับ


for (int i; i <= range.Rows.Count; i++)
{
// เอามันมาลงตรงนี้ worksheet.get_Range("c4").Value2.ToString()
}
ไม่เอาช่อง B ก็ไม่ต้องเรียกใช้สิครับ
จะ ข้าม ชิด ฉาก โยก ย้าย ก็ สร้างเงื่อนไขมาได้เลย ครับ

ให้ผ่าน DataTable ก็ อ่าน No. 13
ให้ผ่าน Datagrid ก็ Datagrid.Rows.Add(// เอามันมาลงตรงนี้)
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-04-20 18:22:53 By : lamaka.tor
 

 

No. 38



โพสกระทู้ ( 202 )
บทความ ( 0 )



สถานะออฟไลน์


ตอบความคิดเห็นที่ : 37 เขียนโดย : lamaka.tor เมื่อวันที่ 2016-04-20 18:22:53
รายละเอียดของการตอบ ::
ที่ 13 item คืออะไรอะครับ



ประวัติการแก้ไข
2016-04-20 19:35:22
2016-04-20 19:54:05
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-04-20 19:34:21 By : phuriwat
 

 

No. 39



โพสกระทู้ ( 4,440 )
บทความ ( 23 )



สถานะออฟไลน์
Facebook

item ก็คือ comlumn ครับ

ไม่ต้องสนใจมัน เป็นแค่แนวทาง
ถ้างงอยู่ก็ไปอ่านเกี่ยวกับ C# การใช้งาน Microsoft.Office.Interop.Excel เอา
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-04-21 08:15:06 By : lamaka.tor
 

 

No. 40



โพสกระทู้ ( 4,440 )
บทความ ( 23 )



สถานะออฟไลน์
Facebook

Code (C#)
01.for (int i = 1; i < srange.Rows.Count; i++)
02.                                {
03.                                            DataRow dr = dt.NewRow();
04.                                             
05.                                            dr["1"] =worksheet.get_Range("a" + i).Value2.ToString();
06.                                            dr["2"] = worksheet.get_Range("c" + i).Value2.ToString();
07.                                            dr["3"] = worksheet.get_Range("d" + i).Value2.ToString();
08.                                            dr["4"] = worksheet.get_Range("e" + i).Value2.ToString();
09.                                            dr["5"] = worksheet.get_Range("f" + i).Value2.ToString();
10.                                            dr["6"] = worksheet.get_Range("g" + i).Value2.ToString();
11.                                            dr["7"] = worksheet.get_Range("h" + i).Value2.ToString();
12.                                            dt.Rows.Add(dr);
13.                                        }
14.                                    }
15.                                }
16. 
17. 
18. 
19.dataGridView1.DataSource = dt;


หรือ
Code (C#)
01.for (int i = 1; i < srange.Rows.Count; i++)
02.                                {
03.   
04.                                             
05.                                            dataGridView1.Rows.Add( worksheet.get_Range("a" + i).Value2.ToString(),
06.                                                                                      worksheet.get_Range("c" + i).Value2.ToString(),
07.                                                                                      worksheet.get_Range("d" + i).Value2.ToString(),
08.                                                                                      worksheet.get_Range("e" + i).Value2.ToString(),
09.                                                                                      worksheet.get_Range("f" + i).Value2.ToString(),
10.                                                                                      worksheet.get_Range("g" + i).Value2.ToString(),
11.                                                                                      worksheet.get_Range("h" + i).Value2.ToString())
12.                                        }
13.                                    }
14.                                }

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-04-21 08:42:23 By : lamaka.tor
 

 

No. 41



โพสกระทู้ ( 202 )
บทความ ( 0 )



สถานะออฟไลน์


ตอบความคิดเห็นที่ : 40 เขียนโดย : lamaka.tor เมื่อวันที่ 2016-04-21 08:42:23
รายละเอียดของการตอบ ::
error นี้ครับ
1


แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-04-21 11:38:58 By : phuriwat
 

 

No. 42



โพสกระทู้ ( 202 )
บทความ ( 0 )



สถานะออฟไลน์


ผมลอง อันนี้ a10 ได้แต่ พอ +i ไปก็ขึ้นเหมือนกันอะครับ
Code (C#)
01.for (int i = 1; i <= range.Rows.Count; i++)
02.           {
03.               DataRow dr = dt.NewRow();              
04.               dr["1"] = worksheet.get_Range("a10"+i).Value2.ToString();      
05.              
06.               
07.                dt.Rows.Add(dr);
08. 
09.           }
10.           dataGridView1.DataSource = dt;

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-04-21 12:03:27 By : phuriwat
 

 

No. 43



โพสกระทู้ ( 74,059 )
บทความ ( 838 )

สมาชิกที่ใส่เสื้อไทยครีเอท

สถานะออฟไลน์
Twitter Facebook


แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-04-21 12:08:29 By : mr.win
 

 

No. 44



โพสกระทู้ ( 4,440 )
บทความ ( 23 )



สถานะออฟไลน์
Facebook

พริกแพงบ้างก็ได้นะครับ
เห็นมะนาวแพงกันเยอะแล้ว 5555


เอางี้ครับ
อาจจะต้องนับหนึ่งใหม่

กลับไปหาวิธี อ่าน excel มาให้ได้ก่อนละกันครับ
เอาให้คล่องเลยนะ
ผมมี link มาให้ด้วยครับ

https://www.google.co.th/search?q=C%23+%E0%B8%81%E0%B8%B2%E0%B8%A3%E0%B9%83%E0%B8%8A%E0%B9%89%E0%B8%87%E0%B8%B2%E0%B8%99+Microsoft.Office.Interop.Excel&biw=1280&bih=891&source=lnms&sa=X&ved=0ahUKEwjgiqnokJ_MAhUGkpQKHfc8CxYQ_AUIBSgA&dpr=1

ตาม link นี้เลยครับจะได้ไม่สับสน
ดูๆยิ่งเขียนยิ่งเละเลยนะเนี๊ยะ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-04-21 13:50:21 By : lamaka.tor
 

 

No. 45



โพสกระทู้ ( 202 )
บทความ ( 0 )



สถานะออฟไลน์


ตอบความคิดเห็นที่ : 44 เขียนโดย : lamaka.tor เมื่อวันที่ 2016-04-21 13:50:21
รายละเอียดของการตอบ ::
ลิ้ง c เนี่ย นะครับ

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-04-21 13:55:35 By : phuriwat
 

 

No. 46



โพสกระทู้ ( 4,440 )
บทความ ( 23 )



สถานะออฟไลน์
Facebook

พอไปแคะหาคำตอบของปัญหาถึงได้รู้ว่า มันมาจากเจ้า worksheet.get_Range

ก็เลยตัดมันออกไปซะ
Code (C#)
01.for (int i = 1; i < srange.Rows.Count; i++)
02.                                {
03.                                            DataRow dr = dt.NewRow();
04.                                             
05.                                            dr["1"] =worksheet.Range("a" + i).Value2.ToString();
06.                                            dr["2"] = worksheet.Range("c" + i).Value2.ToString();
07.                                            dr["3"] = worksheet.Range("d" + i).Value2.ToString();
08.                                            dr["4"] = worksheet.Range("e" + i).Value2.ToString();
09.                                            dr["5"] = worksheet.Range("f" + i).Value2.ToString();
10.                                            dr["6"] = worksheet.Range("g" + i).Value2.ToString();
11.                                            dr["7"] = worksheet.Range("h" + i).Value2.ToString();
12.                                            dt.Rows.Add(dr);
13.                                        }
14.                                    }
15.                                }
16. 
17. 
18. 
19.dataGridView1.DataSource = dt;


อันที่จริงก็ต้องขอโทษครับ ที่ผมเอา ท่านเจ้าของกระทู้มาเพราะนึกว่ามันใช้ได้
เลยเป็นเหตุให้ต้องงมหอยกันซักหน่อย 55555
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-04-21 14:15:57 By : lamaka.tor
 

 

No. 47



โพสกระทู้ ( 4,440 )
บทความ ( 23 )



สถานะออฟไลน์
Facebook

รูปแบบการใช้งาน Microsoft.Office.Interop.Excel แบบบ้านๆ ก็คงประมาณว่า

1. Add ref Microsoft.Office.Interop.Excel
2. ประกาศตัวแปรที่จำเป็น Application Workbook และ Worksheet

Code (C#)
1.string nameExcel = @"I:\ALS.FH.901.1_2016.xlsx";
2. 
3.            Microsoft.Office.Interop.Excel.Application App= new Microsoft.Office.Interop.Excel.Application();
4.            Microsoft.Office.Interop.Excel.Workbook workBook= App.Workbooks.Open(nameExcel, Microsoft.Office.Interop.Excel.XlPlatform.xlWindows);
5.            Microsoft.Office.Interop.Excel.Worksheet worksheet = (Microsoft.Office.Interop.Excel.Worksheet)workBook.Worksheets.get_Item(1);


3. เรียกใช้งานตามต้องการ

Code (C#)
1.for (int i = 1; i < 10; i++)
2.            {
3.                MessageBox.Show("" + worksheet.Range["B"+i].Value.ToString());
4.            }

4. ปิดทุกอย่างที่เปิดมา

Code (C#)
1.worksheet = null;
2.            workBook.Close();
3.            App.Quit();


น่าจะประมาณนี้นะครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-04-21 14:27:09 By : lamaka.tor
 

 

No. 48



โพสกระทู้ ( 202 )
บทความ ( 0 )



สถานะออฟไลน์


ตอบความคิดเห็นที่ : 46 เขียนโดย : lamaka.tor เมื่อวันที่ 2016-04-21 14:15:57
รายละเอียดของการตอบ ::
มันไช้เป็น เมททอตไม่ได้อะครับ ผมเลยลองใช้ก้ามปูดู แต่ก็ขึ้นเหมือนเดิม เลย อะ
1



ประวัติการแก้ไข
2016-04-21 14:46:20
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-04-21 14:45:49 By : phuriwat
 

 

No. 49



โพสกระทู้ ( 4,440 )
บทความ ( 23 )



สถานะออฟไลน์
Facebook

มันผิดตั้งแต่ "a10"+i แล้ว

ดูดีๆ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-04-21 14:51:28 By : lamaka.tor
 

 

No. 50



โพสกระทู้ ( 202 )
บทความ ( 0 )



สถานะออฟไลน์


ตอบความคิดเห็นที่ : 49 เขียนโดย : lamaka.tor เมื่อวันที่ 2016-04-21 14:51:28
รายละเอียดของการตอบ ::
แล้วถ้าเราจะเอาค่าที่เป็นช่องว่าง หรือ null ด้วยอะครับ

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-04-21 15:27:38 By : phuriwat
 

 

No. 51



โพสกระทู้ ( 4,440 )
บทความ ( 23 )



สถานะออฟไลน์
Facebook

Code (C#)
1.for (int i = 1; i < 100; i++)
2.            {
3.                 
4.                MessageBox.Show((worksheet.Range["B" + i].Value==null)?"ว๊าง...ว่าง": worksheet.Range["B" + i].Value.ToString());
5.                 
6.            }


ก็คงประมาณนี้ครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-04-21 15:41:34 By : lamaka.tor
 

 

No. 52



โพสกระทู้ ( 202 )
บทความ ( 0 )



สถานะออฟไลน์


ตอบความคิดเห็นที่ : 51 เขียนโดย : lamaka.tor เมื่อวันที่ 2016-04-21 15:41:34
รายละเอียดของการตอบ ::
ได้ละครับ ขอบคุณครับ
Code (C#)
01.for (int i = 10; i <= 500; i++)
02.        {
03.            DataRow dr = dt.NewRow();
04. 
05.            if (worksheet.Range["a" + i].Value == null)
06.            {
07.                dataGridView1.DataSource = dt;
08.                MessageBox.Show("Load Success");
09.                return;
10.            }
11. 
12.            dr["1"] = worksheet.Range["a" + i].Value.ToString();
13.            dr["2] = worksheet.Range["d" + i].Value.ToString();
14.            dr["3"] = worksheet.Range["e" + i].Value.ToString();
15.            dr["4"] = worksheet.Range["f" + i].Value.ToString();
16.            dr["5"] = worksheet.Range["g" + i].Value.ToString();
17.            dr["6"] = (worksheet.Range["h" + i].Value == null) ? "" : worksheet.Range["h" + i].Value.ToString();
18.            dt.Rows.Add(dr);
19.        }




ประวัติการแก้ไข
2016-04-21 16:45:51
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-04-21 16:45:21 By : phuriwat
 

 

No. 53



โพสกระทู้ ( 4,440 )
บทความ ( 23 )



สถานะออฟไลน์
Facebook

จัดไปอย่าได้เสียครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-04-21 16:58:20 By : lamaka.tor
 

 

No. 54



โพสกระทู้ ( 202 )
บทความ ( 0 )



สถานะออฟไลน์


ตอบความคิดเห็นที่ : 53 เขียนโดย : lamaka.tor เมื่อวันที่ 2016-04-21 16:58:20
รายละเอียดของการตอบ ::
datagrid ผม มันเรียงตัวเลข เองอะครับ จะปิดไม่ไห้มันเรียงทำไงครับ

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-04-22 09:59:28 By : phuriwat
 

 

No. 55



โพสกระทู้ ( 202 )
บทความ ( 0 )



สถานะออฟไลน์


ตอบความคิดเห็นที่ : 54 เขียนโดย : phuriwat เมื่อวันที่ 2016-04-22 09:59:28
รายละเอียดของการตอบ ::
ได้ละครับ ขอบคุณครับ ^^

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-04-22 10:09:23 By : phuriwat
 

 

No. 56



โพสกระทู้ ( 4,440 )
บทความ ( 23 )



สถานะออฟไลน์
Facebook


แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-04-22 10:46:40 By : lamaka.tor
 

   

ค้นหาข้อมูล


   
 

แสดงความคิดเห็น
Re : ดึงข้อมูลจาก Excel มาใส่ในแต่ละที่เช่นใน textbox dategridview
 
 
รายละเอียด
 
ตัวหนา ตัวเอียง ตัวขีดเส้นใต้ ตัวมีขีดกลาง| ตัวเรืองแสง ตัวมีเงา ตัวอักษรวิ่ง| จัดย่อหน้าอิสระ จัดย่อหน้าชิดซ้าย จัดย่อหน้ากึ่งกลาง จัดย่อหน้าชิดขวา| เส้นขวาง| ขนาดตัวอักษร แบบตัวอักษร
ใส่แฟลช ใส่รูป ใส่ไฮเปอร์ลิ้งค์ ใส่อีเมล์ ใส่ลิ้งค์ FTP| ใส่แถวของตาราง ใส่คอลัมน์ตาราง| ตัวยก ตัวห้อย ตัวพิมพ์ดีด| ใส่โค้ด ใส่การอ้างถึงคำพูด| ใส่ลีสต์
smiley for :lol: smiley for :ken: smiley for :D smiley for :) smiley for ;) smiley for :eek: smiley for :geek: smiley for :roll: smiley for :erm: smiley for :cool: smiley for :blank: smiley for :idea: smiley for :ehh: smiley for :aargh: smiley for :evil:
Insert PHP Code
Insert ASP Code
Insert VB.NET Code Insert C#.NET Code Insert JavaScript Code Insert C#.NET Code
Insert Java Code
Insert Android Code
Insert Objective-C Code
Insert XML Code
Insert SQL Code
Insert Code
เพื่อความเรียบร้อยของข้อความ ควรจัดรูปแบบให้พอดีกับขนาดของหน้าจอ เพื่อง่ายต่อการอ่านและสบายตา และตรวจสอบภาษาไทยให้ถูกต้อง

อัพโหลดแทรกรูปภาพ

Notice

เพื่อความปลอดภัยของเว็บบอร์ด ไม่อนุญาติให้แทรก แท็ก [img]....[/img] โดยการอัพโหลดไฟล์รูปจากที่อื่น เช่นเว็บไซต์ ฟรีอัพโหลดต่าง ๆ
อัพโหลดแทรกรูปภาพ ให้ใช้บริการอัพโหลดไฟล์ของไทยครีเอท และตัดรูปภาพให้พอดีกับสกรีน เพื่อความโหลดเร็วและไฟล์ไม่ถูกลบทิ้ง

   
  เพื่อความปลอดภัยและการตรวจสอบ กระทู้ที่แทรกไฟล์อัพโหลดไฟล์จากที่อื่น อาจจะถูกลบทิ้ง
 
โดย
อีเมล์
บวกค่าให้ถูก
<= ตัวเลขฮินดูอารบิก เช่น 123 (หรือล็อกอินเข้าระบบสมาชิกเพื่อไม่ต้องกรอก)





ThaiCreate.Com Logo
© www.ThaiCreate.Com. 2003-2025 All Rights Reserved.
ไทยครีเอทบริการ จัดทำดูแลแก้ไข Web Application ทุกรูปแบบ (PHP, .Net Application, VB.Net, C#)
[Conditions Privacy Statement] ติดต่อโฆษณา 081-987-6107 อัตราราคา คลิกที่นี่