هزار و یک شب اکسل - شب چهل و یکم پیدا کردن محتوای اخرین سل توی محدوده Get contents of last cell in a range that has data in Excel

Collapse
X
 
  • زمان
  • نمایش
حذف همه
new posts
  • امين اسماعيلي
    مدير تالار ويژوال بيسيك

    • 2013/01/17
    • 1198
    • 84.00

    هزار و یک شب اکسل - شب چهل و یکم پیدا کردن محتوای اخرین سل توی محدوده Get contents of last cell in a range that has data in Excel

    Get contents of last cell in a range that has data in Excel
    با درود قصه امشبو با توجه به درخواست یکی از دوستان عزیز به مقوله ی محتوای اخرین سل در یک محدوده که شامل اطلاعات هستش میپردازیم
    فرمول هایی که در ادامه به انها میپردازیم در واقع یکم حقه چاشنیشون شده و بسته گی به نوع داده مون توی محدودمون داره .
    مورد اول داده های محدوده ما از نوع تکست باشند Data range is formatted as text :

    کد:
    =INDEX(range,MATCH(REPT("z",255),range))
    منظور از Range همان محدوده مورد نظرتون هستش که میخواین برسی و چکش کنین.
    فرضا اگر میخواین اخرین سل رو توی ستون A که حاوی تکست هستش رو پیدا کنین(عدد قاطیش باشه اون اخرین تکست رو پیدا میکنه) :

    کد:
    =INDEX(A:A,MATCH(REPT("z",255),A:A))
    اگر محدوده خاصی هم باشه فرقی نمیکنه مثلا :
    کد:
    =INDEX(C2:C10,MATCH(REPT("z",255),C2:C10))
    نوع دوم : محدوده ما از نوع عدد باشه Data range is formatted as numeric


    پیدا کردن اخرین عدد :
    کد:
    =INDEX(range,MATCH(9.99999999999999E+307,range))
    مثلا تو ستون A :
    کد:
    =INDEX(A:A,MATCH(9.99999999999999E+307,A:A))
    مورد سوم : شمل هم تکست باشه و هم عدد Data range contains both text and numeric :

    اگر محدوده شما شامل تکست و عدد بود و شما اخرین سل رو میخواین و براتون فرقی نمیکنه :
    کد:
    =INDEX(range,MAX(MATCH(9.99999999999999E+307,range),MATCH(REPT("z",255),range)))
    مثلا ستون A :
    کد:
    =INDEX(A:A,MAX(MATCH(9.99999999999999E+307,A:A),MATCH(REPT("z",255),A:A)))

    در موارد بالا محدوده هم میتونه باشه مثل همون C2:C10
    تو فرمول های بالا سل خالی تاثیری ندارد.

    شب همتون شیک و مجلسی - خوابای خوبی ببینین رنگی رنگی عزیزای دلم تا فردا همتون به خداوندگار ایران زمین میسپارم . راستی خوبی این فرمول ها این بود که سل خالی اگه داخل محدوده باشه گول نمیخوره . تکلیف شما :

    شما فرض کنین تو محدوده سل خالی نداریم حلا تو ستون با فرمول های دیگه ای اون اخری یا رو مثل من بدست بیارین. قبلناااااا یه فایل PDF گذاشته بودم که میتونست کمکتون کنه اما حالا خودتون دست به کار بشین . کمک و راهنمایی تابع CountA میتونه کمک باشه و Index.........
    در پناه خداوندگار ایران زمین باشید و پیروز
  • امين اسماعيلي
    مدير تالار ويژوال بيسيك

    • 2013/01/17
    • 1198
    • 84.00

    #2
    با درود
    تکلیف بعدی :

    توی یه ردیف اخرین سل مقدارش

    1- فرض بر این است که سل حاوی سل خالی نیست
    2- فرض کنید سل خای داره

    در ضمن گول نخورین فرمول های بالا رو اگه به کار ببرین باید حتما محدوده مشخص کنید یعنی a2:h2 مثلا تو ردیف 2
    در پناه خداوندگار ایران زمین باشید و پیروز

    کامنت

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

      • 2011/02/06
      • 1805
      • 74.00

      #3
      با سلام
      برای تکلیف اول :
      کد PHP:
      =index(a:a,counta(a:a)) 
      برای تکلیف دوم قسمت اول هم از فرمول بالا میشه استفاده کرد فقط به جای ستون سطر را وارد می کنیم
      مثلا برای ردیف 2
      کد PHP:
      =index(2:2,counta(2:2)) 
      Last edited by mokaram; 2014/04/28, 10:23.
      [CENTER][IMG]http://forum.exceliran.com/signaturepics/sigpic909_10.gif[/IMG]
      [/CENTER]

      کامنت

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

        • 2011/02/06
        • 1805
        • 74.00

        #4
        استاد فقط درباره قطعه کد زیر میشه یه توضیحی ارائه بدین ممنون
        کد PHP:
        match(rept("z",255),range
        [CENTER][IMG]http://forum.exceliran.com/signaturepics/sigpic909_10.gif[/IMG]
        [/CENTER]

        کامنت

        • khakzad

          • 2010/03/17
          • 2034
          • 85.00

          #5
          نوشته اصلی توسط M_R_M
          استاد فقط درباره قطعه کد زیر میشه یه توضیحی ارائه بدین ممنون
          کد PHP:
          match(rept("z",255),range
          با اجازه استاد اسماعیلی
          فکر کنم که چون z اخرین حرف انگلیسی هست. و هر سلول 255 کاراکتر بیشتر نم یگیره........ (یعنی z ، 255 بار تکرار بشه)........معادل میشه با اخرین حرف نوشته شده در محدوده. (اگر دقت کنید ارگومان اخر match هم نوشته نشده. یعنی مقدار مشابه رو میده

          اگر اشتباه می کنم، دوستان تصحیح کنن
          سپاس
          [CENTER][B][COLOR=#008000][SIZE=3]محصولات و جزوات آموزش تخصصی [URL="https://excelpedia.net/"]اکسل[/URL] در:

          [URL="https://excelpedia.net/category/excel-functions/"]برترین مرجع تخصصی پارسی اکسل[/URL]
          [URL="http://www.exceliran.com/shop/"]جامعه اكسل ايرانيان: فروشگاه[/URL][/SIZE][/COLOR][/B]
          :wcom:

          [B][URL="https://excelpedia.net/"]آموزش اکسل تخصصی[/URL] و [URL="https://excelpedia.net/excel-ninja/"]پیشرفته[/URL] - [URL="https://excelpedia.net/"]تهران[/URL][/B]
          [EMAIL="h.khakzad@yahoo.com"]h.khakzad@yahoo.com[/EMAIL]
          [/CENTER]

          کامنت

          • امين اسماعيلي
            مدير تالار ويژوال بيسيك

            • 2013/01/17
            • 1198
            • 84.00

            #6
            با درود خوب یکی نیومد محض دل ما ، یه جواب واسه تکلیف 2 قسمت دوم بده : با ا ینکه حالم خوب نیست و الکی خوشم خودم میدم . واسه اخرین مقدار تویه یه ردیف نثل 1 از فرمول ارایه ای زیر بدون اینکه اخرین ستون تو ردیف مشخص باشه استفاده کنین یادتونم باشه اگر محدوده مشخص باشه همه فرمول هایی که قبلا گفته شد تو ریف کاربرد دارند :
            کد:
            =indirect(address(1,max((1:1<>"")*column(1:1)),1))
            در پناه خداوندگار ایران زمین باشید و پیروز

            کامنت

            چند لحظه..