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

الردود الموصى بها

قام بنشر
  في 1‏/1‏/2017 at 20:41, صالح حمادي said:

يمكنك إنشاء إستعلام جدولي من خلاله تستطيع أن تجعل قيم أحد الأعمدة إلى عناوين حقول

 

Expand  

تسلم ايدك اخى سوف اجربها وابلغك .

لم تفلح اخى فقد وضعت كافة القيم كاسم للحقول ولا استطيع ربطها مع التقرير فهل يوجد حل ؟؟

 

قام بنشر
  في 3‏/1‏/2017 at 07:14, jjafferr said:

السلام عليكم:smile:

 

اليك هذه الروابط

واقرأ الرابط التالي لآخره ، ثم انتقل الى الرابط الذي به

.

جعفر

Expand  

شكراً لاهتمامك اخى وسف اقوم بتنفيذ التعليمات واخبرك

 

قام بنشر
  في 1‏/1‏/2017 at 21:01, king5star said:

تسلم ايدك اخى سوف اجربها وابلغك .

لم تفلح اخى فقد وضعت كافة القيم كاسم للحقول ولا استطيع ربطها مع التقرير فهل يوجد حل ؟؟

 

Expand  

اخي الكريم
انا نزلت القاعده‌ بياناتك
كان بها جدول بحقلين فقط

ولكي تعمل استعلام جدولي يجب ان يكون مصدر الاستعلام الجدولي بيكون اكثر من حقلين
انا اضفت حقل اخر
وعملت استعلام جدولي

هل هذا هو المطلوب او ...

Item.zip

  • Like 1
قام بنشر
  في 3‏/1‏/2017 at 12:48, Shivan Rekany said:

اخي الكريم
انا نزلت القاعده‌ بياناتك
كان بها جدول بحقلين فقط

ولكي تعمل استعلام جدولي يجب ان يكون مصدر الاستعلام الجدولي بيكون اكثر من حقلين
انا اضفت حقل اخر
وعملت استعلام جدولي

هل هذا هو المطلوب او ...

Item.zipFetching info...

Expand  

تسلم ايدك اخى وشكراص لمجهودك وتعبك ولكن ليس هذا ما اقصد وهذه صوره لما اريد لقد قمت بتعديلها بالفوتوشوب لاوضح لك .

 

الصورة الاولى

1.jpg

 

ما اريده

 

2.jpg

  في 3‏/1‏/2017 at 07:14, jjafferr said:

السلام عليكم:smile:

 

اليك هذه الروابط

واقرأ الرابط التالي لآخره ، ثم انتقل الى الرابط الذي به

.

جعفر

Expand  

لم اجد المطلوب سيدي ولقد اوضحت فى المشاركة السابقة ما اريد وشكراً جزيلاً لك لاهتمامك .

قام بنشر
  في 3‏/1‏/2017 at 19:45, king5star said:

لم اجد المطلوب سيدي ولقد اوضحت فى المشاركة السابقة ما اريد وشكراً جزيلاً لك لاهتمامك .

Expand  

شوف هذا 
هل هذا هو طلبك
شوفه ووافيني بالنتيجة

 

Item.zip

  • Like 1
قام بنشر

 

  في 4‏/1‏/2017 at 17:04, Shivan Rekany said:

شوف هذا 
هل هذا هو طلبك
شوفه ووافيني بالنتيجة

 

Item.zipFetching info...

Expand  

كلمة شكراُ ما تكفي ، والمعني أكبر ما توفيه ، ولو بيدي العمر أعطيه ،أعبر له عن مدي شكري.

 

سلمت يداك وهذه النتيجه مرضيه وجيده وما اريد غيرها بارك الله لك اخى .

 

ولكننى ممتن للشرح فى اسطر حتى لو قليله .

قام بنشر
  في 5‏/1‏/2017 at 07:06, king5star said:

 

كلمة شكراُ ما تكفي ، والمعني أكبر ما توفيه ، ولو بيدي العمر أعطيه ،أعبر له عن مدي شكري.

 

سلمت يداك وهذه النتيجه مرضيه وجيده وما اريد غيرها بارك الله لك اخى .

 

ولكننى ممتن للشرح فى اسطر حتى لو قليله .

Expand  

اخي الكريم

هسة انا بستخدم موبايل

وان شاء الله في يوم السبت راح اشرح لك اذا ما يكفي هذه الكلما الاسفل

العجب كله بيرجع للوحدة النمطية

وبعد احنا عملنا استعلام واضفنا حقل اي دي و في حقل اخر كتبنا هذه الجملة

Sn:Convertcolumntorow("[sn]";"sn"؛"]sn]![id]="&[id])

وعملنا تجميع اي كروب للاستعلام

قام بنشر

اسف على قلة شرحي الاول 
العجب كله يرجع لهذه وحدة نمطية اللي بها فانكشن باسم ConvertColumnToRow وفي الاستعلام راح نستخدم هذا الاسم

Public Function ConvertColumnToRow(strField As String, _
    strTable As String, _
    Optional strWhere As String, _
    Optional strOrderBy As String, _
    Optional strSeparator = ", ") As Variant
On Error GoTo Err_Handler
    Dim rs As DAO.Recordset
    Dim rsMV As DAO.Recordset
    Dim strSql As String
    Dim strOut As String
    Dim lngLen As Long
    Dim bIsMultiValue As Boolean
    
    ConvertColumnToRow = Null
    
    strSql = "SELECT " & strField & " FROM " & strTable
    If strWhere <> vbNullString Then
        strSql = strSql & " WHERE " & strWhere
    End If
    If strOrderBy <> vbNullString Then
        strSql = strSql & " ORDER BY " & strOrderBy
    End If
    Set rs = DBEngine(0)(0).OpenRecordset(strSql, dbOpenDynaset)
    bIsMultiValue = (rs(0).Type > 100)
    
    Do While Not rs.EOF
        If bIsMultiValue Then
            Set rsMV = rs(0).Value
            Do While Not rsMV.EOF
                If Not IsNull(rsMV(0)) Then
                    strOut = strOut & rsMV(0) & strSeparator
                End If
                rsMV.MoveNext
            Loop
            Set rsMV = Nothing
        ElseIf Not IsNull(rs(0)) Then
            strOut = strOut & rs(0) & strSeparator
        End If
        rs.MoveNext
    Loop
    rs.Close
    
    lngLen = Len(strOut) - Len(strSeparator)
    If lngLen > 0 Then
       ConvertColumnToRow = Left(strOut, lngLen)
    End If

Exit_Handler:
    Set rsMV = Nothing
    Set rs = Nothing
    Exit Function

Err_Handler:
    MsgBox "Error " & Err.Number & ": " & Err.Description, vbExclamation, "ConvertColumnToRow()"
    Resume Exit_Handler
End Function

وبعدين عملنا استعلام كما مبينة بالصور

12.JPG

وبعدين عملنا تقرير على هذا الاستعلام

وحفظنا التقرير باسم Query1
وبعد عملنا تقرير على هذا الاستعلام

اي يعني مصدر هذا التقرير هو استعلام Query1 كما مبينة في الصورة

13.JPG

وفي النهاية النتيجة طلعت هكذا

14.JPG

مع تقدير

 

  • Like 1
قام بنشر
  في 5‏/1‏/2017 at 13:29, Shivan Rekany said:

اسف على قلة شرحي الاول 
العجب كله يرجع لهذه وحدة نمطية اللي بها فانكشن باسم ConvertColumnToRow وفي الاستعلام راح نستخدم هذا الاسم

Public Function ConvertColumnToRow(strField As String, _
    strTable As String, _
    Optional strWhere As String, _
    Optional strOrderBy As String, _
    Optional strSeparator = ", ") As Variant
On Error GoTo Err_Handler
    Dim rs As DAO.Recordset
    Dim rsMV As DAO.Recordset
    Dim strSql As String
    Dim strOut As String
    Dim lngLen As Long
    Dim bIsMultiValue As Boolean
    
    ConvertColumnToRow = Null
    
    strSql = "SELECT " & strField & " FROM " & strTable
    If strWhere <> vbNullString Then
        strSql = strSql & " WHERE " & strWhere
    End If
    If strOrderBy <> vbNullString Then
        strSql = strSql & " ORDER BY " & strOrderBy
    End If
    Set rs = DBEngine(0)(0).OpenRecordset(strSql, dbOpenDynaset)
    bIsMultiValue = (rs(0).Type > 100)
    
    Do While Not rs.EOF
        If bIsMultiValue Then
            Set rsMV = rs(0).Value
            Do While Not rsMV.EOF
                If Not IsNull(rsMV(0)) Then
                    strOut = strOut & rsMV(0) & strSeparator
                End If
                rsMV.MoveNext
            Loop
            Set rsMV = Nothing
        ElseIf Not IsNull(rs(0)) Then
            strOut = strOut & rs(0) & strSeparator
        End If
        rs.MoveNext
    Loop
    rs.Close
    
    lngLen = Len(strOut) - Len(strSeparator)
    If lngLen > 0 Then
       ConvertColumnToRow = Left(strOut, lngLen)
    End If

Exit_Handler:
    Set rsMV = Nothing
    Set rs = Nothing
    Exit Function

Err_Handler:
    MsgBox "Error " & Err.Number & ": " & Err.Description, vbExclamation, "ConvertColumnToRow()"
    Resume Exit_Handler
End Function

وبعدين عملنا استعلام كما مبينة بالصور

12.JPG

وبعدين عملنا تقرير على هذا الاستعلام

وحفظنا التقرير باسم Query1
وبعد عملنا تقرير على هذا الاستعلام

اي يعني مصدر هذا التقرير هو استعلام Query1 كما مبينة في الصورة

13.JPG

وفي النهاية النتيجة طلعت هكذا

14.JPG

مع تقدير

 

Expand  

سلمت يداك اخي .

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

زائر
اضف رد علي هذا الموضوع....

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • تصفح هذا الموضوع مؤخراً   0 اعضاء متواجدين الان

    • لايوجد اعضاء مسجلون يتصفحون هذه الصفحه
×
×
  • اضف...

Important Information