-
Posts
673 -
تاريخ الانضمام
-
تاريخ اخر زياره
-
Days Won
13
نوع المحتوي
المنتدى
مكتبة الموقع
معرض الصور
المدونات
الوسائط المتعددة
كل منشورات العضو أبو إبراهيم الغامدي
-
معالجة بيانات جدول الحصص في المشاركة السابقة لم أفعل شيء لمعالجة البيانات سوى أني قمت بإلة التنسيق المطبق على ورقة البيانات.. أما عن استخلاص البيانات من ورقة البيانات؛ فهذا يخضع للمتطلبات التي يحددها المبرمج.. وكمثال على ورقة بيانات: __ الطلب الأول استخلاص أسماء الطلاب وأرقامهم الأكاديمية.. في هذه الحالة لدينا خيارين: _ الأول استخلاص البيانات وعمل جدول جديد بتلك البيانات. _ الثاني استخلاص البيانات وإرسالها إلى جدول موجود مسبقا. __ الإشكالية التي تواجهنا بهذا الخصوص هي الاستطر الفارغة تحت كل اسم.. من واقع ورقة البيانات نعلم أن الأسطر الفارغة هي بيانات تكرارية لنفس الطالب أعلى الفرغات.. لحل هذا الاشكال ننشي استعلام مع حذف الفراغات، أما إذا كان هنالك بيانات متكررة فإننا نستخدم مع سبق عبارة DISTINCT __ التطبيق يمكن عن طريق معالج الاستعلامات، وأيضا عن طريق الشفرة وفي كلا الحالتين نستخدم جملة الاستعلام التالية SELECT DISTINCT F25 AS STID,F24 AS STNAME FROM [SCHEDULE$B16:END]AS STUDENTS IN 'schedules.xlsx'[EXCEL 12.0;] WHERE (NOT ISNULL(F25)) سوف أقوم بالشرح في المشاركة التالية Noor Data Processing.zip
- 13 replies
-
- 3
-
- البيانات النصية (csv;text)
- بيانات أكسل
-
(و1 أكثر)
موسوم بكلمه :
-
أهلا بكم.. قبل التعامل مع البيانات يجب الرجوع إلى ملف أكسل وإزالة جميع التنسيقات المفروضة على الملف، وذلك عن طريق إزالة كافة التنسيقات.. هذا الإجراء يعطي تصورا واضحا للمعالج عن موضع الأعمدة؛ لأن الغالب في تقارير نور المنسقة أنها تقوم بدمج الأعمدة! آمل مراجعة المرفق لمعرفة الفرق بين التقارير المنسقة وغير المنسقة.. Noor Data Processing.zip
- 13 replies
-
- البيانات النصية (csv;text)
- بيانات أكسل
-
(و1 أكثر)
موسوم بكلمه :
-
أهلا بكم.. هذه المشاركة مفتوحة لمن يريد المساهمة في ابتكار وسائل لمعالجة البيانات المستوردة من نظام نور التعليمي وطرق عرضها في قواعد بيانات أكسس.. أرجو من الذين لهم علاقة بنظام نور وضع أمثلة للبيانات للمساعدة في تحقيق هذا الهدف الذي يخدمهم بالدرجة الأولى.. مثال لجدول الحصص.xlsx
- 13 replies
-
- 4
-
- البيانات النصية (csv;text)
- بيانات أكسل
-
(و1 أكثر)
موسوم بكلمه :
-
هل ممكن عرض الصور بشكل الشبكه نموذج مستمر
أبو إبراهيم الغامدي replied to عبدالعليم اسماعيل's topic in قسم الأكسيس Access
نعم يمكن.. لكن نحن بحاجة مزيد من التفصيل فيما يتعلق بالبيانات المتعلقة بالعميل، وأيضا البيانات المرتبطة بالعميل، وأيضا البيانات المتعلقة بالصور وعلاقة هذه البيانات بالعميل.. الأشياء المبهمة لا تثير اهتمام الأعضاء! وشيئا آخر وهو ما يتعلق بقاعدة بيانات المثال نريدها خفيفة الظل مع ما يكفي من البيانات التي تساعد في إيجاد الحل المناسب.. -
اضافة البيانات في أكثر من شيت في ملف اكسل
أبو إبراهيم الغامدي replied to عفرنس's topic in قسم الأكسيس Access
هل لدي ملف أكسل لهذا الجدول؟ يكون كرما منك لو أرفقته -
اضافة البيانات في أكثر من شيت في ملف اكسل
أبو إبراهيم الغامدي replied to عفرنس's topic in قسم الأكسيس Access
المرفق السابق به خطأ.. أعتذر! Active Teacher.zip -
اضافة البيانات في أكثر من شيت في ملف اكسل
أبو إبراهيم الغامدي replied to عفرنس's topic in قسم الأكسيس Access
أهلا @عفرنس في المرة القادمة قم بنسخ النموذج الذي في المرفق والصقه في قاعدة البيانات خاصتك مع تغيير الاسم.. هذا الاجراء يوفر عليك الوقوع في الخطأ غير المقصود من نسخ الشفرة ولصقها.. أرجو بعد الانتهاء من الإجراء أعلاه أن تجرب اختيار شعب عشوائية وتصدرها إلى أكسل لترى النتيجة... لا تنسخ الشفرة .. انسخ النموذج بالكامل.. -
اضافة البيانات في أكثر من شيت في ملف اكسل
أبو إبراهيم الغامدي replied to عفرنس's topic in قسم الأكسيس Access
لو رجعت إلى مشاركي وإلى قاعدة البيانات المثال التي أرفقتها مع التعديلات التي أجريتها لوجدت أني قد أجريت تعديل على النموذج ونبهت على السبب الذي أوجب هذا التعديل! وهذا يعني أنك تستخف بي! -
اضافة البيانات في أكثر من شيت في ملف اكسل
أبو إبراهيم الغامدي replied to عفرنس's topic in قسم الأكسيس Access
لحل هذه الاشكالية وتمكين اختيار شعب بعينها يلزم تبديل الشفرة يالتالي Public Sub barnaExcelFile(sXlsFile As String) Dim fldrname As String Dim fldrpath As String Dim LExcelOriginal As String Dim LExcelCopyOf As String Dim WHERE$ '.. اللاحقة $ تعني أن المتغير نصي Dim RS_SECTIONS As DAO.Recordset Dim RS_STUDENTS As DAO.Recordset Dim fso As Object Dim objExcel As Object Dim objWorkbook As Object '-- إنشاء مجلد للمقرر Set fso = CreateObject("scripting.filesystemobject") fldrname = Me.[text3] fldrpath = CurrentProject.Path & "\السجل الالكتروني\" & fldrname If Not fso.FolderExists(fldrpath) Then fso.createfolder (fldrpath) End If '-- التأكد من توفر البيانات الأولية If Len(Me.text2) Then WHERE$ = " WHERE (Student.المادة='" & Me.text3 & "')AND (Student.الشعبة='" & Me.text2 & "')" ElseIf Len(Me.text3) Then WHERE$ = " WHERE (Student.المادة='" & Me.text3 & "')" Else MsgBox "بيانات التصدير غير مكتملة" Exit Sub End If '-- إيجاد الشعب Set RS_SECTIONS = CurrentDb.OpenRecordset _ ("SELECT DISTINCT [الشعبة] FROM Student " & WHERE$ & "ORDER BY [الشعبة]") If RS_SECTIONS.RecordCount = 0 Then MsgBox "لا توجد بيانات لتصديرها" Exit Sub End If '-- نسخ قالب مصنف البيانات إلى مجلد المقرر LExcelOriginal = sXlsFile LExcelCopyOf = CurrentProject.Path & "\السجل الالكتروني\" & fldrname & "\" & Me.[text3] & "_.xlsm" Call FileCopy(LExcelOriginal, LExcelCopyOf) Set objExcel = CreateObject("Excel.Application") Set objWorkbook = objExcel.Workbooks.Open(LExcelCopyOf) '-- تدوير البيانات بناء على الشعب Dim SHEET% Do Until RS_SECTIONS.EOF SHEET% = Choose(CInt(RS_SECTIONS![الشعبة]), 2, 4, 6, 8, 2, 4, 6, 8) '-- إيجاد أسماء الطلاب بناء على الشعبة Set RS_STUDENTS = CurrentDb.OpenRecordset _ ("SELECT STUACDID,STUNAME FROM STUDENT " _ & "WHERE (Student.المادة='" & Me.text3 & "') AND (Student.الشعبة='" & RS_SECTIONS![الشعبة] & "')" _ & " ORDER BY STUNAME") '-- تغيير مسمى الورقة objWorkbook.SHEETS(SHEET%).Name = RS_SECTIONS![الشعبة] '-- بيانات الترويسة objWorkbook.SHEETS(SHEET%).range("B1").Value = _ "اسماء طلاب الصف " & "(" & Me.[text1] & ")" _ & " -- " & "(" & RS_SECTIONS![الشعبة] & ")" _ & " المادة " & "(" & Me.[text3] & ")" _ & " معلم المادة / " & "(" & Me.[text4] & ")" '-- بيانات الطلاب objWorkbook.SHEETS(SHEET%).range("c5").CopyFromRecordset RS_STUDENTS '-- الانتقال إلى الشعبة التالية RS_SECTIONS.MoveNext Loop '-- حفظ البيانات objExcel.DisplayAlerts = True objWorkbook.Close SaveChanges:=True '-- إغلاق المصادر objExcel.Quit Set objWorkbook = Nothing Set objExcel = Nothing Set RS_SECTIONS = Nothing Set RS_STUDENTS = Nothing ' VBA.Shell "Explorer.exe " & Chr(34) & LExcelCopyOf & Chr(34), vbNormalFocus"هذا السطر لفتح ملف الاكسل بعد التصدير" ' DoCmd.DeleteObject acTable, "temp" MsgBox "تم تصديرالبيانات بنجاح" End Sub Active Teacher.zip -
اضافة البيانات في أكثر من شيت في ملف اكسل
أبو إبراهيم الغامدي replied to عفرنس's topic in قسم الأكسيس Access
أرجو أن تتفهم أنه في هذه المرحلة لا يمكن اختيار شعبة أو شعب بعينها! يجب أن تكون الشعب متسلسة. لا تقم باختيار قيمة في مربع الشعبة! -
اضافة البيانات في أكثر من شيت في ملف اكسل
أبو إبراهيم الغامدي replied to عفرنس's topic in قسم الأكسيس Access
أعتذر عن هذا الخطأ.. أ. @Barna قام بالواجب -
اضافة البيانات في أكثر من شيت في ملف اكسل
أبو إبراهيم الغامدي replied to عفرنس's topic in قسم الأكسيس Access
@Barna @عفرنس أهلا بكما.. نعم.. يمكن ذلك! لكني بحاجة إلى مزيد من التوضيح! لأن التبويبات مسماة مسبقا يأسماء الشعب! ما الذي يحيركما؟! أريد أن أعرف أكثر.. قد كانت عندي اشكالية فيما إذا اختار المستخدم شعبا محددة بعينها لا تتوافق مع هو مقدر في قالب أكسل إما بزيادة أو نقص،أو كانت الشعب المقررة للمعلم ليست متسلسلة.. -
توحيد استعلام بعدة استعلامات بمعايير
أبو إبراهيم الغامدي replied to كريمو2's topic in قسم الأكسيس Access
من حقك أن تتحفظ أو تعترض متى وكيف شئت، على الرحب والسعة.. كان الحديث منصب على حالة معينة لأعمدة متنوعة في استعلام التوحيد.. ولعلك لاحظت أن القيم قد جمعت في استعلامات منفردة ضمن استعلام التوحيد! وهذا ما جعل مراجعة البيانات وتصحيحها غاية في الصعوبة.. نعم البيانات ذات العمود الواحد يمكن تجميعها رأسياً؛ بل لا يمكن إلا ذلك! لكن الأعمدة المتعددة لا يمكن تجميعها رأسياً! إنما هو رصها فوق بعضها باستخدام استعلام التوحيد! بعد تجميعها في استعلامات منفصلة، إما ضمناً أو خارجاً عن استعلام التوحيد. أما يتعلق بالسجلات المتعدد فلا يلزمك سوى استخدام خاصية التجميع فقط! -
اضافة البيانات في أكثر من شيت في ملف اكسل
أبو إبراهيم الغامدي replied to عفرنس's topic in قسم الأكسيس Access
أهلا بالجميع.. الفكرة التي تناولتها حسب البيانات المتوفرة كاللآتي بما أن المقرر الدراسي يمكن أن يكون في أكثر من شعبة، والطلاب يتبعون للشعب فسوف يكون ترشيح البيانات كما يلي _ المقرر - شعبة1 - طلاب - شعبة 2- طلاب وهكذا حسب الشعب المدرجة لكل مقرر إليكم الشفرة بعد التعديل.. أرجو عدم اختيار الشعبة في هذه المرحلة لأنها بحاجة إلى المناقشة Public Sub barnaExcelFile(sXlsFile As String) Dim fldrname As String Dim fldrpath As String Dim LExcelOriginal As String Dim LExcelCopyOf As String Dim WHERE$ '.. اللاحقة $ تعني أن المتغير نصي Dim RS_SECTIONS As DAO.Recordset Dim RS_STUDENTS As DAO.Recordset Dim fso As Object Dim objExcel As Object Dim objWorkbook As Object '-- إنشاء مجلد للمقرر Set fso = CreateObject("scripting.filesystemobject") fldrname = Me.[text3] fldrpath = CurrentProject.Path & "\السجل الالكتروني\" & fldrname If Not fso.FolderExists(fldrpath) Then fso.createfolder (fldrpath) End If '-- التأكد من توفر البيانات الأولية If Len(Me.text2) Then WHERE$ = " WHERE (Student.المادة='" & Me.text3 & "')AND (Student.الشعبة='" & Me.text2 & "')" ElseIf Len(Me.text3) Then WHERE$ = " WHERE (Student.المادة='" & Me.text3 & "')" Else MsgBox "بينات التصدير غير مكتملة" Exit Sub End If '-- إيجاد الشعب Set RS_SECTIONS = CurrentDb.OpenRecordset _ ("SELECT DISTINCT [الشعبة] FROM Student " & WHERE$ & "ORDER BY [الشعبة]") If RS_SECTIONS.RecordCount = 0 Then MsgBox "لا توجد بيانات لتصديرها" Exit Sub End If '-- نسخ قالب مصنف البيانات إلى مجلد المقرر LExcelOriginal = sXlsFile LExcelCopyOf = CurrentProject.Path & "\السجل الالكتروني\" & fldrname & "\" & Me.[text3] & "_.xlsm" Call FileCopy(LExcelOriginal, LExcelCopyOf) Set objExcel = CreateObject("Excel.Application") Set objWorkbook = objExcel.Workbooks.Open(LExcelCopyOf) '-- تدوير البيانات بناء على الشعب Dim SHEET% SHEET% = 2 Do Until RS_SECTIONS.EOF '-- إيجاد أسماء الطلاب بناء على الشعبة Set RS_STUDENTS = CurrentDb.OpenRecordset _ ("SELECT STUACDID,STUNAME FROM STUDENT WHERE [الشعبة]='" & RS_SECTIONS![الشعبة] & "' ORDER BY STUNAME") '-- بيانات الترويسة objWorkbook.Sheets(SHEET%).range("B1").Value = _ "اسماء طلاب الصف " & "(" & Me.[text1] & ")" _ & " -- " & "(" & RS_SECTIONS![الشعبة] & ")" _ & " المادة " & "(" & Me.[text3] & ")" _ & " معلم المادة / " & "(" & Me.[text4] & ")" '-- بيانات الطلاب objWorkbook.Sheets(SHEET%).range("c5").CopyFromRecordset RS_STUDENTS SHEET% = SHEET% + 2 '-- الانتقال إلى الشعبة التالية RS_SECTIONS.MoveNext Loop '-- حفظ البيانات objExcel.DisplayAlerts = True objWorkbook.Close SaveChanges:=True '-- إغلاق المصادر objExcel.Quit Set objWorkbook = Nothing Set objExcel = Nothing Set RS_SECTIONS = Nothing Set RS_STUDENTS = Nothing ' VBA.Shell "Explorer.exe " & Chr(34) & LExcelCopyOf & Chr(34), vbNormalFocus"هذا السطر لفتح ملف الاكسل بعد التصدير" ' DoCmd.DeleteObject acTable, "temp" MsgBox "تم تصديرالبيانات بنجاح" End Sub إليكم المرفق Active Teacher.zip -
توحيد استعلام بعدة استعلامات بمعايير
أبو إبراهيم الغامدي replied to كريمو2's topic in قسم الأكسيس Access
تجميع البيانات بالطريقة الرأسية أوقعك في مشكلة إعادة تسمية رمز الشركة إلى رمز الموظف! وهذا ما صعّب فرز البيانات! لأن رمز الشركة؛ بيانات نصيه، ورمز الموظف؛ بيانات رقمية. وكان من الأفضل تجميع البيانات بطريقة أفقية! هذا هو الأفضل، لأنه يمكنك من قراءت وتجميع البيانات بطريقة سليمة وصحيحة.. دقق في الصورة لترى مدى تطابق البيانات المتتعلقة بمجموع المبلغ.. في الواقع رصف البيانات بهذه الطريقة يبدو مألوفاً بالنسبة لي! فإن كان الغرض هو تبادل البيانات عن طريق ملفات نصية ذات بيانات ثابتة الطول كما هي توقعاتي! فهناك طرق لعمل ذلك دون الحاجة إلى التقرير! أرجو أن تكون هذه المعلومات مفيدة لك.. Trans CD.mdb -
اضافة البيانات في أكثر من شيت في ملف اكسل
أبو إبراهيم الغامدي replied to عفرنس's topic in قسم الأكسيس Access
ورقة بيانات الطلاب التي تستوردها من أكسل يوجد بها معلومات كثيرة ومن ضمنها اسم معلم المادة! وبالتالي يمكن تضمين اسم المعلم ضمن جدول بيانات الطلاب، كما هو الحال مع اسم الشعبة والمادة... لكن ليس لديّ منها شيء حتى أطبق عليها -
اضافة البيانات في أكثر من شيت في ملف اكسل
أبو إبراهيم الغامدي replied to عفرنس's topic in قسم الأكسيس Access
أذن صار لكل معلم ملف خاص! هذا سهل.. سهل الله أمرك.. الآن، نعم.. بعدها هذا التوضيح، لدي اقتراح فيما يتعلق بتصفية البيانات.. في اعتقادي أننا لسنا بحاجة إلى إنشاء جدول مؤقت لترحيل البيانات إلى أكسل! بل يمكن استخدام جدول الطلاب مباشرة! المنهج CopyFromRecordset له محددان إضافيان هما عدد الأعمدة، وعدد الصفوف المطلوب جلب البيانات منها في مصدر السجل.. إذا أردنا مزيدا من التحكم.. -
اضافة البيانات في أكثر من شيت في ملف اكسل
أبو إبراهيم الغامدي replied to عفرنس's topic in قسم الأكسيس Access
أحسنت البيان أ. محمد.. وفي نظري أن بقاء كل شعبة في ورقة مستقلة أرتب للبيانات وأسهل في التعامل! -
اضافة البيانات في أكثر من شيت في ملف اكسل
أبو إبراهيم الغامدي replied to عفرنس's topic in قسم الأكسيس Access
بحسب قالب البيانات في ورقة أكسل لا يمكن تطبيق الفكرة التي أشرت إليها أعلاه.. أنت بحاجة إلى إعادة نسخة تنسيق القالب ولصقه في الأسفل لتتمكن من إضافة الشعبة الثانية! ولا أظن أنه يوجد طريقة أخرى لتطبييق الفكرة.. وهناك إشكالية أخرى ؛ وهي طريقة تصفية البيانات التي تعمل بها في النموذج لا تسمح باختيار قيم متعددة! -
توحيد استعلام بعدة استعلامات بمعايير
أبو إبراهيم الغامدي replied to كريمو2's topic in قسم الأكسيس Access
أهلا @كريمو2 كان بإمكانك تكوين علاقات بين الجداول ضمن الاستعلام واستخدام الحقول مباشرة دون اللجوء إلى استخدام دوال التجميع! لدي تحفظ على هذا المقطع من الاستعلام QryCD ...FROM (SELECT Company.CompanyID AS EmployeeID... راجع المرفق رجاءً.. Trans CD.mdb -
اضافة البيانات في أكثر من شيت في ملف اكسل
أبو إبراهيم الغامدي replied to عفرنس's topic in قسم الأكسيس Access
أهلا بك أبا عبدالرحمن.. كيف أستطيع أن أساعد؟ لم أجد في الملفات المرفقة ما أشرت إليه أدناه ولم استطع أن أفهم طلبك -
خالص العزاء للأستاذ محمد الطاهر
أبو إبراهيم الغامدي replied to صالح حمادي's topic in المنتدى المفتوح
أستاذ @محمد طاهر لله ما أخذ وله ما أبقى.. فلتصبر ولتحتسب.. وتذكر.. "إنا لله وإنا إليه رجعون.. اللهم أجرني في مصبتي هذه واخلفني خيراً منها.." اللهم عافه واعف عنه.. واكرم نزله.. ونور له في قبره ووسع له فيه.. ونقه من الذنوب والخطايا كما ينقى الثوب الأبيض من الدنس.. اللهم اخلفه في عقبه في الغابرين.. واجعله من ورثة جنة النعيم.. واحشره في زمرة النبيين.. -
تكويد الحسابات عم طريق الجايد
أبو إبراهيم الغامدي replied to إبراهيم ابوليله's topic in قسم الأكسيس Access
أهلا بك.. غير نوع البيانات في الترقيم التلقائي من LongInteger إلى Replication ID إذا كانت نسخة أكسس لديك عربية أعتقد أنها (رقم طويل) والآخر أظنه (عشوائي) -
حماية الجداول من استيرادها من برنامج آخر (معدل)
أبو إبراهيم الغامدي replied to محمود حاتم احمد's topic in قسم الأكسيس Access
أهلا أ. أبا جودي.. المبهر أن جُل علماء مصر صعايدة.. كفاك فخر بنفسك!!! في أكسس: هناك فرق في الوصول إلى البيانات بين ماهو شائع بين المطورين وبين ماهو متقدم! وفي الغالب نحن لا نراعي النواحي التقنية في التعامل مع السجلات.. وبكلام مختصر: عند إضافة أو تحرير سجل.. أنت لست بحاجة إلى تحميل بيانات الجدول بالكامل! وبناءً عليه نستخدم وصلات الاستعلام للوصول للبيانات بشكل محدد.. ولو ذهبت مرة إلى أحد فروع شركة الشحن العملاقة FedEx وحشرت أنفك في شاشة تسجيل البيانات لن تجد ما يشبع فضولك! فضلاً راجع هذا الرابط (FSMS Developer Guide) لأخذ معلومة عن كيفية عمل نظام FedEx وطرق معالجة البيانات.. -
حماية الجداول من استيرادها من برنامج آخر (معدل)
أبو إبراهيم الغامدي replied to محمود حاتم احمد's topic in قسم الأكسيس Access
أهلا أ. جعفر.. إجابتي السابقة كانت بناءً على سلوك الغالبية من الزملاء في التعاطي مع البيانات.. لكن لو سألتني عن سولكي الخاص فأنا أفضل وصلات الاستعلام عوضا عن الجداول في عرض البيانات وعمل الإجراءات عليها.. الفروقات الزمنية في التنفيذ تظهر أكثر على البيانات البعيدة التي لا تعمل على سيرفرات..