اذهب الي المحتوي
أوفيسنا

AbuuAhmed

الخبراء
  • Posts

    1074
  • تاريخ الانضمام

  • تاريخ اخر زياره

  • Days Won

    17

كل منشورات العضو AbuuAhmed

  1. مساهمة إضافية بعد مساهمة أستاذنا @ابو جودي وبعد إذنه Private Sub AddNewDates() Dim rst As Recordset Dim iDate As Long Set rst = CurrentDb.OpenRecordset("tblDay", dbopendynaset) For iDate = CLng(Me.txtFirstDate) To CLng(Me.txtLastDate) If IsNull(DLookup("DayDate", "tblDay", "Clng(DayDate)=" & iDate)) Then If Weekday(iDate, vbSunday) < vbFriday Then If IsNull(DLookup("HolidayDate", "tblHolidays", "Clng(HolidayDate)=" & iDate)) Then With rst .AddNew !DayDate = iDate .Update End With End If End If End If Next iDate Set rst = Nothing MsgBox "Done" End Sub
  2. السلام عليكم أنا توقف بي الزمن عند نسخة 2007 والبسبب انها لم تعد "لغتي" الأولى كما السابق، فما النسخة البديلة التي تنصحوني بها حسب تجاربكم. علما أن عندي كثير من برامجي الخاصة المصممة بنسخة 2007 وقبلها ولا أريد أن أخسرها ولا أريد أن أشغل نفسي في تحديثها. فهل هناك عوائق غير مسألة اختلاف "النواة" 32 أو 64 بت؟ والسؤال الآخر هل أستطيع تركيب نسخة أخرى مع وجود/بقاء النسخة القديمة كما كنا نفعل سابقا؟ أم أن النسخ الجديدة تستطيع فتح جميع النسخ القديمة بدون تعديل؟.
  3. خلاص .. آخر نسخة 🙂 ، هذه النسخة تم فيها معالجة وضوح/جودة الطابعة فهذا الإعداد كان يؤثر على سمك البراويز، والحمد لله. DrawLines_05.accdb
  4. قصدت أني لا أستخدم سمك موحد للأعمدة في التقرير الواحد فالخيار متروك للمستخدم/المبرمج. كلامك صحيح وهذا ما أفعله قاصدا متعمدا، بمعنى أن هذه الخاصية وجدتها أنت في الخصائص بقيمة 1 ولكن الكود يعالجها فيجعلها صفر فبالتالي ينتفي نسبة السبب لها. ويمكن تجربة فعالية الأمر بتعطيل رسم الاطارات "المناداة" وسوف تختفي الاطارات على خلاف وضعها في الخصائص. على كل لا داعي للمزيد من هدر الوقت سأبحث عن السبب كلما سنحت الفرصة. وهذه صورة للتقريرين ينفس الخصائص تماما وبسمك للاطار "1pt" ، مع ملاحظة أخير أن التقرير صاحب الاطار السميك لو ضربنا عرض الاطار في 3 بدلا من 10 تصبح الاطارات سليمة!! أعتقد فيه خاصية تتسبب في هذا الفرق وربما اعدادات الطابعة لها دور في الموضوع والله أعلم.
  5. جربت وجربت وجربت ، لا تغيير ، لو تذهب لموضوعي لن تجد هذه المشكلة في باقي التقارير ، فقط في هذا التقرير. خمنت أن في التصميم مشكلة وقمت بتصميمه من جديد ونفس النتائج. إذا أنت متأكد من نتائج محاولاتك فلترفع المثال بعد التعديل.
  6. شكرا عزيزي لمحاولتك الحقيقة أنا أبدل قمية Border Style في كود الموديول .BorderStyle = 0 أما هذه: BW = .BorderWidth * 10 .Parent.Report.DrawWidth = BW فأنا أضرب سمك البرواز/الاطار في معامل واحد للجميع فيفترض أن تكون النتيجة واحدة. ثم أوعز للبرنامج باستخدام هذه النتيجة أي نتيجة سمك الرسم، فهي ليست عملية جمع. أما هذه فلا تتماشى مع مثالي فأنا لا أستخدم سمك موحد بل يعتمد على السمك حسب الخصائص.
  7. كما العنوان، علما أن أحد التقريرين تم استيراده من قاعدة بيانات مختلفة. عجزت أعرف السبب، فهل منكم من مر بهذه التجربة؟. DrawLinesForTest.accdb
  8. شكرا لكم ويمكن اختصار العمودين إلى عمود واحد واستخدام فهرس الجدول أو المصفوفة كذلك. سوف أتوقف عن التحديثات بعد هذا التحديث والذي تم فيه تعديل تركيبة الجدول بعد معرفة أكبر عدد صفحات يسمح بها الأكسس وتمت معالجة رقم الصفحات بتحويلها من Long إلى Int وكذلك رقم آخر سجل في الصفحة من Long إلى Byte وذلك لتقليل مساحة التخزين بتغيير طريقة الحفظ والجلب للبيانات. هذه آخر نسخة في محاولاتي لهذا الموضوع ، وسأستمر بصمت بالعمل عليه للتخلص من الجدول أو المصفوفة "خيار قائم" ، فإن نجحت سأفتح له موضوعا جديدا وإلا سأكتفي إلى هذه النقطة. DrawLines_04.accdb
  9. تم إضافة المزيد من التقارير والموجود بمثال أخي جعفر وعليه تمت بعض التعديلات الطفيفة. ملاحظة: مثالي يعتمد على لون الإطار الموجود بالخصائص ، فإذا كان اللون أبيض على خلفية بيضاء فلن يظهر الإطار في مثالي. DrawLines_03.accdb
  10. عزيزي الحقيقة لو سنلاحق رغبات "الجمهور" سيشغلونا في باقي حياتنا for nothing من خلال دراستي لسلوك أداء التقارير فهمت أن الأكسس يقوم بإخفاء القيم المكررة بجعل ارتفاع الأداة "صفر" ، وتبقى القيمة موجودة. وفكرة الحل إذا أردت أن تحاول فيها أن تلعب في هذا الأمر إذا الأكسس يسمح لنا بالتعديل وهو معرقة السجل الوسط/الأوسط "وفتح" ارتفاعه وجعل ارتفاع السجل الأول صفز.
  11. جهد كبير جدا ، واضح أنه أرهقك كثرا ، حاولت فهم الكود ولكني "تهت" وقلت أرجع له مرة أخرى علني أفهم فكرتك وأسرق منها شيئ. عساك ع القوة عزيزي.
  12. الخطوة الثانية تم التخلص من فتح التقرير مرتين وجاري العمل على الخطوة الثالثة. DrawLines_02.accdb
  13. تم التصحيح لا بد أن يكون نوع/تنسيق الخلية في الجدولين متساوي ، عليه حولت لك النوع في صفحة البحث من نصي إلى رقمي باستخدام دالة Value Filename_02.xlsx
  14. احشر كلمة PtrSafe بين كلمتي Declare Function لتصبح بعد الحشر Declare PtrSafe Function
  15. بشرك الله بكل خير ، بانتظار مثالك وأكيد سيكون به نفع كثير.
  16. السلام عليكم نعم أخي هي أصعب نقطة في الموضوع و "شبه مستحيلة" وقد أتعبتني وعملت عدة محاولات ومنها حساب الارتفاعات/الأطوال للكائنات وهي تنجح جزئيا ويمكن أن تنجح كليا في حالة عدم استخدام صناديق "مطاطة" أي تتمدد. من ضمن المحاولات هي أخذ "لقطة" للبيانات بنفس ترتيبها في التقرير دون الحاجة إلى مفتاح أو معرف للسجل وإلى الآن لم أصل إليه. ومن المحاولات هي معرفة بيانات السجل التالي ثم إجراء حسابات الارتفاعات ولو باستخدام الاكسل. الموضوع ذو شجون ويحتاج المزيد من الجهد. شكرا عزيزي ، كيف أظهرت العدد؟
  17. بأثر رجعي ، السلام عليكم 🙂 سأعود إن شاء الله ... لماذا بعض المرفقات لا تظهر عدد الإنزالات؟!!
  18. كما العنوان ، رسم Lines و Borders/Frames لتقارير الأكسس ، نسخة أولى تجريبية أنا مجهد وسأعود الليلة أو غدا للكتابة عن بعض التفاصيل وحيثيات التصميم والعراك مع برمجة المثال. اكتبوا ملاحظاتكم وطلب خاص مني وبشكل مؤقت ، لا ترفعوا نسخا معدلة ، فقط ضعوا ملاحظاتكم. وشكرا لكم. من ميزات المثال: أنه لا يجبر المبرمج على استخدام الرسم على كل حقول التقرير. أنه يتعامل مع عرض الخط/الإطار حسب الخصائص. أنه يتعامل مع لون الخط/الإطار حسب الخصائص. ومن عيوبه: قد يكون بطيئا عند كثرة البيانات وعدد الصفحات لفتح التقرير مرتين لزوم الحصول على بعض بيانات النسيق. عندي أفكار أخرى سأؤجلها حتى أرى مثال الأخ العزيز جعفر فقد أكتفي أو أقوم ببعض التحسينات بالاستفادة من مثاله. ملاحظات: العمل في هذا المثال أضافت إلي معلومات جديدة لأول مرة وهذا طبيعي فلم تكن لي حاجة بها قبل هذا المثال. DrawLinesAndBoxes4AccessReports_01.accdb
  19. حياك الله أخي ، الإجابتان لا تقيدان بشكل صريح وواضح أنك حصلت على إجابة أنهت المشكلة، لذلك توالت عليك المشاركات من الزملاء بناء على هذا الفهم. كما يفضل اختيار/تحديد الإجابة التي استفدت منها وحلت مشكلتك حسب نظام المنتدى. وشكرا لك. علما مشاركتي السابقة ليست موجهة لك ، جزء منها موجه لأحد الزملاء والجزء الآخر عام لتوضيح عبارتي "من حفظي".
  20. حياك الله أخي @rockjone33 ، أذا قصدك تنكت معي لازم تكتب لي فوقها "نكتة" عشان أفهما وأضحك معك ، أنا فهمي ثقيل وخايف الناس تستثقل دمي 🙂 على كل حال ، لمن يتابعني وتعود على ردودي: عندما أكتب من "حفظي" أقصد فيها أني بعيد عن الأكسس ومحرر الفيجوال ، فربما يكون هناك خطأ املائي أو خطأ مطبعي أو خطأ في ترتيب المدخلات ، باختصار أن الحل غير مؤكد 100% ويحتاج إلى مراجعة من السائل والرجوع بمشاركة جديدة يخبرنا فيها عن النتيجة. وأحيانا يكون الحل سليم ولكن تبقى هناك مفاجآت مثل تأثير نوع القيمة المدخلة وتأثيرها على الدالة .. وهكذا. تحياتي لكم جميعا.
  21. إذا لم تحل المشكلة و "الظاهر" أنها لم تحل 🙂 ، اضغطي على الزر المحدد لرسالة الخطأ ثم خذي لقطة من الشاشة وارفعيها لنا. وابشري بالسعد.
  22. هذه العبارة غير واضحة عموما تستطيع أن تستخدم دالة Replace لإزالة أصفار الوقت سأكتب لك المعادلة من حفظي كالآتي: myDate = Replace(myDate," 00:00:00","")
  23. عساك ع القوة أخي سامي ، اقترح أن تجعل اسم الملف كالتالي: Format(Now(), "yyyy-mm-dd hh-nn-ss") وهذا يساعد على إعادة ترتيتب الملفات بالاسم تصاعديا أو تنازليا بشكل صحيح حيث ستتابع الملفات وكأنك رتبتها بالتاريخ والوقت.
×
×
  • اضف...

Important Information