نمایش نتایج: از شماره 1 تا 9 , از مجموع 9

موضوع: توضیح روی توابعی که خودمان درست کرده*ایم

  1. #1


    آخرین بازدید
    2017/02/18
    تاریخ عضویت
    July 2012
    نوشته ها
    42
    امتیاز
    7
    سپاس
    4
    سپاس شده
    7 در 7 پست
    تعیین سطح نشده است

    توضیح روی توابعی که خودمان درست کرده*ایم

    سلام.
    تعدادی فرمول درست کرده*ام و می*خواهم مانند فرمول*های خود اکسل شرح روی خودش و آرگومان*هایش داشته باشد.
    جستجو کردم و Application.MacroOptions Method (Excel) را پیدا کردم ولی نفهمیدم چطور کار می*کند و هیچکدام از نمونه*ها هم کار نکرد.
    راه انجامش چیست؟
    اخطار: این یک موضوع قدیمی است
    به دلیل قدیمی بودن موضوع، ممکن است برخی فایل های ضمیمه به درستی کار نکنند. لطفا در صورت عدم ضرورت، از بالا آوردن موضوعات قدیمی خودداری نمایید.

  2.  

  3. #2


    آخرین بازدید
    2023/05/10
    تاریخ عضویت
    January 2017
    محل سکونت
    کرمانشاه
    نوشته ها
    360
    امتیاز
    571
    سپاس
    98
    سپاس شده
    550 در 269 پست
    سطح اکسل
    80.00 %

    سلام با استفاده از کد ذیا میتونید این کار رو انجام بدید

    برای هر تابع کافیه فقط یک بار اطلاعات آن را وارد کرد و کد (ماکرو) را اجرا کنید
    کد PHP:
    Sub DescribeFunction()
       
    Dim FuncName As String
       Dim FuncDesc 
    As String
       Dim Category 
    As String
       Dim ArgDesc
    (1 To 4) As String 'تعداد آرگومان ها

       FuncName = "نام تابع"
       FuncDesc = "توضيح کلي تابع"
       Category = 7 '
    Text category
       ArgDesc
    (1) = "توضيح مربوط به آرگومان اول"
       
    ArgDesc(2) = "توضيح مربوط به آرگومان دوم"
       
    ArgDesc(3) = "توضيح مربوط به آرگومان سوم"
       
    ArgDesc(4) = "توضيح مربوط به آرگومان چهارم"

       
    Application.MacroOptions _
          Macro
    :=FuncName_
          Description
    :=FuncDesc_
          Category
    :=Category_
          ArgumentDescriptions
    :=ArgDesc
    End Sub 

  4. سپاس ها (1)


  5. #3


    آخرین بازدید
    2017/02/18
    تاریخ عضویت
    July 2012
    نوشته ها
    42
    امتیاز
    7
    سپاس
    4
    سپاس شده
    7 در 7 پست
    تعیین سطح نشده است

    در این نمونه چطور کار نمی*کنه؟
    آیا میان نام فانکشن و نام ساب*روتین ارتباطی باید باشه؟

    کد PHP:
    Public Function myFunction(ByVal a As IntegerByVal b As Integer) As Boolean
    myFunction 
    True
    End 
    Function

    Sub DescribeFunction()
       
    Dim FuncName As String
       Dim FuncDesc 
    As String
       Dim Category 
    As String
       Dim ArgDesc
    (1 To 2) As String 'تعداد آرگومان ها

       FuncName = "myFunction"
       FuncDesc = "توضيح کلي تابع"
       Category = 7 '
    Text category
       ArgDesc
    (1) = "توضيح مربوط به آرگومان اول"
       
    ArgDesc(2) = "توضيح مربوط به آرگومان دوم"

       
    Application.MacroOptions _
          Macro
    :=FuncName_
          Description
    :=FuncDesc_
          Category
    :=Category_
          ArgumentDescriptions
    :=ArgDesc
    End Sub 

  6. #4


    آخرین بازدید
    2017/02/18
    تاریخ عضویت
    July 2012
    نوشته ها
    42
    امتیاز
    7
    سپاس
    4
    سپاس شده
    7 در 7 پست
    تعیین سطح نشده است

    برای دیدن سایز بزرگ روی عکس کلیک کنید

نام:  3.jpg
مشاهده: 8
حجم:  55.4 کیلو بایتبرای دیدن سایز بزرگ روی عکس کلیک کنید

نام:  1.jpg
مشاهده: 10
حجم:  24.1 کیلو بایتبرای دیدن سایز بزرگ روی عکس کلیک کنید

نام:  2.jpg
مشاهده: 8
حجم:  16.3 کیلو بایت

  7. #5


    آخرین بازدید
    2023/05/10
    تاریخ عضویت
    January 2017
    محل سکونت
    کرمانشاه
    نوشته ها
    360
    امتیاز
    571
    سپاس
    98
    سپاس شده
    550 در 269 پست
    سطح اکسل
    80.00 %

    نقل قول نوشته اصلی توسط eppagh نمایش پست ها
    برای دیدن سایز بزرگ روی عکس کلیک کنید

نام:  3.jpg
مشاهده: 8
حجم:  55.4 کیلو بایتبرای دیدن سایز بزرگ روی عکس کلیک کنید

نام:  1.jpg
مشاهده: 10
حجم:  24.1 کیلو بایتبرای دیدن سایز بزرگ روی عکس کلیک کنید

نام:  2.jpg
مشاهده: 8
حجم:  16.3 کیلو بایت
    نمیخواد در تابع ماکرو رو فراخوانی کنید
    داخل ماکرو کلیک کنید و دکمه f8 رو چند بار بزنید تا ماکرو اجرا شه یا دکمه f5 رو بزنید
    همانند یک ماکروی عادی باهاش رفتار کنید و دستی اجراش کنید
    برای هرتابع باید یک بار دستی این ماکرو رو اجرا کنید

  8. سپاس ها (1)


  9. #6


    آخرین بازدید
    2017/02/18
    تاریخ عضویت
    July 2012
    نوشته ها
    42
    امتیاز
    7
    سپاس
    4
    سپاس شده
    7 در 7 پست
    تعیین سطح نشده است

    وقتی که ماکرو رو دستی اجرا می*کنم فانکشن از لیست فانکشن*های کاربر ناپدید میشه. همینطور که ور می*رفتم یک بار آمد ولی دوباره ناپدید شد.
    دیگه اینکه با اینکه برای آرگومان Description در Application.MacroOptions همه*چیز درست به*نظر میاد ولی روی پنجره چیزی نشون نمی*ده. وقتی اجرا شد فقط شرح آرگومان*ها رو نشون می*داد.
    این چرا اینقدر بدقلقه؟!

  10. #7


    آخرین بازدید
    2023/05/10
    تاریخ عضویت
    January 2017
    محل سکونت
    کرمانشاه
    نوشته ها
    360
    امتیاز
    571
    سپاس
    98
    سپاس شده
    550 در 269 پست
    سطح اکسل
    80.00 %

    نقل قول نوشته اصلی توسط eppagh نمایش پست ها
    وقتی که ماکرو رو دستی اجرا می*کنم فانکشن از لیست فانکشن*های کاربر ناپدید میشه. همینطور که ور می*رفتم یک بار آمد ولی دوباره ناپدید شد.
    دیگه اینکه با اینکه برای آرگومان Description در Application.MacroOptions همه*چیز درست به*نظر میاد ولی روی پنجره چیزی نشون نمی*ده. وقتی اجرا شد فقط شرح آرگومان*ها رو نشون می*داد.
    این چرا اینقدر بدقلقه؟!
    این کار رو انجام بدین
    یک فایل جدید اکسل باز کنید و تابع و اون ماکرو رو در این فایل قرار بدین بعد فایل رو با فرمت add in یعنی (xlam.*) ذخیره کنید حالا یک فایل جدید اکسل رو باز کرده و از قسمت option بعد Add in فایل add inی که ساختین رو به اضافه کنید... از این به بعد این تابع در تمامی فایل های اکسل قابل استفاده هست و هر وقت پنجره vba رو باز کنید در ستون سمت چب فایل add in قرار داشته و میتوانید توابع جدید رو بهش اضافه کنید.
    یک نمونه از توابع تعریف شده
    برای دیدن سایز بزرگ روی عکس کلیک کنید

نام:  function.png
مشاهده: 9
حجم:  111.5 کیلو بایت

  11. سپاس ها (1)


  12. #8


    آخرین بازدید
    2017/02/18
    تاریخ عضویت
    July 2012
    نوشته ها
    42
    امتیاز
    7
    سپاس
    4
    سپاس شده
    7 در 7 پست
    تعیین سطح نشده است

    از حوصله*ی شما متشکرم.
    ولی چون منظورم این بود که فایل رو رد کنم به کس دیگه و مطمئن باشم که همه*جا درست کار خواهد کرد این کار رو کردم:
    یه Module درست کردم و ماکروی شرح فانکشن*ها رو گذاشتم توی اون. بعد توی همون یه مدول دیگه درست کردم که همه رو اجرا کنه.
    در فایل در ایونت *Open گذاشتم که ماکروی اجرای شرح همه*ی فانکشن*ها رو اجرا کنه.
    اینطوری دیگه گمونم هیچوقت مشکلی پیش نیاد.
    باز هم از پاسخ*های شما متشکرم.

  13. #9


    آخرین بازدید
    2017/02/18
    تاریخ عضویت
    July 2012
    نوشته ها
    42
    امتیاز
    7
    سپاس
    4
    سپاس شده
    7 در 7 پست
    تعیین سطح نشده است

    در مدول فانکشن*ها:
    کد PHP:
    Function TestMacro(ByVal FirstArgo As IntegerByVal SecoundArgo As Integer) As Boolean
    TestMacro 
    True
    End 
    Function

    Function 
    TestMacroX(ByVal FirstArgo As IntegerByVal SecoundArgo As Integer) As Boolean
    TestMacroX 
    False
    End 
    Function 
    در مدول شرح فانکشن*ها:
    کد PHP:
    Sub UDFDiscriptions()
    Call UDFTestMacro
    Call UDFTestMacroX
    End Sub

    Sub UDFTestMacro
    ()
     
    Dim ArgDesc(1 To 2) As String        
    FuncDesc 
    "TestMacro" 
    ArgDesc(1) = "عدد صحيح اول:"        
    ArgDesc(2) = "عدد صحيح دوم:"   
     
    Application.MacroOptions Macro:="TestMacro"Category:="My Custom Category"_
     Description
    :=FuncDescArgumentDescriptions:=ArgDesc
    End Sub

    Sub UDFTestMacroX
    ()
     
    Dim ArgDesc(1 To 2) As String        
    FuncDesc 
    "TestMacro" 
    ArgDesc(1) = "عدد صحيح اول:"        
    ArgDesc(2) = "عدد صحيح دوم:"   
     
    Application.MacroOptions Macro:="TestMacroX"Category:="My Custom Category"_
     Description
    :=FuncDescArgumentDescriptions:=ArgDesc
    End Sub 
    در WorkBook:
    کد PHP:
    Private Sub Workbook_Open()
    Call UDF_Discriptions.UDFDiscriptions
    End Sub 

  14. سپاس ها (1)



اطلاعات موضوع

کاربرانی که در حال مشاهده این موضوع هستند

در حال حاضر 1 کاربر در حال مشاهده این موضوع است. (0 کاربران و 1 مهمان ها)

موضوعات مشابه

  1. درخواست فاکتور فروش با فرمت اکسل
    توسط maryam_sh در انجمن فاکتور های فروش و حقوق و دستمزد،چک
    پاسخ ها: 17
    آخرين نوشته: 2017/08/02, 20:14
  2. جستجوی تمامی اقلام یک فاکتور ذخیره شده
    توسط khorasan66 در انجمن توابع اکسل - Excel Functions
    پاسخ ها: 1
    آخرين نوشته: 2013/02/21, 00:39
  3. توضیح کد ماکروی جمع محتوای دو سلول
    توسط امیر رضا دهقان در انجمن سوالات پیرامون ويژوال بيسيك - VBA Questions
    پاسخ ها: 1
    آخرين نوشته: 2012/10/27, 21:50
  4. اضافه شدن توابع تخصصي تر در توابعي مانند توابع آماري
    توسط exceliran در انجمن توابع اکسل - Excel Functions
    پاسخ ها: 1
    آخرين نوشته: 2011/08/10, 06:00
  5. معرفی توابعی که مبنای عدد رو عوض می کنند
    توسط khakzad در انجمن آموزش توابع اكسل
    پاسخ ها: 0
    آخرين نوشته: 2010/09/04, 12:44

بازدید کنندگان با جستجو های زیر این صفحه را پیدا کرده اند

انجمن اكسل ايران , اكسل , اكسس , سوال و جواب اكسل , سوال اكسس , انجمن اكسل ايران , توابع اكسل, آموزش اكسل, آموزش اكسس, VBA, ويژوال بيسيك

علاقه مندی ها (Bookmarks)

مجوز های ارسال و ویرایش

  • شما نمیتوانید موضوع جدیدی ارسال کنید
  • شما امکان ارسال پاسخ را ندارید
  • شما نمیتوانید فایل پیوست کنید.
  • شما نمیتوانید پست های خود را ویرایش کنید
  •  
  • BB code ها فعال هستند
  • شکلک ها فعال هستند
  • کد [IMG] فعال است
  • کد [VIDEO] فعال است
  • کد HTML غیر فعال است