تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
[VB.NET] مشكلة فى قراءة ملف اكسيل كما فى الصورة المرفقة
#1
Photo 
فى المرفق كما فى الصورة ملف الاكسيل لا يقرأ رغم تحقق الاتصال به وتظهر رسالة كما فى الصورة .
ارجو الاجابة ..... أين الخطأ


الملفات المرفقة صورة/صور
   

.rar   ddd.rar (الحجم : 69.35 ك ب / التحميلات : 8)
الرد }}}
تم الشكر بواسطة:
#2
كود :
       ofd.Filter = "excel2013| * .xlsx|excel2003| * .xls"
       If ofd.ShowDialog = Windows.Forms.DialogResult.OK Then
           Dim path As String = ofd.FileName
           Dim CONN As New OleDbConnection("PROVIDER=MICROSOFT.ACE.OLEDB.12.0;DATA SOURCE=" & path & ";EXTENDED PROPERTIES=""Excel 12.0;HDR=Yes"";")
           Dim dt As New DataTable
           Dim da As New OleDbDataAdapter("select * from [Sheet1$]", CONN)
           da.Fill(dt)
           DataGridView1.DataSource = dt
       End If
جرب هذا الكود
الرد }}}
تم الشكر بواسطة: rnmr , ابراهيم ايبو , elgokr
#3
الاخ العزيز الفاضل اشكرك على سرعة الاستجابة فى تلبية الطلب وارجو شرح سبب الخطأ حتى يتم الاستفادة منه ........ وجعله الله فى ميزان
الرد }}}
تم الشكر بواسطة: ابراهيم ايبو
#4
الخطأ الأول في المسار بتاع ملف الاكسيل :

"DATA SOURCE=path;"
كود :
DATA SOURCE=" & path & ";


الخطأ الثاني :
عبأت الداتا سيت و أردت تعبئة الجدول من الداتا تيبل

كود :
da.Fill(ds, "[Sheet1$]")
DataGridView1.DataSource = dt
الرد }}}
تم الشكر بواسطة: ابراهيم ايبو , elgokr
#5
الله عليك وعلى الشرح الجميل عشان نفهم
ولكن عند تعديل الكود وكتابة
( "[da.Fill(ds, "[Sheet1$
       DataGridView1.DataSource = ds
تظهر DataGridView خالية تماما ولا تعرض الجدول فلماذا؟؟
وشكرا على الشرح والتعليم
الرد }}}
تم الشكر بواسطة: elgokr , elgokr
#6
(05-10-18, 05:22 AM)monm كتب : الله عليك وعلى الشرح الجميل عشان نفهم
ولكن عند تعديل الكود وكتابة
                   ( "[da.Fill(ds, "[Sheet1$
       DataGridView1.DataSource = ds
تظهر DataGridView خالية تماما ولا تعرض الجدول فلماذا؟؟
وشكرا على الشرح والتعليم

في التعليق السابق قلت لك مكان الأخطاء و في التعليق الذي يسبقه وضعت لك الكود الصحيح اعمل مقارنة بينهم .

عند استخدام الداتا سيت عليك وضعها كالتالي :

Dim ds As New Dataset
DataGridView1.DataSource = ds.Table("[Sheet1$]")

اما إذا كنت تستخدم داتا تيبل فتكتب كالتالي :

Dim DT as New DataTable
DataGridView1.DataSource=DT
الرد }}}
تم الشكر بواسطة: elgokr , elgokr



التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم