پرفروش ترين
برترين
آخرين محصولات فروشگاه
فایل الکترونیکی آموزش اکسل پیشرفته ۲۰۱۰
آموزش ایجاد فایل چندکاربره با سطح دسترسی مشخص
نمایش نتایج: از شماره 1 تا 9 , از مجموع 9

موضوع: ساده در مورد اسکرول شیت از طریق کد

  1. #1


    آخرین بازدید
    2020/10/03
    تاریخ عضویت
    June 2014
    محل سکونت
    در کنار یگانه دوست، در دیار اصفهان
    نوشته ها
    47
    امتیاز
    107
    سپاس
    70
    سپاس شده
    97 در 31 پست
    سطح اکسل
    61.00 %

    Juliet به Yahoo ارسال پیام

    ساده در مورد اسکرول شیت از طریق کد

    درود دوستان
    امید است که شاداب بوده باشید
    -----
    یک سؤال ساده دارم اما قبلش اجازه میخوام کلیتی از فایلم بگم که واضح تر باشه. من یه فرم خروجی یا در واقع فیلتر مقادیر از طریق ماکرو دارم که بر اساس مقادیری ورودی کاربر تعداد سطر هایی براش استخراج میشه در شیت خروجی. ولی بالاخره زمانی میرسه که این خروجی بسته میشه و خروجی بعدی شروع میشه. برای این هم دکمه ای گزاشتم که با تأیید کاربر مقادیر حذف میشن و شیت برای شروع خروجی جدید آماده میشه

    اینجا یه مشکل کوچیک دارم:::
    ممکنه من تو خروجی قبلی تا شماره سطر های سه رقمی هم رفته باشم پایین، نمیخوام دستی اسکرول شه بالا، یه خط کد میخوام که بزارم انتهای دکمه "Clear" و شیت رو اسرول کنه تا انتها بالا چون ممکنه طرف اد بزنه و حواسش به اسکرول نباشه دوباره بزنه یا فکر کنه مشکلی پیش اومده



    عجب!!! همین الان داشتم سؤالم مینوشتم متوجه شدم موقع گرفتن خروجی هم احتمالاً اسکرول به آخرین سلول صاحب مقادیر ندارم، اونم مرسی! :D
    اخطار: این یک موضوع قدیمی است
    به دلیل قدیمی بودن موضوع، ممکن است برخی فایل های ضمیمه به درستی کار نکنند. لطفا در صورت عدم ضرورت، از بالا آوردن موضوعات قدیمی خودداری نمایید.
    پاسخ مورد نظر براي اين تاپيك ارسال شده است.
    «زمانيکه با زمانه خويش نساختي و با مسندنشينان و امربران ايشان کنار نيامدي
    و آنچه را
    جاهلان ميگويند، جاهلانه باز نگفتي،
    لاجرم به تبعيد ابدي گرفتار خواهي شد!
    حتي اگر جسمت در کنج منزلي در شهري ساکن باشد؛
    و اگر بر نپذيرفتن، پاي فشردي،

    آواره ات خواهند کرد،
    به زندانت خواهند افکند
    و به دارت خواهند کشيد ...»

  2.  

  3. #2


    آخرین بازدید
    2022/06/26
    تاریخ عضویت
    January 2013
    محل سکونت
    شیراز
    نوشته ها
    1,199
    امتیاز
    3247
    سپاس
    1,570
    سپاس شده
    3,181 در 795 پست
    سطح اکسل
    84.00 %

    والا تو بگو من یه کلمه فهمیدم نفهمیدو ولی بزار ببینم منظورتون همینه ، شما شیت فیلترتون یه شیت خاص هست یا نه یعنی وقتی فیلتر میکنین اطلاعات به شیت خاصی فرستاده میشن ؟ من فک کنم شما در پیدا کردن اخرین ردف که اطلاعاتتون اونجا واردشده و میخوایین از بالا تا انتها که معلوم نیست کجاست پاک بشه اماده اطلاعات بعدی بشه اره؟
    در پناه خداوندگار ایران زمین باشید و پیروز

  4. سپاس ها (3)


  5. #3


    آخرین بازدید
    2020/10/03
    تاریخ عضویت
    June 2014
    محل سکونت
    در کنار یگانه دوست، در دیار اصفهان
    نوشته ها
    47
    امتیاز
    107
    سپاس
    70
    سپاس شده
    97 در 31 پست
    سطح اکسل
    61.00 %

    Juliet به Yahoo ارسال پیام
    عزیزمی نه! منو باش مثلا این همه توضیح دادم که واضح بشه برای کسی که سؤالم رو میخونه!!!!

    این "فیلتر" که گفتم منظورم اون ابزار فیلتر منوی دیتا نبود، از لجاظ مفهومی گفتم مقادیر خاصی از دل کل بیرون میاد. واضح ترش میکنم:::::


    • شیت 1: شش هزار و خرده ای سطر که فیلد اول هر سطر یه کد یونیک گزاشتم
    • شیت 2: مثلا یکی از امکاناتش این که کاربر میگه از این کد تا اون کد رو اطلاعاتش رو بهم بده، جستجو انجام میشه، مقادیر از شیت 1 کپی میشن و همه چی خوبه


    بعد از این داستان فرض کنیم رسیدیم به سطر 100، کاربر میخواد از نو سرچ کنه، قبلی ها رو هم کاری نداره، یه دکمه گزاشتم که این کار رو براش میکنه، همه چیزش خوبه جز اینکه وقتی پاک کرد، دوباره صفحه اسکرول نمیشه بالا، همون سطر 100 به بعد رو میبینه، و هر چند در اثر جستجوی جدیدی مثلا 20 سطر اول براش پر بشن

    میخوام با زدن دکمه ای که همه رو براش پاک میکنه صفحه اسکرول هم بشه، چون دستی ممکنه فراموش بشه، و فکر کنی سرچت بی جواب مونده

    امیدوارم این بار بهتر توضیح داده باشم، ضمن اینکه بابت توضیح دفعه قبل عذر میخوام
    «زمانيکه با زمانه خويش نساختي و با مسندنشينان و امربران ايشان کنار نيامدي
    و آنچه را
    جاهلان ميگويند، جاهلانه باز نگفتي،
    لاجرم به تبعيد ابدي گرفتار خواهي شد!
    حتي اگر جسمت در کنج منزلي در شهري ساکن باشد؛
    و اگر بر نپذيرفتن، پاي فشردي،

    آواره ات خواهند کرد،
    به زندانت خواهند افکند
    و به دارت خواهند کشيد ...»

  6. #4


    آخرین بازدید
    2023/04/24
    تاریخ عضویت
    April 2014
    محل سکونت
    كرج
    نوشته ها
    893
    امتیاز
    4534
    سپاس
    2,336
    سپاس شده
    2,918 در 802 پست
    سطح اکسل
    64.00 %

    نقل قول نوشته اصلی توسط Juliet نمایش پست ها
    عزیزمی نه! منو باش مثلا این همه توضیح دادم که واضح بشه برای کسی که سؤالم رو میخونه!!!!

    این "فیلتر" که گفتم منظورم اون ابزار فیلتر منوی دیتا نبود، از لجاظ مفهومی گفتم مقادیر خاصی از دل کل بیرون میاد. واضح ترش میکنم:::::


    • شیت 1: شش هزار و خرده ای سطر که فیلد اول هر سطر یه کد یونیک گزاشتم
    • شیت 2: مثلا یکی از امکاناتش این که کاربر میگه از این کد تا اون کد رو اطلاعاتش رو بهم بده، جستجو انجام میشه، مقادیر از شیت 1 کپی میشن و همه چی خوبه


    بعد از این داستان فرض کنیم رسیدیم به سطر 100، کاربر میخواد از نو سرچ کنه، قبلی ها رو هم کاری نداره، یه دکمه گزاشتم که این کار رو براش میکنه، همه چیزش خوبه جز اینکه وقتی پاک کرد، دوباره صفحه اسکرول نمیشه بالا، همون سطر 100 به بعد رو میبینه، و هر چند در اثر جستجوی جدیدی مثلا 20 سطر اول براش پر بشن

    میخوام با زدن دکمه ای که همه رو براش پاک میکنه صفحه اسکرول هم بشه، چون دستی ممکنه فراموش بشه، و فکر کنی سرچت بی جواب مونده

    امیدوارم این بار بهتر توضیح داده باشم، ضمن اینکه بابت توضیح دفعه قبل عذر میخوام
    سلام
    اگه درست متوجه شده باشم ، مشكل اينه كه بعد از فيلتر داده هاتون با كد vb اسكرولتون انقدر پايين مياد كه در صورت استفاده دوباره از اين كد ( دكمه ) اطلاعاتي كه در بالاي شيت فراخواني شده ديده نميشه .
    اگه دقيقا مشكلتون اين باشه ، خيلي راحت ميتونين تو آخر كد vb كه نوشتيد بزنيد
    کد PHP:
    Range("a1").Select 
    اينطوري اسكرول به اول صفحه بر ميگرده .


  7. #5


    آخرین بازدید
    2020/10/03
    تاریخ عضویت
    June 2014
    محل سکونت
    در کنار یگانه دوست، در دیار اصفهان
    نوشته ها
    47
    امتیاز
    107
    سپاس
    70
    سپاس شده
    97 در 31 پست
    سطح اکسل
    61.00 %

    Juliet به Yahoo ارسال پیام
    نقل قول نوشته اصلی توسط misammisam نمایش پست ها
    سلام
    اگه درست متوجه شده باشم ، مشكل اينه كه بعد از فيلتر داده هاتون با كد vb اسكرولتون انقدر پايين مياد كه در صورت استفاده دوباره از اين كد ( دكمه ) اطلاعاتي كه در بالاي شيت فراخواني شده ديده نميشه .
    اگه دقيقا مشكلتون اين باشه ، خيلي راحت ميتونين تو آخر كد vb كه نوشتيد بزنيد
    کد PHP:
    Range("a1").Select 
    اينطوري اسكرول به اول صفحه بر ميگرده .
    به جان خودم سراغ تابع Select رفتم، دقیقا نوشتم: Cells(3, 1).Select نمیدونم حواسم کجا بوده که فکر کردم کار نکرده، معذرت الکی وقتتون رو گرفتم.
    ولی خب، یه مورد دیگه مونده، وقتی مثلا 100 سطر اضافه میشه، همین بالا میمونه، چطوری میتونم آخرین سلول محتوا دار رو پیدا کنم با سلکت برم سراغش؟

    خیلی ممنون
    «زمانيکه با زمانه خويش نساختي و با مسندنشينان و امربران ايشان کنار نيامدي
    و آنچه را
    جاهلان ميگويند، جاهلانه باز نگفتي،
    لاجرم به تبعيد ابدي گرفتار خواهي شد!
    حتي اگر جسمت در کنج منزلي در شهري ساکن باشد؛
    و اگر بر نپذيرفتن، پاي فشردي،

    آواره ات خواهند کرد،
    به زندانت خواهند افکند
    و به دارت خواهند کشيد ...»

  8. #6


    آخرین بازدید
    2023/08/14
    تاریخ عضویت
    March 2010
    محل سکونت
    تهران
    نوشته ها
    2,039
    امتیاز
    4524
    سپاس
    2,507
    سپاس شده
    4,112 در 1,244 پست
    سطح اکسل
    85.00 %

    khakzad به Yahoo ارسال پیام
    سلام
    اخرین سل پر شده رو می تونید از طریق count و offset بدست بیارید.:
    کد:
    range("a1").offset(worksheetfunction.count(range("a1:a100000")),0).select
    [/CODE]
    همچنین کد زیر هم اخرین سل پر شده رو به شرط عدم وجود انفصال بین داده ها بهتون میده!

    کد:
    range("a1").End(xlUp)

  9. سپاس ها (2)


  10. #7


    آخرین بازدید
    2023/04/24
    تاریخ عضویت
    April 2014
    محل سکونت
    كرج
    نوشته ها
    893
    امتیاز
    4534
    سپاس
    2,336
    سپاس شده
    2,918 در 802 پست
    سطح اکسل
    64.00 %

    رديف آخرين سلول فعال رو در متغير lastrow ذخيره ميكنه .
    کد PHP:
    lastrow = .Cells.Find("*"SearchOrder:=xlByRowsSearchDirection:=xlPrevious).Row 
    در اين مورد آقاي اسمائيلي خيلي مطلب گذاشتن ، lastrow رو سرچ كنيد تا اطلاعات بيشتري در اين مورد كسب كنيد.


  11. #8


    آخرین بازدید
    2020/10/03
    تاریخ عضویت
    June 2014
    محل سکونت
    در کنار یگانه دوست، در دیار اصفهان
    نوشته ها
    47
    امتیاز
    107
    سپاس
    70
    سپاس شده
    97 در 31 پست
    سطح اکسل
    61.00 %

    Juliet به Yahoo ارسال پیام
    نقل قول نوشته اصلی توسط khakzad نمایش پست ها
    سلام
    اخرین سل پر شده رو می تونید از طریق count و offset بدست بیارید.:
    کد:
    range("a1").offset(worksheetfunction.count(range("a1:a100000")),0).select
    [/CODE]
    همچنین کد زیر هم اخرین سل پر شده رو به شرط عدم وجود انفصال بین داده ها بهتون میده!

    کد:
    range("a1").End(xlUp)
    درود بزرگوار
    نمیدونم اشکال کارم کجاست اما سطر دوم روی .End خطای کامپایل Invalid Use of Property میده،

    اما سطر دوم رو روی یک فایل خالی که از عدد 1 تا 600 یه سری عددی ساده ستون آ زده بودم امتحان کردم، کامل و بی اشکال بهم ج میداد، اما روی فایل اصلی - که البته سطر ها پیوسته نیستن و سطور خالی برای تفکیک گروه های مقادیر دارم، درست ج نمیده، مثلا وقتی حدود 200 سطر اضافه میشه میره روی سطر 100، بعد که حدود 400 سطر اضافه میکنم میره حدود 150!

    اما به هر صورت از شما سپاس گزارم، لطف کردین وقت گزاشتین
    «زمانيکه با زمانه خويش نساختي و با مسندنشينان و امربران ايشان کنار نيامدي
    و آنچه را
    جاهلان ميگويند، جاهلانه باز نگفتي،
    لاجرم به تبعيد ابدي گرفتار خواهي شد!
    حتي اگر جسمت در کنج منزلي در شهري ساکن باشد؛
    و اگر بر نپذيرفتن، پاي فشردي،

    آواره ات خواهند کرد،
    به زندانت خواهند افکند
    و به دارت خواهند کشيد ...»

  12. #9


    آخرین بازدید
    2020/10/03
    تاریخ عضویت
    June 2014
    محل سکونت
    در کنار یگانه دوست، در دیار اصفهان
    نوشته ها
    47
    امتیاز
    107
    سپاس
    70
    سپاس شده
    97 در 31 پست
    سطح اکسل
    61.00 %

    Juliet به Yahoo ارسال پیام
    نقل قول نوشته اصلی توسط misammisam نمایش پست ها
    رديف آخرين سلول فعال رو در متغير lastrow ذخيره ميكنه .
    کد PHP:
    lastrow = .Cells.Find("*"SearchOrder:=xlByRowsSearchDirection:=xlPrevious).Row 
    در اين مورد آقاي اسمائيلي خيلي مطلب گذاشتن ، lastrow رو سرچ كنيد تا اطلاعات بيشتري در اين مورد كسب كنيد.
    درود و سپاس بیحد از شما، آقای اسماعیلی . دیگر دوستان که محبت کردن و وقت گزاشتن
    چشم، حتماً دنبال اون مباحث میرم

    پاینده باشید




    ضمناً همین جا، خودم، تبدیل شدن خودم رو از تازه وارد به کاربر سایت به خودم تبریک میگم!!!

    نیومده عاشق اینجا شدم، خدا واسه همه نگهش داره
    «زمانيکه با زمانه خويش نساختي و با مسندنشينان و امربران ايشان کنار نيامدي
    و آنچه را
    جاهلان ميگويند، جاهلانه باز نگفتي،
    لاجرم به تبعيد ابدي گرفتار خواهي شد!
    حتي اگر جسمت در کنج منزلي در شهري ساکن باشد؛
    و اگر بر نپذيرفتن، پاي فشردي،

    آواره ات خواهند کرد،
    به زندانت خواهند افکند
    و به دارت خواهند کشيد ...»



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

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

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

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

  1. Create a summary worksheet from all worksheets (جمع کردن اطلاعات تمامی شیت ها در یک شیت)
    توسط امين اسماعيلي در انجمن سوالات پیرامون ويژوال بيسيك - VBA Questions
    پاسخ ها: 2
    آخرين نوشته: 2016/06/15, 18:35
  2. پاسخ ها: 6
    آخرين نوشته: 2016/05/24, 11:54
  3. پاسخ ها: 2
    آخرين نوشته: 2014/01/09, 14:45

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

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

کلمات کلیدی این موضوع

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

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

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