اذهب الي المحتوي
أوفيسنا
بحث مخصص من جوجل فى أوفيسنا
Custom Search

ابو جودي

أوفيسنا
  • Posts

    6,833
  • تاريخ الانضمام

  • Days Won

    187

كل منشورات العضو ابو جودي

  1. تمام يا دكتور الان اتضحت المسألة بشكل سليم واكتملت كل الافكار تقريبا من النقاش جزاكم الله خيرا
  2. هذا ملف التطبيق الخاص بى قمت بتعطيل الكود الذى عمل بشكل صحيح لاتلافى الخطأ من خلال الدالة CInt وذلك حتى يمكنكم الاطلاع عليه يا دكتور @SEMO.Pa3x tt.accdb
  3. تسلم ايدك يا دكتور الان عمل بشكل صحيح ولكن لاحظت مشكلة الان ولا ادرى سببها يا دكتور فى مرفق حضرتك الجمع عمل بشكل سليم اما فى التطبيق عندى الذى اقوم به لا يجمع الارقام بل جمع الحقول انا ادرى كيق اتحاشى الخطأ ولكن لا ادرى سببه فقط
  4. يعنى الكود الاول اساس المشاركة يكون Private Sub textbox1_Change() textbox3.Value = Nz(textbox1.Text, 1) + Nz(textbox2, 1) End Sub
  5. أعطى خطأ معى عند التطبيق لانه لا يمكن نقل التركيز فى الحدث الى مربع النص 2 مع تنفيذ هذ الحدث عند التغير لمربع النص 1 ممكن مرفق لعلى أخطات بالتطبيق
  6. فى الوفت الراهن لا استطيع العمل على اكسس والتجربة انا كتبت فى البوست السابق الفكرة والان قمت بتحويل الفكرة الى اكواد ولكن لا اعرف هل هذا منطقى ام لا Dim RS As DAO.Recordset Dim crntRS As Integer Dim nextRS As Integer Set RS = CurrentDb.OpenRecordset("tblName") If Not RS.EOF Then RS.MoveFirst Do Until RS.EOF crntRS = RS![IDNo] RS.MoveNext nextRS = RS![IDNo] If nextRS > crntRS + 2 Then RS.MovePrevious RS.Edit RS![IDNo] = crntRS + 1 RS.Update RS.MoveFirst Else RS.MoveNext End If Loop MsgBox "Done!", vbInformation, "Completed"
  7. طيب هل ممكن نعمل لوب بشرط يبدأ اللوب من السجل الاول والشرط ان كان الرقم فى السجل التالى = الرقم فى السجل الحالى او ان كان الرقم فى السجل التالى اكبر من الرقم فى السجل الحالى +1 يستكمل اللوب والا ان كان الرقم فى السجل التالى اكبر من الرقم فى السجل الحالى +2 يتم يتوقف اللوب ويتم تحديث هذا الرقم برقم السجل السابق +1 ويبدأ اللوب من جديد
  8. حزانا الله واياكم وكل أساتذتنا خير الجزاء اتفضل تحت امرك AutoCentre.mdb
  9. ضع الكود الاتى فى مديول Private Type RECT X1 As Long Y1 As Long X2 As Long Y2 As Long End Type #If VBA7 Then Private Declare PtrSafe Function GetDesktopWindow Lib "user32" () As LongPtr Private Declare PtrSafe Function GetWindowRect Lib "user32" (ByVal hWnd As LongPtr, lpRect As RECT) As Long Private Declare PtrSafe Function GetDC Lib "user32" (ByVal hWnd As LongPtr) As LongPtr Private Declare PtrSafe Function ReleaseDC Lib "user32" (ByVal hWnd As LongPtr, ByVal hDC As LongPtr) As Long Private Declare PtrSafe Function GetDeviceCaps Lib "gdi32" (ByVal hDC As LongPtr, ByVal nIndex As Long) As Long #Else Private Declare Function GetDesktopWindow Lib "user32" () As Long Private Declare Function GetWindowRect Lib "user32" (ByVal hWnd As Long, Rectangle As RECT) As Boolean Private Declare Function GetDC Lib "user32" (ByVal hWnd As Long) As Long Private Declare Function ReleaseDC Lib "user32" (ByVal hWnd As Long, ByVal hDC As Long) As Long Private Declare Function GetDeviceCaps Lib "gdi32" (ByVal hDC As Long, ByVal nIndex As Long) As Long #End If Private Const WU_LOGPIXELSX = 88 Private Const WU_LOGPIXELSY = 90 Sub CenterForm(f As Form) Dim formWidth As Long, formHeight As Long Dim MaxWidth As Long, maxHeight As Long Dim ScreenWidth As Long, ScreenHeight As Long Dim formAllMarginsHeight As Long, formAllMarginsWidth As Long GetScreenResolution ScreenWidth, ScreenHeight ScreenWidth = ConvertPixelsToTwips(ScreenWidth, 0) ScreenHeight = ConvertPixelsToTwips(ScreenHeight, 0) MaxWidth = ScreenWidth * 0.6 maxHeight = ScreenHeight * 0.9 formAllMarginsHeight = f.WindowHeight - f.Section(acDetail).Height formAllMarginsWidth = f.Width formWidth = formAllMarginsWidth formHeight = formAllMarginsHeight If formHeight < f.WindowHeight Then formHeight = f.WindowHeight End If DoCmd.MoveSize (ScreenWidth - formWidth) / 2, (ScreenHeight - formHeight) / 2, formWidth, formHeight End Sub Sub CenterReport(R As Report) Dim ReportWidth As Long, ReportHeight As Long Dim MaxWidth As Long, maxHeight As Long Dim ScreenWidth As Long, ScreenHeight As Long Dim ReportAllMarginsHeight As Long, ReportAllMarginsWidth As Long GetScreenResolution ScreenWidth, ScreenHeight ScreenWidth = ConvertPixelsToTwips(ScreenWidth, 0) ScreenHeight = ConvertPixelsToTwips(ScreenHeight, 0) MaxWidth = ScreenWidth * 0.6 maxHeight = ScreenHeight * 0.9 ReportAllMarginsHeight = R.WindowHeight - R.Section(acDetail).Height ReportAllMarginsWidth = R.Width ReportWidth = ReportAllMarginsWidth ReportHeight = ReportAllMarginsHeight If ReportHeight < R.WindowHeight Then ReportHeight = R.WindowHeight End If DoCmd.MoveSize (ScreenWidth - ReportWidth) / 2, (ScreenHeight - ReportHeight) / 2, ReportWidth, ReportHeight End Sub Function ConvertTwipsToPixels(lngTwips As Long, lngDirection As Long) As Long Dim lngPixelsPerInch As Long Const nTwipsPerInch = 1440 #If VBA7 Then Dim lngDC As LongPtr #Else Dim lngDC As Long #End If lngDC = GetDC(0) If (lngDirection = 0) Then lngPixelsPerInch = GetDeviceCaps(lngDC, WU_LOGPIXELSX) Else lngPixelsPerInch = GetDeviceCaps(lngDC, WU_LOGPIXELSY) End If lngDC = ReleaseDC(0, lngDC) ConvertTwipsToPixels = (lngTwips / nTwipsPerInch) * lngPixelsPerInch End Function Function ConvertPixelsToTwips(lngPixels As Long, lngDirection As Long) As Long Dim lngPixelsPerInch As Long Const nTwipsPerInch = 1440 #If VBA7 Then Dim lngDC As LongPtr #Else Dim lngDC As Long #End If lngDC = GetDC(0) If (lngDirection = 0) Then lngPixelsPerInch = GetDeviceCaps(lngDC, WU_LOGPIXELSX) Else lngPixelsPerInch = GetDeviceCaps(lngDC, WU_LOGPIXELSY) End If lngDC = ReleaseDC(0, lngDC) ConvertPixelsToTwips = (lngPixels * nTwipsPerInch) / lngPixelsPerInch End Function Private Sub GetScreenResolution(ByRef Width As Long, ByRef Height As Long) Dim R As RECT Dim RetVal As Long #If VBA7 Then Dim hWnd As LongPtr #Else Dim hWnd As Long #End If hWnd = GetDesktopWindow() RetVal = GetWindowRect(hWnd, R) Width = R.X2 - R.X1 Height = R.Y2 - R.Y1 End Sub ويتم وضع الكود الاتى فى حدث عند فتح النموذج Call CenterForm(Me) ويتم وضع الكود الاتى فى حدث عند فتح التقرير Call CenterReport(Me)
  10. العفو منكم يا دكتور انا اقل طويلب فى هذا الصرح الشامخ جزاكم الله خيرا بارك الله فى عمرك وعملك وزداكم رفعة وخلقا واساله تعالى ان يرزقكم اعلى درجات الجنان ان شاء الله
  11. الله يفتح عليك يا دكتور @حلبي الله الله الله الله عليك والله ما عارف اقولك ايه جزاكم الله خير ورزقكم البركة فى العمر والعلم والاهل والولد
  12. اتفضل جرب New Microsoft Access Database (1).zip
  13. السلام عليكم ورحمة الله تعالى وبركاته المطلوب تصحيح الكود على زر الامر Required بحيث يتم الحصول على عدد السجلات بشرطين الاول بناء على قيمة LetterType والشرط الثانى التاريخ تم الحصول على النتيجة لكل منهما منفردا بذاته من خلال ازرار الامر B1 , B2 ولكن عندما حاولت جمعهما ليتم العد بناء على شرطين فى زر الامر Required واجهت مشكلة كما هو بالمرفق جزاكم الله خيرا مقدما Test.accdb
  14. جزاكم الله خيرا والدى الحبيب و استاذى الجليل و معلمى القدير استاذ @jjafferr
  15. ' Requires reference to Microsoft Office xx Object Library xx=Version No OF Access وهذا مثال على التنفيذ FileDialog.accdb
  16. بسم الله ما شاء الله فكرة الكود ولا اروع استاذى الجليل ومعلمى القدير دكتور @د.كاف يار ولكن للاسف مع عدد السجلات المهول داخل الجدول لا يستطيع التعامل باجراءات العمليات داخل الكود ويتوقف التطبيق وهنا خصيصا أتذكر قولة والدى الحبيب ومعلمى القدير واستاذى الجليل الاستاذ @jjafferr الاستعلامات داخل الاكسس قوية جدا ويجب ان نهتم فى القاعدة على بناء الاستعلامات الصحيحة ونحاول قدر الإمكان التعامل معها وبها بدلا من الاكواد فهى أقوى او هى بناء قوى تسطيع معالجة البيانات من خلالها ان امكن
  17. ممكن مرفق يمكن افهم معلش فهمى على اد حالى ومش قادر افهمك
  18. طبعا يا والدي الحبيب وأستاذي الجليل ومعلمي القدير الأستاذ @jjafferr ، انت تدري ، مو انت المقصود من هذا التوضيح
  19. بعد اذن اساتذتى العظماء ومشاركة للحصول على نتيجة الطباعة pdf 1372.حفظpdf.accdb
  20. اتفضل Correct_data_without_duplication(5)
  21. اتفضل Correct data without duplication 3.zip
  22. اتفضل Correct data without duplication (1).mdb
  23. ممكن تستعمل الكود الاتى Private Sub Form_Current() If sousf = "laptop" Then CodeInv = "lap" End Sub او Private Sub sousf_AfterUpdate() If sousf = "laptop" Then CodeInv = "lap" End Sub
×
×
  • اضف...

Important Information