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

موضوع: کپی یک محدوده در سطر با vba

  1. #1


    آخرین بازدید
    2024/02/18
    تاریخ عضویت
    February 2014
    محل سکونت
    تهران
    نوشته ها
    523
    امتیاز
    1130
    سپاس
    2,816
    سپاس شده
    1,050 در 348 پست
    سطح اکسل
    51.00 %

    علی فاطمی به Yahoo ارسال پیام

    کپی یک محدوده در سطر با vba

    عرض سلام خدمت همه عزیران
    لطفا به دستور زیر توجه بفرمایید :


    Sub Row()
    Dim lastrowair As Long, lastcolumnair As Long
    lastrowair = Sheet3.Cells(Rows.Count, 1).End(xlUp).Row
    For i = 2 To lastrowair
    If Sheet3.Cells(i, 1) = Sheet2.Range("B2") Then

    در شیت 2 سلول b2 یک لیست از ستون A در شیت 3 تعریف کردم که حاوی یه سری کد محصول می باشد .
    با انتخاب کد محصول در این لیست و دستور فوق اکسل تو شیت3 و ستون A می گرده و کد محصول رو پیدا می کنه ( مثلا من کد M144T رو می دم که در ردیف 4 ستون قرارداره)
    حالا با این دستور میره و آخرین رکورد اون کد محصول رو در سطر روبروی خودش رو هم پیدا می کنه.

    lastcolumnair = Sheet3.Cells(i, Columns.Count).End(xlToLeft).Column


    من می خوام دستوری بنویسم که اطلاعات اون سطر رو کپی کنم.
    با دستور زیر میشه کل سطر رو کپی کرد :
    Sheet3.Cells(i, 2).EntireRow.Copy

    ولی من می خوام فقط محدوده ای که اطلاعات وجود داره رو کپی کنه . ( توی مثال بالا میشه ردیف 4 از ستون دومش تا ستون 64 )

    لطفا راهنمایی بفرمایید .

    متاسفانه چند روزه اصلا نمی دونم چرا نمیشه فایل آپلود کرد .

    با سپاس فراوان




    در دنیا فقط یک نفر وجود دارد که باید از او بهتر باشید و آن کسی نیست جز گذشته خودتان




  2.  

  3. #2


    آخرین بازدید
    4 روز پیش
    تاریخ عضویت
    November 2013
    محل سکونت
    تهران
    نوشته ها
    1,518
    امتیاز
    6118
    سپاس
    2,884
    سپاس شده
    4,886 در 1,380 پست
    سطح اکسل
    71.67 %

    سلام علي آقاي گل،
    البته چون فايل نشده آپلود کنيد يک کم فهميدن مطلب سخته ولي ببينيد به جاي Sheet3.Cells(i, 2).EntireRow.Copy اگر از کد زير استفاده کنيد درست ميشه؟

    کد PHP:
    Sheet3.Range(Cells(i2), Cells(i2).End(xlToRight)).Copy 


  4. #3


    آخرین بازدید
    2024/02/18
    تاریخ عضویت
    February 2014
    محل سکونت
    تهران
    نوشته ها
    523
    امتیاز
    1130
    سپاس
    2,816
    سپاس شده
    1,050 در 348 پست
    سطح اکسل
    51.00 %

    علی فاطمی به Yahoo ارسال پیام
    نقل قول نوشته اصلی توسط Ali Parsaei نمایش پست ها
    سلام علي آقاي گل،
    البته چون فايل نشده آپلود کنيد يک کم فهميدن مطلب سخته ولي ببينيد به جاي Sheet3.Cells(i, 2).EntireRow.Copy اگر از کد زير استفاده کنيد درست ميشه؟

    کد PHP:
    Sheet3.Range(Cells(i2), Cells(i2).End(xlToRight)).Copy 
    جناب پارسایی عزیز سلام وقت شما بخیر
    ممنون از توجه شما .
    ولی همچنان جواب نگرفتم.
    برای دیدن سایز بزرگ روی عکس کلیک کنید

نام:  نمونه.jpg
مشاهده: 10
حجم:  155.0 کیلو بایتبرای دیدن سایز بزرگ روی عکس کلیک کنید

نام:  نمونه 2.jpg
مشاهده: 8
حجم:  369.4 کیلو بایت

    Sub copyrows2()
    Dim lastrowair As Long, lastcolumnair As Long
    lastrowair = Sheet3.Cells(Rows.Count, 1).End(xlUp).Row
    For i = 2 To lastrowair
    If Sheet3.Cells(i, 1) = Sheet2.Range("B2") Then


    lastcolumnair = Sheet3.Cells(i, Columns.Count).End(xlToLeft).Column


    Sheet3.Range(Cells(i, 2), Cells(i, 2).End(xlToRight)).Copy


    Sheet1.Range("c4").PasteSpecial Paste:=xlPasteAll, Operation:=xlNone, SkipBlanks:= _
    False, Transpose:=True


    End If


    Next i


    Sheets("Sheet2").Select


    End Sub



    ویرایش توسط علی فاطمی : 2023/02/20 در ساعت 08:01
    در دنیا فقط یک نفر وجود دارد که باید از او بهتر باشید و آن کسی نیست جز گذشته خودتان




  5. سپاس ها (1)


  6. #4


    آخرین بازدید
    2024/02/18
    تاریخ عضویت
    February 2014
    محل سکونت
    تهران
    نوشته ها
    523
    امتیاز
    1130
    سپاس
    2,816
    سپاس شده
    1,050 در 348 پست
    سطح اکسل
    51.00 %

    علی فاطمی به Yahoo ارسال پیام
    عرض سلام خدمت همه عزیزان
    و تشکر ویژه از استاد علی پارسایی عزیز
    من مشکلم رو به صورت زیر حل کردیم


    کد:
    Sub copyrows2()
    
    
    Dim lastrowair As Long, lastcolumnair As Long
    Dim aaa As String
    lastrowair = Sheet3.Cells(Rows.Count, 1).End(xlUp).Row
    For i = 2 To lastrowair
    If Sheet3.Cells(i, 1) = Sheet2.Range("B2") Then
    
    
    lastcolumnair = Sheet3.Cells(i, Columns.Count).End(xlToLeft).Column
    
    
    aaa = Split(Cells(i, lastcolumnair).Address, "$")(1)
    Sheet3.Range("B" & i & ":" & aaa & i).Copy
    Sheet1.Range("c5").PasteSpecial Paste:=xlPasteAll, Operation:=xlNone, SkipBlanks:= _
            False, Transpose:=True
    
    
    End If
    
    
    Next i
    
    
    Sheets("Sheet2").Select
    
    
    
    
    End Sub

    امیدوارم برای کس دیگه ای هم مفید باشه .
    در دنیا فقط یک نفر وجود دارد که باید از او بهتر باشید و آن کسی نیست جز گذشته خودتان






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

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

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

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

  1. پرسش مشکل کپی شدن تغییرات فایل کپی در تمامی فایل های اصلی
    توسط mohaddesedanesh در انجمن سوالات اكسل - Excel Questions
    پاسخ ها: 1
    آخرين نوشته: 2021/04/29, 11:24
  2. پرسش چرا بعد از کپی یا کات و پیست، وقتی مبدأ را پاک میکنم، رنج کپی شده هم پاک می شود؟
    توسط karbar در انجمن خطاها در ويژوال بيسيك - Errors in VBA
    پاسخ ها: 3
    آخرين نوشته: 2020/02/13, 08:39
  3. پرسش پی دی اف گرفتن از 6 شیت با زدن یک کیلد(6 فایل پی دی اف جداگانه)
    توسط احسان رنجبر در انجمن توابع اکسل - Excel Functions
    پاسخ ها: 2
    آخرين نوشته: 2019/10/29, 14:34
  4. [حل شده] کپی متن از لیست باکس به شبت و مرج ستون اول مربوط به داده های کپی شده
    توسط ali.b در انجمن سوالات پیرامون ويژوال بيسيك - VBA Questions
    پاسخ ها: 1
    آخرين نوشته: 2017/10/22, 23:51
  5. پاسخ ها: 5
    آخرين نوشته: 2017/06/11, 13:33

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

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

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

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

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