بحث مخصص من جوجل فى أوفيسنا
![]()
Custom Search
|
-
Posts
707 -
تاريخ الانضمام
-
تاريخ اخر زياره
-
Days Won
13
نوع المحتوي
المنتدى
مكتبة الموقع
معرض الصور
المدونات
الوسائط المتعددة
كل منشورات العضو أبو إبراهيم الغامدي
-
قراءة وتفكيك بيانات الحقل الى حقول
أبو إبراهيم الغامدي replied to jjafferr's topic in قسم الأكسيس Access
لم يكن قصدي الاستغناء عن الوحدة النمطية؛ بل طلب البيانات دون الاضطرار إلى فحصها من الداخل.. لكي نتمكن من معرفة النمط الذي يمكن تفكيك النص بواسطته، لابد من النظر إلى الحدود الممكن استخدامها لذلك.. بالنظر إلى النص أعلاه: لدينا مجموعة من الأحرف الأبجدية العربية محاطة بعلامات استفهام، بعدها فراغ، بعدها أرقام محاطة بعلامات استفهام، بعدها فراغ.. هذا هو النمط التمتكرر في النص. سيكون رسم النمط وفق النسق التالي.. ([\u0621-\u064A\u0661-\u0669]+\s*){1,4} يتجاهل النمط علامات الاستفهام، ويبحث في مجموعة الحروف والأرقام. u0621-\u064A\ الحروف (ء-ي) u0661-\u0669\ الأرقام (1-9) + علامة الزائد تعني واحدً فأكثر.. *s\ تعني صفر فأكثر من الفراغات (الصفر من أجل إدخال الكلمات التي ليس بعدها فراغ) {1,4} تقوم بتجميع الكلمات أربع كلمات فما دون إلى الواحد (لكون اسم الموظف في النص من أربع كلمات -أسماء-). يمكن تغيير هذا الحد إذا كانت الأسماء مركبة أو أكثر من أربعة.. تقوم الأداة بتجميع القيم الراجعة في مصفوفة ذات بعد واحد، كل خلية تأخذ قيمة واحدة: الأولي؛ اسم الموظف الرباعي والتي تليها رقمه، والثالثة؛ اسم الموظف الرباعي والتى تليها رقمة.. إلى نهاية السجلات. لتسجيل البيانات في جدول الاسماء نحتاج لعمل دورة متسلسة للمصفوفة مع مراعات القفز خطوتين في كل دورة لكون رقم الموظف يقع في الخلية التي تلي اسمه، كمايلي '-- LOOP THROU RECORD VALUE For I = 0 To MZ.Count - 1 Step 2 RSD.AddNew RSD("IID") = MZ(I + 1).Value RSD("INAME") = MZ(I).Value RSD.Update Next أرجو أن أكون قد وفقت في الشرح.. ACCESS WITH REGEXP.accdb Microsoft-Beefs-Up-VBScript-With-Regular-Expressions.pdf -
قراءة وتفكيك بيانات الحقل الى حقول
أبو إبراهيم الغامدي replied to jjafferr's topic in قسم الأكسيس Access
أهلا بك أ @jjafferr أجل لنفكر في شئ آخر خارج الصندوق.. من ضمن المكتبات المرجعية التي توفرها ويندوز: مكتبة التعابير القياسية (النمطية)، وهي مكتبة تقوم بمعالجة النصوص وفق معايير متعددة، يمكن التعرف هذه المعايير عن طرق الرجوع إلى الموقع الرسمية لهذه المكتبة هنا كما يمكن الوصول إلى معايير استخدام ترميز UNICODE من هنا فيما تعلق بترميز محارف النص العربي في مقاييس UNICODE: فإنها تبدأ من الرمز: U+0060 وتنتهي بالرمز: U+06FF ، يشمل هذا الترميز جميع ما يتعلق بمحارف النص العربي (حروف، أرقام، زخارف، روابط، إلخ ). راجع الرابط هنا يمكن الوصول إلى المكتبة في أكسس بالنظر إلى الصورة التالية: نأتي الآن إلى مثال لتكون الشفرة المتعلقة بالبحث في النص المرفق مع المشاركة لكون النص في غير مطابق لترميز أكسس، ولهذا سوف نلجأ إلى استخدام ترميز UNICODE الموسع للغة العربية كما فعل أ. جعفر، والفرق هنا: أنه بعد كتابة الشفرة يمكن أن نستخدمها عن طريق الاستعلام. هذا مثال مصغر للشفرة استخدام المكتبة.. Public Function TEST_STRING(V As Variant, Optional P As String) On Error GoTo EXIT_FUNCTION Dim RE As New RegExp Dim MATCH As MATCH Dim MATCHX As MatchCollection Dim R As Variant '-- INITIAL RE RE.IgnoreCase = True RE.Global = True '-- GET RE PATTREN RE.Pattern = P '-- SET MATCHX AS OBJECT Set MATCHX = RE.Execute(V) '-- CHECK IF ANY MATCHED If MATCHX.Count = 0 Then GoTo EXIT_FUNCTION End If '-- INITIAL RESULT VARIABLE R = vbNullString '-- LOOP THROU MATCHX For Each MATCH In MATCHX Debug.Print MATCH.Value R = R & MATCH.Value Next TEST_STRING = R EXIT_FUNCTION: '-- TERMINATE OBJECTS Set MATCHX = Nothing End Function قمت بإدراج الوظيفة في الاستعلام بالطريقة التالية: RESULT: TEST_STRING([FIELD1],[PATTREN]) في مربع الحوار وضعت معايير تعيد جميع الترميز العربي إذا كان بعدها فراغ أو كانت في آخر السطر: [\u0060-\u06FF]+\s*|$ كانت النتيجة كما في الصورة التالية.. يمكن وضع تعابيير أكثر دقة بمراجعة ماسبق الإشارة إليه، وتجربيه على المثال التالي: ACCESS WITH REGEXP.accdb -
قراءة وتفكيك بيانات الحقل الى حقول
أبو إبراهيم الغامدي replied to jjafferr's topic in قسم الأكسيس Access
أهلا بالجميع.. لا أدري إن كنت فتحت هذه المشاركة أكثر سبعين مرة! المهم ليست مرة ولا مرتين ولا حتى عشرة.. تعاطي الأستاذ @jjafferr مع البيانات أبهرني وأذهلني حقيقيةً.. كنت أريد أن أضيف شيئاً عن كيفية السيطرة على الاحتمالات الشرطية لتقطيع النص، وكيف يمكن إضافتها من خارج الشفرة، ولكن انغلق تفكيري ولم أضفر بشئ.. ولذا أرجو من أ. جعفر أن يشير إلى ما يمكن فعله بهذا الخصوص.. -
كيف طبق المعادل المرفق في اكسس
أبو إبراهيم الغامدي replied to طاهر الوليدي's topic in قسم الأكسيس Access
أهلا طاهر، وعلى الرحب والسعة.. -
كيف طبق المعادل المرفق في اكسس
أبو إبراهيم الغامدي replied to طاهر الوليدي's topic in قسم الأكسيس Access
في معادلة أكسل أنت تقسم جميع الفئات على 26 وليس على عدد أيام الحضور! لاحظ السجل الأخير (عدد الأيام 20) لكن القسمة تمت على 26 القسمة تنتج كسرا؛ وأنا حيدت الكسر في الناتج (غفلة مني) ولهذا ظهر الفرق الأجر الشهري.. تمت معالجة هذا الخطأ من قبل الاستاذ @husamwahab جزاه الله خيرا على تكرمه.. تمت الإشارة إليه في الأعلى.. -
كيف طبق المعادل المرفق في اكسس
أبو إبراهيم الغامدي replied to طاهر الوليدي's topic in قسم الأكسيس Access
أهلا بك طاهر.. طبقت الدالة على الاستعلام، إذا كان أكسس لديك 2013 وأعلى فيمكن تطبيق ذلك على الجدول مباشرة.. Admin.accdb -
مساعدة في تقسيم صورة الى محموعة من الصور
أبو إبراهيم الغامدي replied to hamdy1111's topic in قسم الأكسيس Access
نعم.. بقي عليك أن تترك استخدام ملف أكسس الذي حصلة به المشكلة وتسخدم نسخة جديدة من الملف المظغوط.. وإن شاء الله تعمل -
لكي أتحقق من أن المرفق به مشكلة برمجية يتعين عليك التطبيق على قاعدة البيانات المثال والملف المرفق معها. هذا شرط أساسي بالنسبة لي! سبق وأن أشرت أن ملف CSV المرفق في مثالك ليس مطابق لمقاييس هذا النوع من الملفات! بل هو ملف نصي مفرز بفاصلة منقوطة ومن المفترض أن تكون لاحقة الملف (txt.) وليس (csv.).ولهذا قمت بإعادة تنسيق الملف TEMPLATE.CSV قبل التطبيق عليه، كما أن حقول جدول MOBAILE لا تتطابق مع ملف TEMPLATE.CSV..
-
أهلا بكم.. أتسائل لماذا لم يجرب أحد أسلوبي 😟 IMPORT CSV DATA .zip
-
في زر أمر اختيار الملف غير الشفرة بهذه ' open the windows file dialog to select the file With Application.FileDialog(1) .Title = "Choose File" .Filters.Clear .Filters.Add "Excel Files", "*.xls ; *.xlsx" .Filters.Add "CSV Files", "*.csv" .Filters.Add "All File", "*.*" .AllowMultiSelect = False .InitialFileName = "" If .Show = -1 Then Me.txtPath = .SelectedItems(1) End If End With
-
هذى جمل استلام توضع في محرر الاستلام وتحفظ كاستعلام ولا علاقة لها بشفرة الاستاذ جعفر.. كتبتها من أجل إعطائك فكرة عن كيفية الاتصال بمثل هذا النوع من البيانات..
-
أهلا بكم.. لإدراج بيانات من ملف CSV إلى جدول بنفس الحقول مع استبعاد التكرار استخدم الجملة التالية INSERT INTO TEMPLATE SELECT * FROM [TEMPLATE#CSV] IN '.'[TEXT; HDR=YES;] WHERE NOT IdentificationID=ANY(SELECT IdentificationID FROM TEMPLATE);
-
مساعدة في تقسيم صورة الى محموعة من الصور
أبو إبراهيم الغامدي replied to hamdy1111's topic in قسم الأكسيس Access
أشكركم جميعا على تفاعلكم -
أهلا بكم.. تنسيق ملف CSV المرفق ليس وفق معايير التنسيق الصحيحة لهذا النوع من الملفات النصية، وبالتالي لا يمكن أن يعيد بيانات متناسقة بيانات ملف CSV لا يمكن أن تكون مفصولة بفاصلة منقوطة أبدا.. على أية حال؛ يمكنك أن تستعرض بيانات هذا النوع الملفات بالطريقة التالي: في محرر الاستعلام أكتب النص التالي SELECT * FROM [TEMPLATE#CSV] IN '.'[TEXT; HDR=YES;] النقطة بين علامة الاقتباس تشير إلى الدليل الحالي لقاعدة البيانات وذلك بناء على الدليل الافتراضي في خيارات أكسس. إذا كنت تريد لأكسس أن يعين الدليل الحالي كدليل افتراضي؛ قم بتغيير الدليل الافتراضي إلى نقطة أيضا.. هذا المثال للتوضيح Access With CSV.zip
-
مساعدة في تقسيم صورة الى محموعة من الصور
أبو إبراهيم الغامدي replied to hamdy1111's topic in قسم الأكسيس Access
أهلا بك @hamdy1111 هذا يعني أن مكتبة تقطيع الصور ليست على نظامك.. أرفقت مع المثال نسخة من المكتبة ضمن المثال المرفق. قم بإعادة تحميله؛ وأتبع الخطوات التالية .. إذا كان نظامك على معمارية 64bit: قم بنسخ المكتبة وضعها في المجلد (sysWOW64). .. إذا كان نظامك على معمارية 32bit: قم بنسخ المكتبة وضعها في المجلد (system32). .. أعد تشغيل ملف أكسس. -
مساعدة في تقسيم صورة الى محموعة من الصور
أبو إبراهيم الغامدي replied to hamdy1111's topic in قسم الأكسيس Access
أهلا بالجميع... من الممكن تطبيق الفكرة بواسطة أكسس بواسطة عناصر ActiveX القياسية المتوفرة ضمن عناصر التحكم.. في المثال المرفق استخدمت Picturelip و Image (عناصر ActiveX) من أجل تحقيق المطلوب يقوم العنصر PictureClip بتقطيع الصور بناء على عدد الأعمدة والصفوف التي يحددها المستخدم... بعد ذلك نقوم بإسناد الصورة المقطوعة إلى العنصر Image من أجل العرض.. عند النقر على رقم الصورة المعروضة يتم حفظها منفردة.. أترككم مع المثال ونناقش فيما بعد الحفظ التلقائي.. MSAccess With PictureClip.zip -
استفسار حول كود استيراد بيانات من ملف اكسل
أبو إبراهيم الغامدي replied to ابو البشر's topic in قسم الأكسيس Access
أهلا بك @ابو البشر بالنسبة للرقم (1): المنهج GetRows يعيد عدد من صفوف بيانات الجدول المشار إليه في المتغير الغرضي XLRS. والرقم بين القوسين يبين عدد الصفوف المطلوب إعادتها.. المنهج GetRows يعيد مصفوفة بيانات من حدين؛ الحد الأول يمثل رقم عمود البيانات (الحقل) في الجدول والثاني يمثل رقم الصف البيانات (السجل).. هذه الحدود يبدأ ترقيمها بالرقم 0 يجب اسناد المنهج GetRows إلى متغير مصفوفة بيانات عامة غير معينة الحدود.. وهو هنا RCROW؛ وهو المشار إليه بالرقم (2). وكمثال (0,0)RCROW يعيد قيمة العمود الأول من الصف الأول في جدول البيانات. بالنسبة للرقم (3) :عند تجهال أسماء أعمدة البيانات المستوردة من أكسل يقوم أكسس بوضع أسماء مزيفة تبدأ بـ (F1)؛ و (F) اختصار كلمة Field و(1) رقم عمود البيانات في أكسس.. إذا كانت ورقة البيانات في أكسل تحتوي على أسماء للأعمدة فيمكن تغيير ذلك من خصائص استيراد البيانات؛ إما على مستوى مصنف البيانات أو على مستوى ورقة بيانات محددة... بالنسبة للرقم (4): يمكن الاستغناء عن المحدد، أو توسيع نطاقه.. لكن لا يمكن استخدام نطاقات متعددة في المجال الواحد.. أرجو أن يكون هذا التفسير واضحاً ومفهوماً .. -
وجود فراغات بين الاسطر عند التحويل
أبو إبراهيم الغامدي replied to طاهر اوفيسنا's topic in قسم الأكسيس Access
أهلا بكم.. أقترح عليكم استخدام الشفرة التالية بدلا من السطر الأول Public Sub ExportToTextFile(ReportName) Dim RS As DAO.Recordset Dim TextFile As Integer Set RS = CurrentDb.OpenRecordset("استعلام4") TextFile = FreeFile Open CurrentProject.Path & "\" & ReportName & ".txt" For Output As #TextFile Do Until RS.EOF Print #TextFile, RS![LIGNECD] RS.MoveNext Loop Close #TextFile MsgBox "Done" End Sub Trans CD.mdb -
أهلا أباجودي.. التطبيق ممتاز من ناحية التصميم والتشغيل.. بعض الملاحظات تتعلق بالتصميم.. -- نظام الألوان بحاجة إلى تحسين.. -- أزرار أسماء السور أفضل أن تجعلها عنوان يتغير لونها عند النقر عليها لتلاوات السورة.. كما يتغير لونها عند القراءة التلقائية.. -- استخدم عنصر التبديل للتبديل بين الأزرار وقائمة السرد إذا لم يكن لديك مانع من حذف الأخير! بالنسبة للتشغيل فالشفرة فيها زخام رهيب وتحتاج إلى إعادة ترتيب إن أمكن تمنياتي لك بمزيد من التألق
-
خبير جديد على قائمة الخبراء ، الاخ حسام وهاب
أبو إبراهيم الغامدي replied to jjafferr's topic in قسم الأكسيس Access
مبارك عليك أستاذ حسام شارة الخبراء.. تمنياتي لك بمزيد من النجاح.. -
أهلا بكم.. في الحقيقة أن هذا الأمر كان يشغلني منذ البداية! ومن الناحية الفنية فإن ورقة البيانات بها مشكلتين __ الأعمدة التي بها البيانات. __ تساوي البيانات المطلوب تسجيلها في الملف، بمعنى تساوي مجموع الصفوف في بطاقة البيانات في ورقة البيانات مع عدد حقول البيانات في جدول بيانات الطلبة. إذا كان الأمر يتعلق بالمطور فإن بمقدوره تعديل الشفرة بما يتفق مع الحالة التي تواجهه.. لكن لا يمكن ذلك مع المستخدم الذي لا علاقة له بالبرمجة! إذا كان هذا الأمر يثير اهتمامكم فأرجو أن تفتحوا مشاركة جديدة مع الإشارة إلى هذه المشاركة، لكون هذه المشاركة تم الإجابة عنها
-
نعم عزيزي.. إليك هذا الحل السريع Posters.accdb
-
وأياديك بيضاء أيضاً أستاذ جعفر.. لا عدمناك 🤑
-
أعتذر عن هذا الخطأ غير المقصود.. إليك التصحيح.. Posters.accdb