السلام عليكم ورحمة الله وبركاته
أساتذتي الكرام ارغب في تحويل هذا الكود 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
ولكم مني جزيل الشكر
السلام عليكم
حاولت استيراد البيانات من اكسيل الى 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' غير مسجل على الجهاز المحلي.'
للتوضيح تم ارفاق صورة
شكرا لك اخي الكريم
المثال والكود vb.net
الذي ارديده #c
حاولت عمل الطريقه ولكن لم تفلح مازالت المشكلة
تفضل هذا المثال محول للغة السي شارب :
[quote pid='152399' dateline='1574601352']
أشكر لك استاذي الكريم اهتمامك ولكن المثال لم يعمل حيث خرجت رسالة كما في الصورة المرفقة
[/quote]
آمل ان اجد الحل وفقكم الله
اخي العزيز الملف المرفق شغال 100% اولا عليك استيراد مكتبة Excel من مجلد packages المرفق مع المثال و هذه صورة من المثال :
[
attachment=23523]
(24-11-19, 09:01 PM)asemshahen5 كتب : [ -> ]اخي العزيز الملف المرفق شغال 100% اولا عليك استيراد مكتبة Excel و مكتبة ICSharpCode.SharpZipLib من مجلد packages المرفق مع المثال و هذه صورة من المثال :
كل الشكر لك استاذي الكريم على التوضيح لك مني اطيب التحايا

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