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

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

قام بنشر

السلام عليكم أساتذتى الكرام الرجاء من سيادتكم مساعدتى بإيجاد معادلة لمعرفة عدد الأفراد المقيمين بغرفة الفندق طبقاً لنوعها بحيث اذا كانت الغرفة مزدوجة يعنى DBL لابد ان تكون نتيجة المعادلة =2 واذا كانت ثلاثية TRP =3   واذا كانت الغرفة SGL =1 ..الخ     وبناءاً عليه اذا كانت الغرفة   DBL+CH(12) إذن تكون النتيجة 3 لأن هذه تعنى غرفة مزدوجة +طفل  وهكذا ..فقط لا أريد احتساب البيبى ورمزه INF الى الغرف .بمعنى اذا كانت الغرفة DBL+INF ستكون النتيجة 2 فقط وليس 3 وشاكر مجهوداتكم مسبقاً وبارك الله فيكم ..والملف المرفق به النتيجة المطلوبة بالضبط بالعمود B

 

 

 

استخراج أعداد الغرف.xlsx

قام بنشر

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

شكراً جزيلاً لمجهوداتكم الوفيرة هو حقاً المطلوب  ..,ولو وجد أنواع غرف أخرى .. يمكن إضافتها مثل هذا السطر بالكود

Case "TRP": Count = Count + 3

 

قام بنشر (معدل)
7 ساعات مضت, هانى محمد said:

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

شكراً جزيلاً لمجهوداتكم الوفيرة هو حقاً المطلوب  ..,ولو وجد أنواع غرف أخرى .. يمكن إضافتها مثل هذا السطر بالكود

شكرا لكم.

تنقيح أخير للكود:
 

Option Explicit

Function CountPeople(ByVal ID As String) As Integer
    Dim People() As String, Item As String
    Dim Items As Integer, Pos As Integer
    Dim i As Integer, Count As Integer
    
    ID = Replace(ID, " ", "", 1, -1)
    If ID = "" Then Exit Function
    
    People = Split(ID & "+", "+")
    Items = UBound(People()) - 1
    
    For i = 0 To Items
        Item = People(i)
        Select Case Item
            Case "INF": 'Count = Count + 0
            Case "SGL":  Count = Count + 1
            Case "DBL":  Count = Count + 2
            Case "TRP":  Count = Count + 3
            Case Else
                Pos = InStr(1, Item, "CH(")
                If Pos > 0 Then
                    If Pos = 1 Then
                        Count = Count + 1
                    Else
                        Count = Count + Val(Left(Item, Pos - 1))
                    End If
                End If
        End Select
    Next i
        
    CountPeople = Count
End Function

 

تم تعديل بواسطه AbuuAhmed
  • Like 2

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

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

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

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

سجل حساب جديد

تسجيل دخول

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

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

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

Important Information