منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب
[C#.NET] طلب تحويل كود - نسخة قابلة للطباعة

+- منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب (http://vb4arb.com/vb)
+-- قسم : قسم لغة السي شارب C#.NET (http://vb4arb.com/vb/forumdisplay.php?fid=175)
+--- قسم : قسم اسئلة C#.NET (http://vb4arb.com/vb/forumdisplay.php?fid=176)
+--- الموضوع : [C#.NET] طلب تحويل كود (/showthread.php?tid=32218)



طلب تحويل كود - AboRakan - 23-11-19

السلام عليكم ورحمة الله وبركاته

أساتذتي الكرام ارغب في تحويل هذا الكود vba اكسيس الى سي شارب

وظيفة الكود الاستيراد من ملف اكسيل الى جدول في قاعدة بيانات اكسيس 

كود :
Dim dlg As FileDialog, strFileName As String
Set dlg = Application.FileDialog(msoFileDialogFilePicker)
With dlg
.Title = "اختر ملف اكسيل المراد استيراد البيانات منه"
.AllowMultiSelect = False
.Filters.Clear
.Filters.Add "Excel Files", "*.xls*", 1
.Filters.Add "All Files", "*.*", 1
If .Show = -1 Then
strFileName = .SelectedItems(1)


Dim ImportFileName As String
ImportFileName = strFileName
DoCmd.TransferSpreadsheet acImport, 8, "table1", ImportFileName, True

Else
Exit Sub
End If
End With

ولكم مني جزيل الشكر


RE: طلب تحويل كود - AboRakan - 23-11-19

السلام عليكم

حاولت استيراد البيانات من اكسيل الى data table   لغرض تصديرها الى قاعدة بيانات اكسيس


كود :
private void cmdExcel_Click(object sender, EventArgs e)

       {
           {
               OpenFileDialog op = new OpenFileDialog();
               op.Filter = "Excel 97 - 2003|*.xls|Excel 2007|*.xlsx";
               if (op.ShowDialog() == System.Windows.Forms.DialogResult.OK)
               {
                   if (File.Exists(op.FileName))
                   {
                       string[] Arr = null;
                       Arr = op.FileName.Split('.');
                       if (Arr.Length > 0)
                       {
                           if (Arr[Arr.Length - 1] == "xls")
                           {
                               sConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + op.FileName + ";Extended Properties=\"Excel 8.0;HDR=Yes;IMEX=1\";";
                           }
                           else if (Arr[Arr.Length - 1] == "xlsx")

                               sConnectionString = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + op.FileName + ";Extended Properties='Excel 12.0 XML;HDR=YES;';";
                       }
                   }
                       FillData();

                   
               }
           }
       }

public string sConnectionString;
        private void FillData()
        {
            if (sConnectionString.Length > 0)
            {
                OleDbConnection cn = new OleDbConnection(sConnectionString);

                cn.Open();
                DataTable dt = new DataTable();
                OleDbDataAdapter Adpt = new  OleDbDataAdapter("selsct * from [tblBlackList]", cn);
                Adpt.Fill(dt);



            }

            {
                OleDbConnection con = new OleDbConnection(sConnectionString);
                da = new OleDbDataAdapter("selsct * from [tblBlackList]", con);
                dt = new DataTable();
                da.Fill(dt);
               
            }

{




المشكلة التي واجهتني في عملية الاستيراد من اكسيل وتعبئة  data table 
حيث ظهرت لي رسالة تفيد 
 System.InvalidOperationException: 'إن الموفر 'Microsoft.ACE.OLEDB.12.0' غير مسجل على الجهاز المحلي.'

للتوضيح تم ارفاق صورة




RE: طلب تحويل كود - asemshahen5 - 23-11-19

راجع هذا الموضوع :

استيراد ملف اكسل الى DataGridView


RE: طلب تحويل كود - AboRakan - 23-11-19

شكرا لك اخي الكريم
المثال والكود vb.net

الذي ارديده #c
حاولت عمل الطريقه ولكن لم تفلح مازالت المشكلة


RE: طلب تحويل كود - asemshahen5 - 24-11-19

تفضل هذا المثال محول للغة السي شارب :


RE: طلب تحويل كود - AboRakan - 24-11-19

[quote pid='152399' dateline='1574601352']
أشكر لك استاذي الكريم اهتمامك ولكن المثال لم يعمل حيث خرجت رسالة كما في الصورة المرفقة



[/quote]
آمل ان اجد الحل وفقكم الله


RE: طلب تحويل كود - asemshahen5 - 24-11-19

اخي العزيز الملف المرفق شغال 100% اولا عليك استيراد مكتبة Excel من مجلد packages المرفق مع المثال و هذه صورة من المثال :

[attachment=23523]


RE: طلب تحويل كود - AboRakan - 24-11-19

(24-11-19, 09:01 PM)asemshahen5 كتب : اخي العزيز الملف المرفق شغال 100% اولا عليك استيراد مكتبة Excel و مكتبة ICSharpCode.SharpZipLib من مجلد packages المرفق مع المثال و هذه صورة من المثال :

كل الشكر لك استاذي الكريم على التوضيح لك مني اطيب التحايا Heart


RE: طلب تحويل كود - asemshahen5 - 25-11-19

الحمد الله و الشكر الله رب العالمين .