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

مشكلة في جميع دوال lookup


beso2009

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

السادة مشرفي واعضا منتيات اوفيسنا المحترمين:

واجهتني مشكلة اثناء استخدام lookup وهي ضرورة الترتيب الأبجدي ولكن نصحني احد الأعضاء المحترمين ان استخدم vlookup لأنها اقوي

ولكنها هناك مشكلة اخري الا وهي انه مثلا إذا عملنا برنامج (فاتورة) إذا كتبنا اسم الصنف في صفحة الفاتورة يقوم بعرض سعره هذا الصنف(من صفحة الاصناف)

فإذا كتبنا صنف غير موجود يحضر لنا سعر خطأ من صنف موجود

وجدت حل(ولكني لا افضله) وهو إدخال اصناف وهمية بأسماء تبدأ بجميع الحروف الابجدية وجعلت السعر امامها يساوي صفر

فهل هناك حل اكثر عملية

تحميل البرنامج

رابط هذا التعليق
شارك

السلام عليكم،

شاهد اخي الملف المرفق ولاحظ ما يلي:

1- في صفحة الفاتورة و بالتحديد في الخلية الخاصة بإسم العميل .. عندما تختار أسم العميل من القائمة المنسدلة يخرج لك رقمه وعندما تكتب رقم العميل في الخلية الخاصة بالرقم يخرج لك اسمه .. وبهذا تستطيع استرجاع بيانات العميل عن طريق الإسم وأيضاً عن طريق الرقم وليس واحد منهما فقط.

2- قمت بمراجعة جميع الصيغ الخاصة بإسترجاع بيانات الأصناف وتعديل كل ما يلزم عليها.

أتمنى أن يكون هذا هو ما تريد بالضبط

besopreviewsaif2.rar

تم تعديل بواسطه علي السحيب
رابط هذا التعليق
شارك

يمكنك عمل ذلك من القائمة بيانات ثم التحقق من الصحة ثم أختر قائمة .. ولمععلومات أكثر ابحث في المنتدى عن التحقق من الصحة

رابط هذا التعليق
شارك

اخي المبدع علي : حقيقة مواضيع جميلة وردود اجمل

اعلم جيدا ما شرحت ولكن الذي لا افهمه هو الكود التالي (البديل ل lookup ) عن طريقvba

Private Sub Worksheet_Change(ByVal Target As Range)
  On Error GoTo NotAvailable
  Static MyCell As Boolean
  If MyCell = False Then
    If Target.Address = "$B$4" Then
      MyCell = True
      Me.Range("H4") = Application.WorksheetFunction.VLookup(Target.Value, Me.Range("M5:N204").Value, 2, 0)
      Exit Sub
    ElseIf Target.Address = "$H$4" Then
      MyCell = True
      Me.Range("B4") = Application.WorksheetFunction.VLookup(Target.Value, Me.Range("L5:M204").Value, 2, 0)
    End If
  Else
    MyCell = False
  End If
  Exit Sub

NotAvailable:
  If Err = 1004 Then
    Range("B4,H4").Select
    Selection.ClearContents
    Range("H4").Select
    MsgBox "الرقم المطلوب غير موجود في قائمة العملاء من فضلك تأكد من الرقم الصحيح واعد المحاولة", , "إدخال خاطئ"
Else
   Resume
  End If
End Sub

رابط هذا التعليق
شارك

لمعلومات أكثر عن هذا الكود .. راجع الروابط التالية:

http://www.officena.net/ib/index.php?showtopic=6215

http://www.officena.net/ib/index.php?showtopic=7664&hl=

رابط هذا التعليق
شارك

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

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

Important Information