moho58 قام بنشر الأربعاء at 02:56 قام بنشر الأربعاء at 02:56 السلام عليكم الإخوة الأفاضل في هذا المنتدى الجميل في موضوعي هذا أريد أن أعرض ما يتم اختياره من نموذج في تقرير الشرح: من النموذج أختار السنة ثم الدرجة ثم البلد مثال: اختار السنة: 2025 ثم اختار الدرجة: طبيب ثم اختار البلد: عمان - قطر فيتم عرض ما تم اختياره في التقرير (كما في الصورة رقم 1 المرفقة) أنا أريد عندما اختار من جديد يتم عرض ما تم اختياره مع الابقاء على الاختيار السابق وفي نفس التقرير في السابق تم اختار السنة: 2025 و اختار الدرجة: طبيب و اختار البلد: عمان - قطر أنا اريد انا اختار من جديد: السنة: 2025 ثم اختار الدرجة: مساعد مهندس ثم اختار البلد: مصر فيتم عرض ما تم اختياره في نفس التقرير مع الابقاء على ما تم اختياره سابقا فيكون التقرير النهائي الذي اريده كما هو موضح في الصورة رقم 2: يعني السنة: ثابثة في الأعلى وما يتم اختياره يكون كما هو في الصورة رقم 2 بنفس هذا المبدأ : يعني الاختيار والعرض مع الابقاء على الخيارات السابقة وفي نفس التقرير نتمنى أن أكون قد أوصلت الفكرة وأنه يمكن تجسيده ونتمنى أحد من الإخوة الأفاضل عندما تتيح له الفرصة يساعدنا وجزاكم الله كل خير BASE_e.accdb
خالد جميل قام بنشر الأربعاء at 06:14 قام بنشر الأربعاء at 06:14 (معدل) BASE_e.rar BASE_e.rar تم تعديل الأربعاء at 07:52 بواسطه خالد جميل تحديث المرفق
moho58 قام بنشر الأربعاء at 12:20 الكاتب قام بنشر الأربعاء at 12:20 السلام عليكم اخي @خالد جميل مشكور اخي على ردك واهتمامك بموضوعي ما اريده في في موضوعي هو انشاء التقرير بنفس الشرح (الشكل) المذكور سابقا والمبين في الصورة رقم 2 ما يتم اختيارة يعرض في التقرير وان اخترت مرة اخرى يعني مجددا يعرض في نفس التقرير مع الاحتفاظ بالاختيار او الاختيارات السابقة و شكرا مرة اخرى
Foksh قام بنشر الأربعاء at 12:40 قام بنشر الأربعاء at 12:40 9 ساعات مضت, moho58 said: السلام عليكم الإخوة الأفاضل في هذا المنتدى الجميل وعليكم السلام ورحمة الله وبركاته ,, لتطبيق فكرتك البسيطة ، اعتقد ان حاجتك لاستخدام جدول مؤقت هي أفضل شيء . ومن ثم يتم اضافة القيم التي يتم اختيارها اليه وجعله مصدر للتقرير . جرب هذه الفكرة علها تفيدك 😎 . BASE_e.accdb
moho58 قام بنشر الأربعاء at 13:11 الكاتب قام بنشر الأربعاء at 13:11 تحية طيبة أخي والاستاذ الفاضل@Foksh عمل رائع والمبدأ العام للفكرة هذا هو أخي بقي فقط أنه يكون التقرير بنفس الشكل كما هو موضح في الصورة رقم 2 عندما أختار السنة: 2025 والدرجة: طبيب والبلد: عمان - قطر السنة:2025 الدرجة:مساعد مهندس البلد: مصر الشكل العام للتقرير يكون بهذا الشكل: السنة: 2025 الدرجة: طبيب البلد: عمان- قطر (يعني الدول تكون بينها رمز -) الدرجة: مساعد مهندس البلد: مصر وشكرا كثيرا لك
تمت الإجابة Foksh قام بنشر الأربعاء at 13:48 تمت الإجابة قام بنشر الأربعاء at 13:48 جرب هذا التعديل .. BASE_e.accdb 1
moho58 قام بنشر الأربعاء at 17:12 الكاتب قام بنشر الأربعاء at 17:12 بعد التجربة شغال بامتياز أخي @Foksh عمل ممتاز و رائع هذا هو المطلوب بالضبط جزاك الله كل الخير وجعله في ميزان حسناتك وربي يجازيك خير الجزاء على كل ما تقدمه في هذا المنتدى الرائع أخي ممكن تعديل بسيط وهو جعل السنة عبارة عن نص وليس رقم في التقرير لأنه احيانا أكتب السنة بهذا الشكل : 2025/2024 وشكرا مرة أخرى
Foksh قام بنشر الأربعاء at 23:15 قام بنشر الأربعاء at 23:15 6 ساعات مضت, moho58 said: ممكن تعديل بسيط بأقرب فرصة إن شاء الله 😇 . 1
Foksh قام بنشر الخميس at 10:41 قام بنشر الخميس at 10:41 17 ساعات مضت, moho58 said: أخي ممكن تعديل بسيط وهو جعل السنة عبارة عن نص وليس رقم في التقرير لأنه احيانا أكتب السنة بهذا الشكل : 2025/2024 استبدل الدالة القديمة ، بالدالة التالية ، Private Sub AddToTempSelected() On Error GoTo ErrorHandler Dim db As DAO.Database Dim rs As DAO.Recordset Dim strSQL As String Dim anneeValue As Variant Dim gradeValue As Variant Dim wilayaValue As Variant Dim existingWilaya As String Dim wilayaArray As Variant Dim wilayaExists As Boolean Dim i As Integer Dim currentYear As Integer Dim previousYear As Integer Set db = CurrentDb() currentYear = Me.ANNEE3.Column(0) previousYear = currentYear - 1 anneeValue = previousYear & "/" & currentYear gradeValue = Me.GRADE3.Column(0) wilayaValue = Trim(Me.lst_XX.Column(0)) strSQL = "SELECT wilaya FROM temp_selected " & _ "WHERE annee = '" & Replace(anneeValue, "'", "''") & "' " & _ "AND grade = '" & Replace(gradeValue, "'", "''") & "'" Set rs = db.OpenRecordset(strSQL) If Not rs.EOF Then existingWilaya = Nz(rs!wilaya, "") If existingWilaya <> "" Then wilayaArray = Split(existingWilaya, " - ") wilayaExists = False For i = LBound(wilayaArray) To UBound(wilayaArray) If Trim(wilayaArray(i)) = wilayaValue Then wilayaExists = True Exit For End If Next i If Not wilayaExists Then If existingWilaya <> "" Then existingWilaya = existingWilaya & " - " & wilayaValue Else existingWilaya = wilayaValue End If strSQL = "UPDATE temp_selected SET wilaya = '" & Replace(existingWilaya, "'", "''") & "' " & _ "WHERE annee = '" & Replace(anneeValue, "'", "''") & "' " & _ "AND grade = '" & Replace(gradeValue, "'", "''") & "'" db.Execute strSQL, dbFailOnError End If Else strSQL = "UPDATE temp_selected SET wilaya = '" & Replace(wilayaValue, "'", "''") & "' " & _ "WHERE annee = '" & Replace(anneeValue, "'", "''") & "' " & _ "AND grade = '" & Replace(gradeValue, "'", "''") & "'" db.Execute strSQL, dbFailOnError End If Else strSQL = "INSERT INTO temp_selected (annee, grade, wilaya) " & _ "VALUES ('" & Replace(anneeValue, "'", "''") & "', '" & Replace(gradeValue, "'", "''") & "', '" & Replace(wilayaValue, "'", "''") & "')" db.Execute strSQL, dbFailOnError End If CleanUp: If Not rs Is Nothing Then rs.Close Set rs = Nothing Set db = Nothing Exit Sub ErrorHandler: MsgBox "حدث خطأ أثناء محاولة تحديث البيانات", vbCritical + vbMsgBoxRight, "خطأ" Resume CleanUp End Sub حيث سيتم تخزين القيمة في الجدول مباشرة بالتنسيق الذي تريده ( السنة التي تم اختيارها = 2025 ، سيتم تخزينها = 2024 / 2025 في الحقل بعد ان تم تغيير نوعه الى حقل نصي ) BASE_e.accdb 1
moho58 قام بنشر الخميس at 15:55 الكاتب قام بنشر الخميس at 15:55 ممتاز أخي @Foksh بارك الله فيك وحزاك كل الخير ان شاء الله
الردود الموصى بها
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.