مرحوم محمد محمدی

🖤 پیام تسلیت

با نهایت تأسف و تأثر، باخبر شدیم جناب آقای محمد محمدی با نام کاربری smartman ، از مدیران ارزشمند انجمن اکسل ایران، دار فانی را وداع گفته‌اند.

ایشان سال‌ها با دانش، تجربه، اخلاق نیکو و روحیه کمک به دیگران، سهم بزرگی در رشد و پویایی انجمن داشتند و خاطره حضور ارزشمندشان همواره در ذهن اعضای انجمن باقی خواهد ماند.

مدیریت و اعضای انجمن ExcelIran این ضایعه را به خانواده محترم ایشان، دوستان و تمامی اعضای انجمن تسلیت عرض نموده و از خداوند متعال برای آن مرحوم، رحمت و مغفرت الهی و برای بازماندگان صبر و شکیبایی مسئلت دارند.


انا لله و انا الیه راجعون

آیا امکان ترکیب ماکرو و فرمول وجود دارد؟

Collapse
X
 
  • زمان
  • نمایش
حذف همه
new posts
  • ajax

    • 2015/01/28
    • 12

    آیا امکان ترکیب ماکرو و فرمول وجود دارد؟

    آیا امکان ترکیب ماکرو و فرمول وجود دارد ؟
    یعنی در فایلی که چندین ماکرو وجود دارد با استفاده از فرمول ماکروها را اجرا نماییم.
    مثلاً بگوییم اگر سلول a1 اگر برابر فلان مقدار یا فلان سلول شد ماکروی شماره 1 اجرا شود و در غیر این صورت ماکروی 2 اجرا شود و الی آخر ...
    اگر امکانش باشد لطفاً راهنمایی نمایید و اگر امکانش از این طریق نیست راه حل جایگزین اگر دارد بفرمایید.
    با سپاس
  • DOLFIN

    • 2014/01/18
    • 149

    #2
    سلام دوست عزیز
    شما می خواهید مثلا در شیت 1 یک فایل اکسل ، اگر مقدار سلول a1 برابر با یک بود macro1 و اگر مقدار سلول a1 برابر با دو بود macro2 اجرا شود به این صورت عمل می کنیم :
    از قسمت ویژوال بر روی شیت مورد نظر یعنی شیت 1 می رویم و این کد را درون آن قرار می دهیم .
    کد:
    Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    If Sheet1.Range("a1").Value = "1" Then
    Call Macro1
    ElseIf Sheet1.Range("a1").Value = "2" Then
    Call Macro2
    End If
    End Sub
    [CENTER][FONT=times new roman][SIZE=7][I][B][COLOR=#0000ff] خانه اکسل - [url]http://excelhouse.blog.ir[/url][/COLOR][/B][/I][/SIZE]
    [/FONT][/CENTER]

    کامنت

    • ajax

      • 2015/01/28
      • 12

      #3
      ممنون از پاسخ شما ولی فکر کنم درخواست من مقداری گنگ بود به همین خاطر فایل نمونه را به پپیوست ارسال می نمایم که توضیحات کامل در داخل آن داده شده است.
      با سپاس
      فایل های پیوست شده

      کامنت

      • DOLFIN

        • 2014/01/18
        • 149

        #4
        دوست عزیز منظور اصلی در کد نویسی اول خدمت شما ارائه شد و شما می توانید بسته به نیاز کد ها را تغییر بدید.
        تنها فرق درخواست شما با کد اول این هست که شما می بایست ابتدا یک module ایجاد کنید سپس کد ها را درون یک ماکرو کپی کنید و رنج ها را تغییر بدید. به این صورت :
        کد:
        Sub SABT()
        If Sheet1.Range("c2").Value = "A" Then
        Call Macro1
        ElseIf Sheet1.Range("c2").Value = "B" Then
        Call Macro2
        Else
        MsgBox "پیام شما !", vbCritical
        End If
        End Sub
        [CENTER][FONT=times new roman][SIZE=7][I][B][COLOR=#0000ff] خانه اکسل - [url]http://excelhouse.blog.ir[/url][/COLOR][/B][/I][/SIZE]
        [/FONT][/CENTER]

        کامنت

        • mokaram
          مدير تالار اکسل و بانک اطلاعاتی

          • 2011/02/06
          • 1805
          • 74.00

          #5
          نوشته اصلی توسط ajax
          آیا امکان ترکیب ماکرو و فرمول وجود دارد ؟
          یعنی در فایلی که چندین ماکرو وجود دارد با استفاده از فرمول ماکروها را اجرا نماییم.
          مثلاً بگوییم اگر سلول a1 اگر برابر فلان مقدار یا فلان سلول شد ماکروی شماره 1 اجرا شود و در غیر این صورت ماکروی 2 اجرا شود و الی آخر ...
          اگر امکانش باشد لطفاً راهنمایی نمایید و اگر امکانش از این طریق نیست راه حل جایگزین اگر دارد بفرمایید.
          با سپاس
          شما می تونید این کار را با تابع if انجام بدید به فایل پیوست مراجعه نمایید ( توضیح : اگر سل c5 برابر با مقدار 2 باشد ماکرو اول و اگر برابر با 2 نباشد ماکرو دوم اجرا می شود )
          فایل های پیوست شده
          [CENTER][IMG]http://forum.exceliran.com/signaturepics/sigpic909_10.gif[/IMG]
          [/CENTER]

          کامنت

          • ajax

            • 2015/01/28
            • 12

            #6
            خیلی ممنون.
            عالی بود.

            کامنت

            چند لحظه..