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

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

قام بنشر

على العموم ، صحيح ان جميع الطرق اعلاه تعطي النتيجة المطلوبة ، وذلك لأن مثال اخوي ازهر بسيط وبعمود واحد ،

بينما الطريقة الصحيحة هي ، البحث عن القيمة في القائمة ( ComboBox او ListBox ) ، ومن اي عمود ، ثم اظهارها ، هكذا :

    
    rim nRow as long, nColumn as long
    'nRow    = رقم السطر
    'nColumn = رقم العمود
    nColumn=0  
    For nRow = 0 To Me.Typ.ListCount - 1
        If Me.Typ.Column(nColumn, nRow)="Y" Then
            Me.Typ.Value = Me.Typ.ItemData(nRow)
            Exit For
        End If
    Next i

 

جعفر

  • Like 2
قام بنشر
11 دقائق مضت, jjafferr said:

على العموم ، صحيح ان جميع الطرق اعلاه تعطي النتيجة المطلوبة ، وذلك لأن مثال اخوي ازهر بسيط وبعمود واحد ،

بينما الطريقة الصحيحة هي ، البحث عن القيمة في القائمة ( ComboBox او ListBox ) ، ومن اي عمود ، ثم اظهارها

احسنت استاذنا

ولكن كما تفضلت القائمة في المثال مصدرها قائمة القيم ومن عمود واحد

وبالتالي تم عملها بالشكل اعلاه

ولو  كان غير ذلك لكان الحل كما اشرتم وهو الحل الافضل في جميع الاحوال

  • Like 1
  • تمت الإجابة
قام بنشر

في جزئية كنت ناوي اكتبها مع مشاركتي السابقة ، بس لما اخبرتني ام العيال ان الغدى جاهز ، طارت عن بالي 🙂

 

بعض الاوقات يكون عندنا مربع سرد فيه اكثر من عمود ، ونكون عملنا كود على الحدث "بعد تحديث" المربع ، حتى يضع قيمة العمود الثاني او الثالث في  حقل او حقلين ، وعليه يكون الكود هكذا /


Private Sub Form_Current()

    Dim nRow As Long, nColumn As Long
    'nRow    = رقم السطر
    'nColumn = رقم العمود
    nColumn = 0
    For nRow = 0 To Me.typ.ListCount - 1
        If Me.typ.Column(nColumn, nRow) = "Y" Then
            Me.typ.Value = Me.typ.ItemData(nRow)
            
            Call typ_AfterUpdate    '<====
            
            Exit For
        End If
    Next i
End Sub



Private Sub typ_AfterUpdate()    '<====

    Me.Typ2 = Me.typ.Column(1)
End Sub

 

جعفر

  • Thanks 1
  • Haha 2
قام بنشر
منذ ساعه, jjafferr said:

في جزئية كنت ناوي اكتبها مع مشاركتي السابقة ، بس لما اخبرتني ام العيال ان الغدى جاهز ، طارت عن بالي 🙂

بعض الاوقات يكون عندنا مربع سرد فيه اكثر من عمود ، ونكون عملنا كود على الحدث "بعد تحديث" المربع ، حتى يضع قيمة العمود الثاني او الثالث في  حقل او حقلين ، وعليه يكون الكود هكذا /



Private Sub Form_Current()

    Dim nRow As Long, nColumn As Long
    'nRow    = رقم السطر
    'nColumn = رقم العمود
    nColumn = 0
    For nRow = 0 To Me.typ.ListCount - 1
        If Me.typ.Column(nColumn, nRow) = "Y" Then
            Me.typ.Value = Me.typ.ItemData(nRow)
            
            Call typ_AfterUpdate    '<====
            
            Exit For
        End If
    Next i
End Sub



Private Sub typ_AfterUpdate()    '<====

    Me.Typ2 = Me.typ.Column(1)
End Sub

 

جعفر

بالف هنا معلمنا العزيز وبارك لك فى اهلك

جزاكم الله خيرا اساتذتى :fff:

  • 6 months later...
قام بنشر

الاخوة الاعزا لدي نموذج وعليه قائمة تحرير وسرد وفيه قيمة افتراضية تطلع (موظف جديد ) اريد كود عند الضغط على القيمة الافتراضية التي هي موظف جديد ينقلني مباشرة الى شاشة الموظفين حفظكم الله 

Screenshot_٢٠٢٠١٠٢٤_١٦٥٥٢٦٠٢٨.jpg

انشئ حساب جديد او قم بتسجيل دخولك لتتمكن من اضافه تعليق جديد

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

انشئ حساب جديد

سجل حسابك الجديد لدينا في الموقع بمنتهي السهوله .

سجل حساب جديد

تسجيل دخول

هل تمتلك حساب بالفعل ؟ سجل دخولك من هنا.

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

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

Important Information