نمایش نتایج: از شماره 1 تا 6 , از مجموع 6

موضوع: range یک محدوه با کلیک

  1. #1


    آخرین بازدید
    2023/12/21
    تاریخ عضویت
    June 2012
    نوشته ها
    111
    امتیاز
    20
    سپاس
    30
    سپاس شده
    20 در 13 پست
    تعیین سطح نشده است

    range یک محدوه با کلیک

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

    توضیحات بیشتر :
    کاربر با filter کردن یک سلول را انتخاب می نماید . سپس با اجرای ماژول می بایست اطلاعات درج شده در آن ردیف (?b?:m)را به انتهای شیت اول منتقل نماید
    اخطار: این یک موضوع قدیمی است
    به دلیل قدیمی بودن موضوع، ممکن است برخی فایل های ضمیمه به درستی کار نکنند. لطفا در صورت عدم ضرورت، از بالا آوردن موضوعات قدیمی خودداری نمایید.
    پاسخ مورد نظر براي اين تاپيك ارسال شده است.

  2.  

  3. #2


    آخرین بازدید
    19 ساعت پیش
    تاریخ عضویت
    September 2013
    محل سکونت
    بچه محل آقا امام رضا
    نوشته ها
    4,472
    امتیاز
    12316
    سپاس
    8,923
    سپاس شده
    10,587 در 3,746 پست
    سطح اکسل
    100.00 %

    نقل قول نوشته اصلی توسط khorasan66 نمایش پست ها
    فایلی دارای دو شیت می باشد
    هر سلول از شیت دوم که در حال انتخاب باشد به عنوان مثال سلول g10 ناحیه b10:m10 کپی شده و در آخرین ردیف شیت اول جایگزین شود .

    توضیحات بیشتر :
    کاربر با filter کردن یک سلول را انتخاب می نماید . سپس با اجرای ماژول می بایست اطلاعات درج شده در آن ردیف (?b?:m)را به انتهای شیت اول منتقل نماید

    سلام
    دوست عزيز اين رو تو بخش كد نويسي شيت اول قرار بدين. روي شيت راست كليك كنيد و گزينه view code رو بزنين
    کد PHP:
    Private Sub Worksheet_SelectionChange(ByVal Target As Range)
        
    Sheet2.Cells(Rows.Count"A").End(xlUp).Row
        R 
    Range(Target.Address).Row
        Range
    ("B" ":M" R).Copy Destination:=Sheet2.Range("A" 1)
    End Sub 
    اين كد رو به كمك استاد اسماعيلي عزيز نوشتم. سعي شده كوتاه، ساده و سريع باشه
    ویرایش توسط Amir Ghasemiyan : 2015/08/24 در ساعت 19:22


  4. #3


    آخرین بازدید
    2023/12/21
    تاریخ عضویت
    June 2012
    نوشته ها
    111
    امتیاز
    20
    سپاس
    30
    سپاس شده
    20 در 13 پست
    تعیین سطح نشده است

    با سلام و تشکر دستور فوق را انجام دادم و صحیح بود
    با توجه به اینکه هر کلیکی که در صفحه انجام شود ماژول اجرا می شود ،باعث بروز خطاهای متعدد می گردد لذا خواهشمند است :
    دستور به گونه ای باشد که کاربر پس از انتخاب سلول ، خودش بتواند ماژول را اجرا نماید .
    با تشکر فراوان از تمامی دوستان و اساتید ارجمند.

  5. #4


    آخرین بازدید
    19 ساعت پیش
    تاریخ عضویت
    September 2013
    محل سکونت
    بچه محل آقا امام رضا
    نوشته ها
    4,472
    امتیاز
    12316
    سپاس
    8,923
    سپاس شده
    10,587 در 3,746 پست
    سطح اکسل
    100.00 %

    نقل قول نوشته اصلی توسط khorasan66 نمایش پست ها
    با سلام و تشکر دستور فوق را انجام دادم و صحیح بود
    با توجه به اینکه هر کلیکی که در صفحه انجام شود ماژول اجرا می شود ،باعث بروز خطاهای متعدد می گردد لذا خواهشمند است :
    دستور به گونه ای باشد که کاربر پس از انتخاب سلول ، خودش بتواند ماژول را اجرا نماید .
    با تشکر فراوان از تمامی دوستان و اساتید ارجمند.

    ميخواستم اين رو بهتون هشدار بدم ولي يادم رفت. بله اينطوري سرعت برنامه به شدت افت پيدا ميكنه
    خب من كد رو براتون اصلاح كردم. اين رو داخل يك ماژول قرار بدين و يك دكمه تعريف كنيد كه اين ماژول رو فراخواني كنه
    کد:
    Sub sabt()
        target = ActiveCell.Address
        L = Sheet2.Cells(Rows.Count, "A").End(xlUp).Row
        R = Range(target).Row
        Range("B" & R & ":M" & R).Copy Destination:=Sheet2.Range("A" & L + 1)
    End Sub


  6. #5


    آخرین بازدید
    2023/12/21
    تاریخ عضویت
    June 2012
    نوشته ها
    111
    امتیاز
    20
    سپاس
    30
    سپاس شده
    20 در 13 پست
    تعیین سطح نشده است

    ضمن تشکر از شما ، خودم هم با کد زیر به یک نتیجه مطلوبی رسیدم البته خیلی ماهرانه نیست :
    Sheet1.Range(Sheet1.Range("A2").End(xlDown).Offset (1, 0), Sheet1.Range("A2").End(xlDown).Offset(1, 8)) = Sheet2.Range("B" & (ActiveCell.Row) & ":J" & (ActiveCell.Row)).Value

  7. سپاس ها (1)


  8. #6


    آخرین بازدید
    2024/03/15
    تاریخ عضویت
    June 2012
    نوشته ها
    698
    امتیاز
    4179
    سپاس
    625
    سپاس شده
    1,970 در 623 پست
    تعیین سطح نشده است

    با سلام

    ضمن تشکر از دوست خوبم جناب آقای قاسمیان و کسب اجازه از ایشان

    با مقداری تغییر در کد ایشان مشکل کپی شدن داده های ناخواسته حل میشود.

    در دستور زیر در صورتیکه در هر یک از خانه های ستون A کلیک کنید مقدار مربوطه در شیت دو کپی میشود و برای جابجایی و حرکت میتوانید از دیگر ستونها استفاده نمایید.

    کد:
    Private Sub Worksheet_SelectionChange(ByVal Target As Range)
      
       mm = Split(Target.Address, "$")(1)
      If mm <> "A" Then
      Exit Sub
      Else
       L = Sheet2.Cells(Rows.Count, "A").End(xlUp).Row
        R = Range(Target.Address).Row
      
        
        Range("B" & R & ":M" & R).Copy Destination:=Sheet2.Range("A" & L + 1)
    End If
    End Sub
    با تشکر میر



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

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

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

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

  1. انتخاب سلول ها در Range
    توسط hfml در انجمن سوالات پیرامون ويژوال بيسيك - VBA Questions
    پاسخ ها: 2
    آخرين نوشته: 2015/04/18, 00:37
  2. [حل شده] نشان دادن شماره سطر چندین Range در چندین سلول
    توسط sabertb در انجمن خطاها در ويژوال بيسيك - Errors in VBA
    پاسخ ها: 1
    آخرين نوشته: 2014/10/16, 11:27
  3. حاصل جمع 2 شرط با range های متفاوت !؟
    توسط sabertb در انجمن توابع اکسل - Excel Functions
    پاسخ ها: 4
    آخرين نوشته: 2014/05/11, 16:08
  4. Dynamic Named Range
    توسط mina_afshar67 در انجمن سوالات اكسل - Excel Questions
    پاسخ ها: 1
    آخرين نوشته: 2013/03/17, 16:58
  5. در خواست راهنمائی در تغییر Range
    توسط Nima در انجمن سوالات پیرامون ويژوال بيسيك - VBA Questions
    پاسخ ها: 5
    آخرين نوشته: 2012/07/25, 15:18

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

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

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

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

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

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