عبد الفتاح كيرة قام بنشر ديسمبر 8, 2017 قام بنشر ديسمبر 8, 2017 السلام عليكم وجدت بالمنتدى هذا الموضوع لتصدير الاستعلامات إلى إكسيل لكنى أبحث عن ميزة اختيار الحقول التى يتم تصديرها من الاستعلام يعى مثلا الاستعلام ينتج 45 حقلا أرغب فى تصدير الحقول من 19 : 45 و لكم جزيل الشكر
Shivan Kurdi - شڤان کوردی قام بنشر ديسمبر 8, 2017 قام بنشر ديسمبر 8, 2017 7 ساعات مضت, عبد الفتاح كيرة said: لكنى أبحث عن ميزة اختيار الحقول التى يتم تصديرها من الاستعلام يعى مثلا الاستعلام ينتج 45 حقلا أرغب فى تصدير الحقول من 19 : 45 السلام عليكم ورحمة الله وبركاته سلام خاص للغائبين هناك احتمال ان يفيدك هذا الموضوع لاستاذنا @jjafferr لان فیھا انت تختار الحقول الاستعلام ... ای تقدر بعد اختیار الحقول ان تصدیرھا الێ اکسل والله يعلم 1 1
عبد الفتاح كيرة قام بنشر ديسمبر 8, 2017 الكاتب قام بنشر ديسمبر 8, 2017 وفقك الله أخ شيفان دائما سباق للمساعدة جارى الاطلاع 1
عبد الفتاح كيرة قام بنشر ديسمبر 8, 2017 الكاتب قام بنشر ديسمبر 8, 2017 للأسف ليس هذا هو المطلوب المطلوب تصدير استعلام و ليس تقريرا إلى إكسيل الوظيفة DoCmd.TransferSpreadsheet acExport, acSpreadsheetTypeExcel12Xml, "staff_list_with_grouping", "C:\test\test.xlsx", True فيها اختيار تحديد الحقول المراد تصديرها لكن طريقة عمله ليست واضحة لدى
عبد الفتاح كيرة قام بنشر ديسمبر 9, 2017 الكاتب قام بنشر ديسمبر 9, 2017 السلام عليكم الحل المؤقت و هو ليس سيئا هو عمل استعلام من الاستعلام الأصلى واختيار الحقول المطلوب إظهارها فقط بعد ذلك يتم تصدير هذا الاستعلام الأخير وشكرا لتعاونكم
أبو إبراهيم الغامدي قام بنشر ديسمبر 10, 2017 قام بنشر ديسمبر 10, 2017 وعليكم السلام ورحمة الله أهلا بك أستاذ عبد الفتاح ومرحبا.. عودا حميد.. أرجو أن أوفق لإرضاء طموحك.. لأني أتساءل كيف ستقوم باستخدم الطريقة على مستوى المستخدم؟! هل ستسلمة بيانات مفتوحة المصدر؟! أم أن لديك طريقة ما تتيح للمستخدم انتقاء حقول البيانات ومعالجنها ومن ثم تصديرها؟! على كل حال إليك الطريقة.. يمكن تصدير حقول مختارة من جدول أو استعلام عن طريق مزودات البيانات لأكسس (DAO,ADO) عن طريق خصيصة توصيف البيانات لكل منهما.. هناك فروق بسيط بين المزودين لكن سوف أركز على (DAO) لكونة المزود الافتراضي لأكسس.. يمكن توصيف البيانات على مستوى قاعدة البيانات، كما يمكن توصيف البيانات على مستوى مصدر السجلات (Recordset).. صيغة الشفرة لهذه المكونات كالتالي مكون (ِADO) Function OLEDB() As ADODB.Connection Set OLEDB = New ADODB.Connection OLEDB.Open "Provider = Microsoft.ACE.OLEDB.12.0;Data Source =" & CurrentProject.Path & _ "\EMPLOYEES.XLSX;Extended Properties = 'Excel 12.0;HDR=YES;'" End Function مكون (DAO) Function XLDB() As DAO.Database DB_PATH = CurrentProject.Path & "\BOOK2" Set XLDB = OpenDatabase(DB_PATH, True, False, "EXCEL 12.0;HDR=YES;") End Function يكون مصدر البيانات لهذين المكونيين هو ملف أكسل، فإذا كان ملف أكسل موجود مسبقا فإن المكون سيقوم بإدراج ورقة البيانات إلى الملف، أما إذا كان ملف أكسل غير موجود فسيقوم المكون بإنشاء الملف وإدراج ورقة البيانات.. إذا كان ملف أكسل يحتوي على ورقة بيانات بنفس الاسم فسيعيد المكون رسالة الخطأ (3010) مفادها أن ورقة البيانات موجودة مسبقا.. ينطبق ما سبق على مكون مصدر السجلات (Recordset) وهذه صيغته Sub EXPORT_TO_EXCEL_02(SHEET_NAME) '.. EXPORT TO EXCEL USING CURENTDB EXECUTE CurrentDb.Execute "SELECT ID, [LAST NAME],[FIRST NAME] INTO [" & SHEET_NAME & "]IN'" _ & CurrentProject.Path & "\employees'[Excel 8.0;HDR=yes;] FROM EMP1" End Sub يمكن أيضا استخدام (DOCMD.RUNSQL) لكونها تعمد على (DAO) في مصدر البيانات وهذه صيغته Sub EXPORT_TO_EXCEL_01(SHEET_NAME) '.. EXPORT TO EXCEL USING DOCMD RUNSQL DoCmd.RunSQL "SELECT ID, [LAST NAME],[FIRST NAME] INTO [" & SHEET_NAME & "]IN'" _ & CurrentProject.Path & "\employees'[Excel 8.0;HDR=yes;] FROM EMP1" End Sub أرجو ملاحظة أن الأخيرين لهما نفس الصيغة في تعريف البيانات الصيغة المخصصة لتوصيف بيانات أكسل هي "EXCEL 8.0;HDR=YES;" 'تستخدم هذه الصيغة على مستوى قاعدة البيانات [EXCEL 8.0;HDR=YES;] 'تستخدم هذه الصيغة على مستوى مصدر السجلات الرقم في هذه الصيغة يمثل رقم إصدار نسخة الأوفس، وهو هنا للسخة 2003، وأنصح باستخدام هذه الرقم لتجنب وقوع خطأ عدم مطابقة النسخة عند تصدير البيانات... طريقة تصدير البيانات تعتمد على صيغة استعلام عمل جدول (SELECT ... INTO.. IN.. [EXCEL 8.0;HDR=YES] FROM) ..SELECT تأخذ اسماء حقول البيانات ..INTO ينشئ جدول يحمل البيانات العائدة من SELECT .. الجدول هنا هو ورقة البيانات في أكسل ..IN تأخد اسم ملف أكسل مع الدليل [EXCEL 8.0] ثوصيف مصدر البيانات المصدر إليها البيانات FROM تأخذ اسم جدول البيانات في أكسس المثال التالي يوضح كيف يمكن استخددام الطريقة على مستوى المستخدم؛ وذلك بتمكينه اختيار الحقول إما من الجدول أو استعلام ومن ثم تصديرها إلى أكسل Access With Excel.zip 6 2
عبد الفتاح كيرة قام بنشر ديسمبر 10, 2017 الكاتب قام بنشر ديسمبر 10, 2017 (معدل) في ٨/١٢/٢٠١٧ at 10:43, عبد الفتاح كيرة said: السلام عليكم وجدت بالمنتدى هذا الموضوع لتصدير الاستعلامات إلى إكسيل لكنى أبحث عن ميزة اختيار الحقول التى يتم تصديرها من الاستعلام يعى مثلا الاستعلام ينتج 45 حقلا أرغب فى تصدير الحقول من 19 : 45 و لكم جزيل الشكر أشكرك جدا أستاذنا أبا إبراهيم مائدة عامرة بالحلول أما عن طريقة تمكين المستخدم وكيفية اختياره للحقول فالحقيقة أن المستخدم لن يختار حقولا بل سيكون الاختيار جاهزا ويتم تصدير الاستعلام جملة عن طريق زر أمر بيانات العاملين فيها حقول مثل الدرجة المالية مثلا الدرجة المالية تساوى 1 فى الجدول الرئيس وهناك جدول يبين ما اسم الدرجة 1 وهو جدول مساعد به مسميات الدرجات الدرجة 1 تساوى مسمى الدرجة الأولى فى استعلام ندرى حقل الدرجة من الجدول الرئيسى و هى هنا الرقم 1 وباستخدام dlookup فى نفس الاستعلام نحصل على مسمى الدرجة النصى وهو (الدرجة الأولى) الحقل النص هو المراد تصديره والحقل الرقمى لا نريد تصديره لأنه غير مفهوم للجهة المرسل إليها التقرير المشكلة أنه عند التصدير يصدر كل الحقول حتى حقول نعم/لا ما أريده هو اختيار أرقام أو أسماء الحقول المصدرة من داخل الكود وهذا متوفر فى الأكواد التى أرسلتها حقيقة أول مرة أدرى أن Insert into تستخدم للتصدير إلى شيت عوضا عن جدول جارى التجربة جزاك الله خيرا على ما تقدمه وهل من الأسهل انتقاء الحقول فى استعلام يستخدم الاستعلام الأول لانتقاء الحقول و من ثم تصديره؟ وعن العودة للمنتدى فدائما أعود للتعلم منكم و إثارة التساؤلات و المشكلات وتلقى جواهر الحلول جزاكم الله خيرا تم تعديل ديسمبر 10, 2017 بواسطه عبد الفتاح كيرة
عبد الفتاح كيرة قام بنشر ديسمبر 11, 2017 الكاتب قام بنشر ديسمبر 11, 2017 (معدل) الحمد لله أخذ حاجتى من هذه الحلول الرائعة بهذا الكود مع تعديل اسم الشيت كل مرة Sub EXPORT_TO_EXCEL_01(SHEET_NAME) '.. EXPORT TO EXCEL USING DOCMD RUNSQL DoCmd.RunSQL "SELECT [EmpName],[Mada],[nsun1],[nsun2],[nsun3],[nsun4],[nsun5],[nsun6] , [nsun7], [nsun8], [nmon1], [nmon2], [nmon3], [nmon4], [nmon5], [nmon6],[nmon7],[nmon8], [ntu1],[ntu2],[ntu3],[ntu4],[ntu5],[ntu6] , [ntu7], [ntu8] , [nwed1],[nwed2],[nwed3],[nwed4],[nwed5],[nwed6] , [nwed7] , [nthu1],[nthu2],[nthu3],[nthu4],[nthu5],[nthu6] , [nthu7] INTO [" & SHEET_NAME & "]IN'" _ & CurrentProject.Path & "\الجدول'[Excel 8.0;HDR=yes;] FROM q_all" End Sub وفى الاستدعاء Private Sub أمر23_Click() DoCmd.SetWarnings False EXPORT_TO_EXCEL_01 "جدول " & Format(Now(), "mm:ss") MsgBox "تم تصدير الجدول بنجاح إلى نفس مجلد قاعدة البيانات سيتم فتح المجلد الآن... " On Error GoTo 1 Application.FollowHyperlink CurrentProject.Path 1: DoCmd.SetWarnings True End Sub شكرا لك أخانا الفاضل أبا إبراهيم نجد لديك مستويات من الأكواد و الطرق كأنك تقرأ من كتب لا ندرى نحن عنها شيئا هلا دللتنا على بعض مصادر تعلمك وفقكم الله تم تعديل ديسمبر 11, 2017 بواسطه عبد الفتاح كيرة
Shivan Kurdi - شڤان کوردی قام بنشر ديسمبر 11, 2017 قام بنشر ديسمبر 11, 2017 16 ساعات مضت, عبد الفتاح كيرة said: نجد لديك مستويات من الأكواد و الطرق كأنك تقرأ من كتب لا ندرى نحن عنها شيئا هلا دللتنا على بعض مصادر تعلمك فعلا ... حين قرأت مشاركة استاذنا @أبو إبراهيم الغامدي قلت لنفسي بكل هدوء ... لا ارى اي مشاركته بدون فائدة ... دائما عنده شيء جديد ... دائما اتعلم منه شيئا جديدا الله يحفظكم وانا ايضا اطلب كما طلبت استاذ عبدالفتاح وايضا اطلب لاستاذ عبدالفتاح ان يرفق قاعدة تجربته هنا لكي نستفيد منها اكثر تحيات لكم 2
عبد الفتاح كيرة قام بنشر ديسمبر 11, 2017 الكاتب قام بنشر ديسمبر 11, 2017 4 ساعات مضت, Shivan Rekany said: وانا ايضا اطلب كما طلبت استاذ عبدالفتاح وايضا اطلب لاستاذ عبدالفتاح ان يرفق قاعدة تجربته هنا لكي نستفيد منها اكثر تحيات لكم صار مطلبا جماهيريا حبذا لو يفتتح الأخ إبراهيم موضوعا يختاره لشرح vba إن شاء الله أرفع لكم الملف بعد حذف البيانات الخاصة منه 1
أبو إبراهيم الغامدي قام بنشر ديسمبر 12, 2017 قام بنشر ديسمبر 12, 2017 في 12/11/2017 at 03:01, عبد الفتاح كيرة said: شكرا لك أخانا الفاضل أبا إبراهيم نجد لديك مستويات من الأكواد و الطرق كأنك تقرأ من كتب لا ندرى نحن عنها شيئا هلا دللتنا على بعض مصادر تعلمك وفقكم الله في 12/11/2017 at 19:43, Shivan Rekany said: فعلا ... حين قرأت مشاركة استاذنا @أبو إبراهيم الغامدي قلت لنفسي بكل هدوء ... لا ارى اي مشاركته بدون فائدة ... دائما عنده شيء جديد ... دائما اتعلم منه شيئا جديدا الله يحفظكم هذا من نبلكما أخواي وسابق فضلكما، ولا أعتقد أن ما قدمته يسمو إلى مقامكما.. ولكنه التواضع المعهود فيكما.. 19 ساعات مضت, عبد الفتاح كيرة said: حبذا لو يفتتح الأخ إبراهيم موضوعا يختاره لشرح vba لا أظن أنني أحسن هذا النوع من المشاركات.. أرجو المعذرة.. 4
الردود الموصى بها
انشئ حساب جديد او قم بتسجيل دخولك لتتمكن من اضافه تعليق جديد
يجب ان تكون عضوا لدينا لتتمكن من التعليق
انشئ حساب جديد
سجل حسابك الجديد لدينا في الموقع بمنتهي السهوله .
سجل حساب جديدتسجيل دخول
هل تمتلك حساب بالفعل ؟ سجل دخولك من هنا.
سجل دخولك الان