جایگزینی برای end(xldown)

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

    • 2011/12/07
    • 272

    جایگزینی برای end(xldown)

    سلام به دوستای گلم
    تو ماکرو ها برای تشخیص آخرین سطر معمولا از end(xldown) استفاده میشه ولی ایراد این روش اینه که که فقط مقدار سل رو در نظر نمیگیره حتی اگه رنگ یا فرمت سل هم تغییر کنه به عنوان اخرین سل پرشده میشناسه ایا روشی هست که فقط سلی که توش مقدار باشه به عنوان آخرین سل پرشده بشناسه؟
    [color=#FF0000]در روزگاری که لبخند ادمها بخاطر شکست توست برخیز تا بگریند[/color]
  • Javid Mokhtari
    مدير تالار ويژوال بيسيك

    • 2012/01/16
    • 1212
    • 73.00

    #2
    RE: جایگزینی برای end(xldown)

    نوشته اصلی توسط mahasa shayesteh
    سلام به دوستای گلم
    تو ماکرو ها برای تشخیص آ---ین سطر معمولا از end(xldown) استفاده میشه ولی ایراد این روش اینه که که فقط مقدار سل رو در نظر نمیگیره حتی اگه رنگ یا فرمت سل هم تغییر کنه به عنوان ا---ین سل پرشده میشناسه ایا روشی هست که فقط سلی که توش مقدار باشه به عنوان آ---ین سل پرشده بشناسه؟
    اما این عمل تو Used Range انجام میشه.یه بار دیگه امتحان کنید...
    با شرط گذاری برای انتخاب هم میشه انجام داد.
    [FONT=Tahoma][INDENT][CENTER][SIZE=3][FONT=courier new][B][FONT=comic sans ms][SIZE=3][FONT=arial]دوره های آموزش رایگان اکسل از صفر تا پیشرفته بصورت تصویری
    بیش از [COLOR=#008000]60[/COLOR] جلسه آموزش ویدئویی رایگان

    شرکت در دوره:
    [/FONT][/SIZE]
    [SIZE=5] [FONT=Tahoma][FONT=courier new][B][URL]https://javidsoft.ir/courses/[/URL][/B][/FONT][/FONT][/SIZE][/FONT]
    [/B][/FONT][/SIZE]
    [/CENTER]
    [/INDENT]
    [/FONT]

    کامنت

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

      #3
      RE: جایگزینی برای end(xldown)

      سلام
      همونطور که دوست عزیزم آقا جاوید فرمودن در used range استفاده میشه ولی اینکه حتی تغییر فرمت سل تو دستور تاثیر داره جواب مثبته این اتفاق میفته من خودم همیشه از یک تابع برای اینکار استفاده میکنم تو اخرین برنامه ای که خدمت شما ارائه شد اگه بخش ماکرو ها رو نگاه کنین من از تابع lastrow استفاده کردم
      [CENTER]
      [SIGPIC][/SIGPIC]
      [/CENTER]

      کامنت

      • mahsa shayesteh

        • 2011/12/07
        • 272

        #4
        RE: جایگزینی برای end(xldown)

        مرسی ، بله اونو متوجه شدم ولی خواستم ببینم راهی هست بدون ایجاد حلقه و کاهش سرعت برنامه اخرین ردیف رو شناسایی کرد؟
        [color=#FF0000]در روزگاری که لبخند ادمها بخاطر شکست توست برخیز تا بگریند[/color]

        کامنت

        • khakzad

          • 2010/03/17
          • 2034
          • 85.00

          #5
          RE: جایگزینی برای end(xldown)

          سلام مهساجان
          فکر کنم count سل هاي پر رو داشته باشي و بعد هر دفعه بجاي end(xldown) از offset اين تعداد استفاده کني جواب بگيري
          [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]

          کامنت

          • mahsa shayesteh

            • 2011/12/07
            • 272

            #6
            RE: جایگزینی برای end(xldown)

            سلام
            مرسی حسنا جون
            ولی برای اون count هم بلاخره باید بدونه تا کجارو باید بشمره یا منظورت اینه که من یه کانتر بذارم برای هر رکورد ثبت شده؟
            [color=#FF0000]در روزگاری که لبخند ادمها بخاطر شکست توست برخیز تا بگریند[/color]

            کامنت

            • khakzad

              • 2010/03/17
              • 2034
              • 85.00

              #7
              RE: جایگزینی برای end(xldown)

              انجامش ندادذم.فقط به ذهنم رسيده که ميشه....
              مثلا ما مي خوايم توي ستون a اخرين رديف پر رو پيدا کنيم.
              اگه count(a:A) رو بريزيم توي متغير
              بعد بجاي range(a1).end(xldpwn) مي زنيم range(a1).offset(.....)i
              نميشه اينطوري؟؟
              [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]

              کامنت

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

                #8
                RE: جایگزینی برای end(xldown)

                سلام
                جالب بود فک کنم با application.worksheetsfunction.counta() استفاده کنید بهتره
                [CENTER]
                [SIGPIC][/SIGPIC]
                [/CENTER]

                کامنت

                • khakzad

                  • 2010/03/17
                  • 2034
                  • 85.00

                  #9
                  RE: جایگزینی برای end(xldown)

                  اره ديگه.مستقيم استفاده کنيم اين ميشه.اگر هم توي متغير بريزيم همون قبلي.که در واقع عين هم هستن[hr]
                  اره ديگه.مستقيم استفاده کنيم اين ميشه.اگر هم توي متغير بريزيم همون قبلي.که در واقع عين هم هستن
                  [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]

                  کامنت

                  • mahsa shayesteh

                    • 2011/12/07
                    • 272

                    #10
                    RE: جایگزینی برای end(xldown)

                    مرسی از دوستان منم معتقدم جواب میده خیلی جالب بود
                    [color=#FF0000]در روزگاری که لبخند ادمها بخاطر شکست توست برخیز تا بگریند[/color]

                    کامنت

                    • daghyad

                      • 2012/03/30
                      • 117

                      #11
                      RE: جایگزینی برای end(xldown)

                      میشه با دستور (مثلا اخرین سطر حاوی داده در ستون a)
                      کد PHP:
                      dim r as long
                      r
                      =cells(rows.count,"a").end(xlup).row 
                      شماره اخرین سطر حاوی داده را پیدا کرد
                      و بعد یه دیتابیس set کرد و با for eachتوی این دیتا بیس پیمایش انجام داد
                      کد PHP:
                      dim mydatabase as range
                      set mydatabase 
                      =sheet1.range("a1:g" r
                      و بعد نوشت
                      کد PHP:
                      for each c in mydatabase
                      if c....then 
                      برای پیدا کردن اخرین ستون حاوی داده توی سطر دوم می نویسیم:
                      کد PHP:
                      Sub LastColumnWithData_xlToLeft()


                      Dim lastColumn As Integer


                      lastColumn 
                      ActiveSheet.Cells(2Columns.Count).End(xlToLeft).Column


                      MsgBox lastColumn

                       

                      End Sub 

                      کامنت

                      چند لحظه..