İpucu: Digər dillər Google-tərcümə olunur. Sizi ziyarət edə bilərsiniz English bu linkin versiyası.
Daxil ol
x
or
x
x
Qeydiyyatdan
x

or

Bütün satırı Excel-də hüceyrə dəyərinə əsasən başqa bir hesabata necə daşımaq olar?

Bütün satırı mobil qiymətə əsaslanan başqa bir hesabata keçmək üçün bu maddə sizə kömək edəcəkdir.

Bütün satırı VBA kodu ilə hücum dəyərinə əsaslanaraq başqa bir hesabata keçin

Bütün satırı Excel üçün Kutools ilə hücum dəyəri əsasında başqa bir hesabata daşıyın


Sertifikat sütununda hüceyrə dəyərinə əsasən asanlıqla bütün satırları seçin:

The Xüsusi Hüceyrələri seçin faydası Excel üçün Kutools Excel ekranındakı bir sertifikat sütununda hüceyrə dəyərinə əsasən bütün satırları tez bir şəkildə seçdiyiniz ekran görüntüsünü seçməyinizə kömək edə bilər. Cell dəyərinə əsaslanan bütün satırları seçdikdən sonra əl ilə köçürə və ya Excel-də lazım olduğu kimi yeni bir yerə kopyalaya bilərsiniz.

Excel üçün Kutools: 200 gündə heç bir məhdudiyyət olmadan 60-dən çox lazımlı Excel eklentisi ilə pulsuzdur. İndi pulsuz sınaq yükləyin!


Bütün satırı VBA kodu ilə hücum dəyərinə əsaslanaraq başqa bir hesabata keçin


Aşağıda göstərilən ekran göründüyü kimi Sheet1-dən Sheet2-a bütün satırı SheetXNUMX-a daşımaq lazımdır. Sütunda "Bitti" xüsusi bir söz var. Aşağıdakı VBA kodunu sınamalısınız.

1. Basın Dayandırmaq+ F11 açmaq üçün eyni anda düymələri Proqramlar üçün Microsoft Visual Basic pəncərə.

2. Microsoft Visual Basic for Applications proqramı penceresinde, basın Taxmaq > Modules. Sonra aşağıdakı VBA kodunu pəncərəyə kopyalayıb yapışdırın.

VBA kodu 1: Bütün satırı cell dəyərinə əsasən başqa bir hesabata keçin

Sub Cheezy()
'Updated by Kutools for Excel 2017/8/28
    Dim xRg As Range
    Dim xCell As Range
    Dim I As Long
    Dim J As Long
    Dim K As Long
    I = Worksheets("Sheet1").UsedRange.Rows.Count
    J = Worksheets("Sheet2").UsedRange.Rows.Count
    If J = 1 Then
       If Application.WorksheetFunction.CountA(Worksheets("Sheet2").UsedRange) = 0 Then J = 0
    End If
    Set xRg = Worksheets("Sheet1").Range("C1:C" & I)
    On Error Resume Next
    Application.ScreenUpdating = False
    For K = 1 To xRg.Count
        If CStr(xRg(K).Value) = "Done" Then
            xRg(K).EntireRow.Copy Destination:=Worksheets("Sheet2").Range("A" & J + 1)
            xRg(K).EntireRow.Delete
            If CStr(xRg(K).Value) = "Done" Then
                K = K - 1
            End If
            J = J + 1
        End If
    Next
    Application.ScreenUpdating = True
End Sub

Qeyd: Kodda, Sheet1 iş səhifəsində hərəkət etmək istədiyiniz satırı ehtiva edir. Və Sheet2 satırı tapmaq üçün təyinat iş səhifəsidir. ""C: C"Sütun müəyyən dəyəri və sözü"Done"Əsasən satırı hərəkət edəcək müəyyən dəyərdir. Xahiş edirik ehtiyaclarınıza uyğun olaraq onları dəyişdirin.

3. Basın F5 kodu açmaq üçün açar, sonra Sheet1-da meyarlara cavab verən satır dərhal Sheet2-a köçürülür.

Qeyd: Yuxarıda göstərilən VBA kodu müəyyən bir işə keçdikdən sonra orijinal məlumatdan satırları silməyəcək. Yalnız bunları silmək əvəzinə cell dəyərinə əsaslanan satırları kopyalamaq istəyirsinizsə. Aşağıdakı VBA kodunu 2 tətbiq edin.

VBA kodu 2: Bütün satırı mobil qiymətə əsasən başqa bir hesabata kopyalayın

Sub MoveRowBasedOnCellValue()
'Updated by Extendoffice 2017/11/10
    Dim xRg As Range
    Dim xCell As Range
    Dim I As Long
    Dim J As Long
    Dim K As Long
    I = Worksheets("Sheet1").UsedRange.Rows.Count
    J = Worksheets("Sheet2").UsedRange.Rows.Count
    If J = 1 Then
    If Application.WorksheetFunction.CountA(Worksheets("Sheet2").UsedRange) = 0 Then J = 0
    End If
    Set xRg = Worksheets("Sheet1").Range("C1:C" & I)
    On Error Resume Next
    Application.ScreenUpdating = False
    For K = 1 To xRg.Count
        If CStr(xRg(K).Value) = "Done" Then
            xRg(K).EntireRow.Copy Destination:=Worksheets("Sheet2").Range("A" & J + 1)
            J = J + 1
        End If
    Next
    Application.ScreenUpdating = True
End Sub

Bütün satırı Excel üçün Kutools ilə hücum dəyəri əsasında başqa bir hesabata daşıyın

Əgər siz VBA kodunda yenilik edirsinizsə. Burada təqdim edirəm Xüsusi Hüceyrələri seçin faydası Excel üçün Kutools. Bu yardım proqramı ilə, bir iş yerində müəyyən bir hüceyrə dəyərinə və ya fərqli hüceyrə dəyərlərinə əsaslanan bütün satırları asanlıqla seçə bilərsiniz və seçilmiş satırları istədiyiniz iş yerinə nüsxə edə bilərsiniz. Xahiş edirik bunu edin.

Excel üçün Kutools : 300 gündə heç bir məhdudiyyət olmadan 60-dən çox lazımlı Excel eklentisi ilə pulsuzdur.

1. Sütun siyahısına əsaslanan satırları hərəkətə keçirən hücum dəyərini seçin və sonra basın Kutools > seçmək > Xüsusi Hüceyrələri seçin. Ekran görüntüsünə baxın:

2. Açılışda Xüsusi Hüceyrələri seçin dialoq qutusunu seçin Bütün satır ci Seçim növü bölümünü seçin bərabər ci Xüsusi tip açılan siyahıdan, mətn qutusuna hücum dəyərini daxil edin və sonra basın OK düyməsini basın.

Digər Xüsusi Hüceyrələri seçin informasiya qutusu seçilmiş satırların sayını göstərmək üçün açılır və eyni zamanda, seçilmiş sütunda göstərilən dəyəri olan bütün satırlar seçilmişdir. Ekran görüntüsünə baxın:

3. Basın Ctrl + C seçdiyiniz satırları kopyalamaq üçün düymələri seçin və sonra onları lazım olan iş səhifəsinə yapışdırın.

Qeyd: Satırları iki müxtəlif hüceyrə dəyərinə əsasən başqa bir işə daşımaq istəyirsinizsə. Məsələn, hücum dəyərlərinə əsaslanan satırları "Bitti" ya da "İşlənmə" ya keçə bilərsiniz Or vəziyyətdə Xüsusi Hüceyrələri seçin Aşağıdakı ekran görüntüsündə göstərilən informasiya qutusu:

İpucu.Bu yardım proqramının pulsuz bir sınaq versiyasını istəyirsinizsə, xahiş edirəm proqramı sərbəst yükləyin birincisi, sonra yuxarıdakı addımlara uyğun olaraq əməliyyata müraciət edin.


Əlaqəli məqalələr:



Təklif olunan Məhsuldarlıq Vasitələri

Office Tab

qızıl star1 Chrome, Firefox və yeni Internet Explorer kimi Excel və digər Office proqramlarına lazımlı sekmeleri gətirin.

Excel üçün Kutools

qızıl star1 Amazing! 5 dəqiqədə məhsuldarlığınızı artırın. Heç bir xüsusi bacarıqa ehtiyac yoxdur, hər gün iki saat saxlaya bilərsiniz!

qızıl star1 300 Excel üçün yeni funksiyalar, Excel çox asan və güclü olun:

  • Veriyi ləğv etmədən Cell / Satır / Sütunları birləşdirin.
  • Bir neçə Çarşaf və İş Kitabını birləşdirin və birləşdirin.
  • Çaprazları müqayisə edin, birdən çox aralığa kopyalayın, mətni tarixə, vahidə və valyuta çevrilməsinə çevirin.
  • Rənglər, Paging Subtotals, Advanced Sort və Super Filter tərəfindən sayılan,
  • Daha çox seçin / Insert / Sil / Mətn / Biçim / Bağlantı / Yorum / Çalışma kitabları / Çalışma Qurğuları Tools ...

Excel üçün Kutools-un ekranı

Say something here...
symbols left.
You are guest ( Sign Up? )
or post as a guest, but your post won't be published automatically.
Loading comment... The comment will be refreshed after 00:00.
  • To post as a guest, your comment is unpublished.
    AV · 8 months ago
    I used this code previously without problems, but now I can't get it to work quite right (I have no VB coding experience, so probably a silly mistake). Everything works except the row I want doesn't get copied to the final destination of Sheet2 - nothing appears there. Original row deleted just fine from Sheet1. I do have a header row in Sheet2 - could that be a problem?
    • To post as a guest, your comment is unpublished.
      crystal · 8 months ago
      Good day,
      The problem you mentioned does not appear in my case. Do you mind uploading your workbook for me to check?
      Thanks for your comment.
  • To post as a guest, your comment is unpublished.
    D company · 8 months ago
    Not working for me !!!!! please help!!!!



    I am getting syntax error on first line Sub Cheezy()
    What changes I need to do to fix this.
    I made changes as mentioned in description.
  • To post as a guest, your comment is unpublished.
    Ramesh · 8 months ago
    It is not working for me please help!!!!!!



    its giving me an syntax error at first line Sub Cheezy().


    I copped code as it is and changed values mentioned in description.
    • To post as a guest, your comment is unpublished.
      crystal · 8 months ago
      Hi Ramesh,
      May I know your Office verson? I need the feedback to check for the error. Thanks for your comment.
  • To post as a guest, your comment is unpublished.
    Ryan · 8 months ago
    I'm trying to move cells with a VLOOKUP function and when I use the code below, it pastes the formula, but it moves the cell values down as it pastes the formula down the rows. For example... the row that I'm copying is looking up $A1:$B27. When it pastes on the next sheet using the Macro it pastes $A2:$B29 then $A3:$B30 and so on and so forth. Is there a fix for this either in my VBA code or in my VLOOKUP formula?
  • To post as a guest, your comment is unpublished.
    gowtham · 9 months ago
    Hi,

    If i add the data in sheet1 it is not moving automatically,how to copy the data to another sheets
    • To post as a guest, your comment is unpublished.
      crystal · 9 months ago
      Hi gowtham,
      If you want to automatically move the row after entering the data, please try the below VBA code.

      Private Sub Worksheet_Change(ByVal Target As Range)
      Dim xRg As Range
      Dim xCell As Range
      Dim I As Long
      Dim J As Long
      Dim K As Long
      On Error Resume Next
      Application.ScreenUpdating = False
      If Target.Count = 1 And Intersect(Target, Columns(3)) Then
      I = ActiveSheet.UsedRange.Rows.Count
      J = Worksheets("Sheet2").UsedRange.Rows.Count
      If J = 1 Then
      If Application.WorksheetFunction.CountA(Worksheets("Sheet2").UsedRange) = 0 Then J = 0
      End If
      If Target.Value = "Done" Then
      Target.EntireRow.Copy Destination:=Worksheets("Sheet2").Range("A" & J + 1)
      Target.EntireRow.Delete
      End If
      End If
      Application.ScreenUpdating = True
      End Sub
      • To post as a guest, your comment is unpublished.
        Steph · 8 months ago
        Do you add this in place of Sub Cheezy()'s VBA, or in addition to? If so, where do you place it? (VBA newbie here)
      • To post as a guest, your comment is unpublished.
        Kim · 8 months ago
        Hello Crystal,

        Good day! I have been following your posts and I really appreciate all the tips and tricks you've been giving to everyone.
        Is it possible to help me please on my current challenge? I have been working on a file where I need to check if the value on the cell is found on a range from another sheet, then move it to another sheet.

        Here's my scenario

        Sheet1, range B2:B100 contains the range of values that serve as masterdata/list

        Sheet2, column C is what should be checked - if value is found on sheet1 range B2:B100

        Sheet3: If Sheet 2 Column C data is found, then entire row is moved to Sheet3.

        I have been using your early reference www.extendoffice.com/documents/excel/372....html?page_comment=1

        but it is only for a single criteria.



        Thank you in advance!
        • To post as a guest, your comment is unpublished.
          crystal · 8 months ago
          Hi Kim,
          The below VBA code can help you solve the problem. Thanks for your comment.

          Sub Cheezy()
          'Updated by Kutools for Excel 2018/8/6

          Dim xRg As Range
          Dim yRg As Range
          Dim I As Long
          Dim K As Long
          Dim J As Long

          I = Worksheets("Sheet1").UsedRange.Rows.Count
          J = Worksheets("Sheet3").UsedRange.Rows.Count
          secRow = Worksheets("Sheet2").UsedRange.Rows.Count
          If J = 1 Then
          If Application.WorksheetFunction.CountA(Worksheets("Sheet3").UsedRange) = 0 Then J = 0
          End If

          Set xRg = Worksheets("Sheet1").Range("B2:B100")
          'Set xRg = Worksheets("Sheet1").Range("A1:C" & I)
          Set yRg = Worksheets("Sheet2").Range("C1:C" & secRow)

          On Error Resume Next
          Application.ScreenUpdating = False
          Dim M As Long
          Dim N As Long

          For N = 1 To xRg.Count
          For M = 1 To yRg.Count
          If CStr(xRg(N).Value) = CStr(yRg(M).Value) Then
          yRg(M).EntireRow.Copy Destination:=Worksheets("Sheet3").Range("A" & J + 1)
          yRg(M).EntireRow.Delete
          If CStr(xRg(N).Value) = CStr(yRg(M).Value) Then
          N = N - 1
          End If
          J = J + 1
          End If
          Next

          Next

          Application.ScreenUpdating = True
          End Sub
          • To post as a guest, your comment is unpublished.
            Kim · 8 months ago
            Hi Crystal, Thank you! This worked for me.

            Going back to the original codes to move rows to another worksheet. It's been working for me for sometime.

            Now I have this issue where, whenever I start to trigger the macro, the cut cells are not moved to the next blank rows.

            E.g. I have A1:Z1 as my headers, the data starts to fill rows A33 onwards.

            Have you encountered this before?


            One thing I did though is that I have copied the macro into different buttons, and tailor fit depending on what sheet I need to paste. Does that impact the original sheet? or any sheets? Thank you.