target چیست و چکار می کند؟

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

    • 2012/05/28
    • 17

    target چیست و چکار می کند؟

    میشه در مورد targetتوضیح کاملی بدید چون تو هلپ هم چیزی ندیدم ؟با مثال های دیگه که هم اگر سراغ دارید بذارید تادر مورد کاری که تارگت انجام می ده هم من و هم سایر دوستان اطلاعی کسب کنند
    در مورد این کد یک توضیحی بدید ممنون میشم

    Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Excel.Range)
    Static c As Range

    If Not c Is Nothing Then
    c.Interior.ColorIndex = xlColorIndexNone
    End If

    Target.Interior.ColorIndex = 6

    Set c = Target


    End Sub
  • s.cheraghi

    • 2011/02/27
    • 311

    #2
    RE: target چیست و چکار می کند؟

    با سلام
    Target یک متغیر از نوع Object هست و نشان دهنده شئی هست که بر روی آن عملی انجام شده است و عمدتا از نوع Range هست و معمولا در رویداد Worksheet_change به عنوان سلول و یا محدوده ای از سلول ها که مقدار درون آنها تغییر داده می شود، می باشد.
    زمینه های مورد استفاده target بیشتر از عرض بنده می باشد و امیدوارم که دوستان کامل تر بفرمایند
    در یادگیری سیر نشوید :idea:

    برای ارتباط بیشتر به [URL="https://excelpedia.net/"]سایت[/URL] [URL="https://excelpedia.net"][B][COLOR=#008000]ExcelPedia [/COLOR][/B][/URL]سربزنید.
    برگزاری [URL="https://excelpedia.net/excel-ninja/"]دوره های آموزش[/URL] [URL="https://excelpedia.net/what-is-excel/"][B]اکسل [/B][/URL]در تهران
    [URL="https://excelpedia.net/category/excel-functions/"][B]آموزش توابع اکسل[/B][/URL]

    کامنت

    • ~M*E*H*D*I~
      • 2011/10/19
      • 4377
      • 70.00

      #3
      RE: target چیست و چکار می کند؟

      سلام
      همانطور که دوست عزیزم فرمودن در مورد متغیر target یک ابجکت از نوع رنج هست که توضیحات دیگه ای بهش اضافه میکنم، اکسل این قابلیت رو داره که به صورت اتوماتیک یک ماکرو رو اجرا کنه این اتفاق زمانی قابل اجرا خواهد بود که مقدار یک سل تغییر پیدا کنه و ما enter رو بزنیم، از ورژن 97 به بعد مایکروسافت مبحث event هارو گسترش داد و در همین ورژن Worksheet_change به مجموعه event ها اضافه شد، worksheet_change رویه ای هست از مجموعه worksheet object ها و در ماژول می بایست به صورت private تعریف بشه شما وقتی وارد vba editor بشید و بر روی یکی از شیت ها دابل کلیک کنید صفحه ای باز میشه که بهش میگن module pane در بالای اون یک drop down list هlست که شامل دو گزینه general و worksheet هست که اگه worksheet رو انتخاب کنید یک پریویت ماژول به صورت اتوماتیک به ماژول پین اضافه میشه به شکل زیر
      کد PHP:
      Private Sub Worksheet_SelectionChange(ByVal Target As Range)

      End Sub 
      مشاهده میکنید که یک متغیر پیش فرض به نام target تعریف شده که به سلی اشاره داره که قرار هست تغییری در اون ایجاد بشه و میدونید که سل ها از مجموعه range object هستند پس نوع متغیر هم به صورت پیش فرض رنج خواهد بود پس با این متغیر میشه به سلی اشاره کرد که تغییر میکنه به عنوان مثال کد زیر رو اجرا کنید تا ببینید چه اتفاقی میفته
      کد PHP:
      Private Sub Worksheet_SelectionChange(ByVal Target As Range)
      MsgBox "You select the " Target.Address

      End Sub 
      این توضیحات اگر کافی نبود بفرمایید بیشتر توضیح بدم
      [CENTER]
      [SIGPIC][/SIGPIC]
      [/CENTER]

      کامنت

      • daghyad

        • 2012/03/30
        • 117

        #4
        RE: target چیست و چکار می کند؟

        این هم کد جهت امتحان کردن:
        کد PHP:
        Private Sub Worksheet_Change(ByVal Target as Range
            
        Target.Font.ColorIndex 
        End Sub 
        و این هم یک کد:
        کد PHP:
        Private Sub Worksheet_Change(ByVal Target As Excel.Range
            If 
        Target.Column 1 Then 
                ThisRow 
        Target.Row 
                
        If Target.Value 100 Then 
                    Range
        ("B" ThisRow).Interior.ColorIndex 
                
        Else 
                    
        Range("B" ThisRow).Interior.ColorIndex xlColorIndexNone 
                End 
        If 
            
        End If 
        End Sub 
        و این هم کد دیگه برای حفاظت از سلول های حاوی فرمول
        کد PHP:
        Private Sub Worksheet_SelectionChange(ByVal Target As Range)

           
        Dim rng As Range

           
        For Each rng In Target.Cells

              
        If rng.HasFormula Then

                 ActiveSheet
        .Protect

                 
        Exit Sub

              
        Else

                 
        ActiveSheet.Unprotect

              End 
        If

           
        Next rng

        End Sub 

        کامنت

        چند لحظه..