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

Function للرسائل


إذهب إلى الإجابة الإجابة بواسطة أ / محمد صالح,

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

قام بنشر

السلام عليكم

 

كيف اعمل Function اعطيها الـ ID الذي في جدول الرسائل وتقوم هي بجلب النص والعنوان من الجدول

انا عملت هذي الـ Function

Public Function MSG(ID as Integer)
Dim Message As String, TItle As String
Dim ID As Integer
Message = DLookup("[txtMessageText]", "[tblMessages]", "[txtAutoIntMessageID] =ID")
TItle = DLookup("[txtMessageTitle]", "[tblMessages]", "[txtAutoIntMessageID] =ID")
End Function

ction بس ما أعرف اين الخطأ

تحياتي للجميع

قام بنشر

عليكم السلام

Public Function getMessage(msgID As Integer)
    'define vars
    Dim vMessage, vTitle As String
    'return values
    vMessage = DLookup("txtMessageText", "tblMessages", "txtAutoIntMessageID =" & msgID)
    vTitle = DLookup("txtMessageText", "tblMessages", "txtAutoIntMessageID =" & msgID)
    'return values
    getMessage = vMessage & "||" & vTitle
End Function

 

الدالة سوف تقوم بإرجاع قيمة تتضمن الرسالة والعنوان وبين الرسالة والعنوان علامة ||

لكي تقوم بعمل Split وفصلهم بالشكل الآتي:

 

    'define vars
    Dim splitMessage(), gMessage, gTitle As String
    
    'replace YOUR_MSG_ID with your id
    splitMessage = Split(getMessage(YOUR_MSG_ID), "||")
    
    'get results
    gMessage = splitMessage(0) 'get Message
    gTitle = splitMessage(1) 'get Title

 

  • Like 1
قام بنشر

الـ Function جابت الرسالة والعنوان في كأنها نص الرسالة

اريد ان يكون النص في الرسالة والعنوان يكون عنوان الرسالة

ارجو ان الفكرة تكون وضحت

قام بنشر
    'define vars
    Dim splitMessage(), gMessage, gTitle As String
    
    'replace YOUR_MSG_ID with your id
    splitMessage = Split(getMessage(YOUR_MSG_ID), "||")
    
    'get results
    gMessage = splitMessage(0) 'get Message
    gTitle = splitMessage(1) 'get Title
    
    'set in msgbox
    MsgBox gMessage, vbInformation, gTitle

 

  • Like 1
قام بنشر
منذ ساعه, SEMO.Pa3x said:

    'define vars
    Dim splitMessage(), gMessage, gTitle As String
    
    'replace YOUR_MSG_ID with your id
    splitMessage = Split(getMessage(YOUR_MSG_ID), "||")
    
    'get results
    gMessage = splitMessage(0) 'get Message
    gTitle = splitMessage(1) 'get Title
    
    'set in msgbox
    MsgBox gMessage, vbInformation, gTitle

 

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

 

تحياتي لك

قام بنشر
2 ساعات مضت, bumb said:

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

 

تحياتي لك

 

نعم وغير عبارة YOUR_MSG_ID في الكود الى رقم الـ ID الخاص برسالتك التي تريد عرضها

  • Like 1
قام بنشر

وعليكم السلام 🙂

 

طريقتي:

الدالة:

Public Function getMSG(ID As Integer, ind As Integer) As String

'    Dim A As String
'    Dim x() As String
'
'    A = DLookup("[txtMessageTitle] & '|' & [txtMessageText]", "[tblMessages]", "[txtAutoIntMessageID] =" & ID)
'    x = Split(A, "|")
'    getMSG = x(ind)
    
'
'OR combine in one line

    getMSG = Split(DLookup("[txtMessageTitle] & '|' & [txtMessageText]", "[tblMessages]", "[txtAutoIntMessageID] =" & ID), "|")(ind)
    
End Function

.

الاستعلام

image.png.fe1c6b11dc44c824bbc3e41281707771.png

.

والنتيجة:

image.png.47b63af53526250a44ba806db58f6490.png

.

جعفر

1392.Split.mdb.zip

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

المطلوب غير واضح لي بصورة كافية

ومحاولات الأستاذ جعفر ناتجة عن عدم وضوح المطلوب له أيضا

وحسب فهمي للمطلوب:

فأنت لا تريد دالة وإنما تريد إجراء sub تعطي له رقم id يعرض لك رسالة msgbox

إن كان هذا هو المطلوب فجرب هذا الإجراء

Public Sub MSG(ID As Integer)
Dim Message As String, TItle As String
Message = DLookup("[txtMessageText]", "[tblMessages]", "[txtAutoIntMessageID] =" & ID)
TItle = DLookup("[txtMessageTitle]", "[tblMessages]", "[txtAutoIntMessageID] =" & ID)
MsgBox Message, , TItle
End Sub

وهذه طريقة استدعائه في البرنامج

Sub mas()
MSG (1)
End Sub

أرجو أن يكون هو المطلوب

  • Like 3
قام بنشر
في ١٩‏/٦‏/٢٠٢١ at 20:29, أ / محمد صالح said:

المطلوب غير واضح لي بصورة كافية

ومحاولات الأستاذ جعفر ناتجة عن عدم وضوح المطلوب له أيضا

وحسب فهمي للمطلوب:

فأنت لا تريد دالة وإنما تريد إجراء sub تعطي له رقم id يعرض لك رسالة msgbox

إن كان هذا هو المطلوب فجرب هذا الإجراء


Public Sub MSG(ID As Integer)
Dim Message As String, TItle As String
Message = DLookup("[txtMessageText]", "[tblMessages]", "[txtAutoIntMessageID] =" & ID)
TItle = DLookup("[txtMessageTitle]", "[tblMessages]", "[txtAutoIntMessageID] =" & ID)
MsgBox Message, , TItle
End Sub

وهذه طريقة استدعائه في البرنامج


Sub mas()
MSG (1)
End Sub

أرجو أن يكون هو المطلوب

عشت وكثر الله خيرك

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

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

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

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

سجل حساب جديد

تسجيل دخول

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

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

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

Important Information