Cookies membantu kami memberikan layanan kami. Dengan menggunakan layanan kami, Anda setuju untuk kami menggunakan cookies.
Kiat: Bahasa lain adalah Terjemahan-Google. Anda dapat mengunjungi English versi link ini
Masuk
x
or
x
x
Daftar
x

or

Bagaimana cara menduplikat baris berdasarkan nilai sel di kolom?

Sebagai contoh, saya memiliki sejumlah data yang berisi daftar nomor di kolom D, dan sekarang, saya ingin menduplikat keseluruhan baris beberapa kali berdasarkan nilai numerik di kolom D untuk mendapatkan hasil berikut. Bagaimana saya bisa menyalin baris beberapa kali berdasarkan nilai sel di Excel?

dok duplikat baris oleh sel 1

Baris duplikat beberapa kali berdasarkan nilai sel dengan kode VBA


panah biru kanan gelembung Baris duplikat beberapa kali berdasarkan nilai sel dengan kode VBA

Untuk menyalin dan menduplikat seluruh baris beberapa kali berdasarkan nilai sel, kode VBA berikut dapat membantu Anda, lakukan seperti ini:

1. Tahan ALT + F11 kunci untuk membuka Microsoft Visual Basic untuk Aplikasi jendela.

2. Klik Menyisipkan > Modul, dan paste kode berikut di Modul Jendela.

Kode VBA: Gandakan baris beberapa kali berdasarkan nilai sel:

Sub CopyData()
'Updateby Extendoffice 20160922
    Dim xRow As Long
    Dim VInSertNum As Variant
    xRow = 1
    Application.ScreenUpdating = False
    Do While (Cells(xRow, "A") <> "")
        VInSertNum = Cells(xRow, "D")
        If ((VInSertNum > 1) And IsNumeric(VInSertNum)) Then
           Range(Cells(xRow, "A"), Cells(xRow, "D")).Copy
           Range(Cells(xRow + 1, "A"), Cells(xRow + VInSertNum - 1, "D")).Select
           Selection.Insert Shift:=xlDown
           xRow = xRow + VInSertNum - 1
        End If
        xRow = xRow + 1
    Loop
    Application.ScreenUpdating = False
End Sub

3. Lalu tekan F5 kunci untuk menjalankan kode ini, seluruh baris telah diduplikasi beberapa kali berdasarkan nilai sel di kolom D sesuai kebutuhan Anda.

Catatan: Dalam kode diatas, hurufnya A menunjukkan kolom awal rentang data Anda, dan hurufnya D adalah kolom surat yang ingin Anda duplikat baris berdasarkan. Tolong ubah sesuai kebutuhan Anda.



Alat Produktifitas yang Direkomendasikan

Office Tab

Bintang emas1 Bawa tab yang berguna ke Excel dan perangkat lunak Office lainnya, seperti Chrome, Firefox dan Internet Explorer baru.

Kutools for Excel

Bintang emas1 Menakjubkan! Tingkatkan produktivitas Anda dalam 5 menit. Tidak perlu keahlian khusus, hemat dua jam setiap hari!

Bintang emas1 300 Fitur Baru untuk Excel, Membuat Excel Lebih Mudah dan Hebat:

  • Gabungkan Sel / Baris / Kolom tanpa Kehilangan Data.
  • Menggabungkan dan mengkonsolidasikan beberapa lembar dan buku kerja.
  • Bandingkan Range, Copy Multiple Ranges, Konversi Teks ke Tanggal, Konversi Unit dan Mata Uang.
  • Hitung dengan Warna, Pager Subtotals, Filter Sort dan Super Tingkat Lanjut,
  • Lebih Pilih / Sisipkan / Hapus / Teks / Format / Link / Komentar / Buku Kerja / Lembar Kerja Alat ...

Tembakan layar dari Kutools untuk Excel

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.
    KAS · 1 months ago
    Is there a way to update the module to only duplicate new data? I'm working on an ongoing document and do not want the code to duplicate data that has been previously duplicated.
  • To post as a guest, your comment is unpublished.
    Gerardo Enrique Heras Araujo · 2 months ago
    hi, for me is no working, I want to remove letters and number duplicate is possible?
  • To post as a guest, your comment is unpublished.
    Naomi · 2 months ago
    This script seems to be exactly what I need, however, when I run it I am getting an error on the line Selection.Insert Shift:=x1Down

    Any suggestions on how I fix this?
  • To post as a guest, your comment is unpublished.
    Manuel F · 2 months ago
    Thanks! it has been a great solution for all my troubles!
  • To post as a guest, your comment is unpublished.
    Leah · 3 months ago
    Hello, this worked great. However, I have a report with 1000 entries and the code stopped duplicating around entry 480. Is there something that I can add so that it completes the action on the entire report?
    • To post as a guest, your comment is unpublished.
      skyyang · 3 months ago
      Hello, Leah,
      I have tested the code in 2000 rows, and it works well.
      Could you send your worksheet to me for testing the code?
      My email address is skyyang@extendoffice.com
      Look forward to your reply!
      • To post as a guest, your comment is unpublished.
        Leah · 3 months ago
        Hello! I got it to work. It was an error on my side, the report had a few blank rows that were hidden that were causing the script to stop looping. It worked for my report with 8,000 rows! Thank youQ