Note: The other languages of the website are Google-translated. Back to English

Bagaimana cara mengubah urutan kolom menjadi baris dan memasukkan baris baru untuk mengisi data di Excel?

Pada artikel ini, saya memperkenalkan kode VBA untuk mengubah urutan kolom menjadi baris dan memasukkan baris baru untuk mengisi data seperti gambar di bawah ini, jika Anda tertarik dengan operasi ini, silakan buka di bawah untuk lebih jelasnya.
doc transpose masukkan baris 1

Ubah urutan dan sisipkan baris dengan VBA


panah gelembung kanan biru Ubah urutan dan sisipkan baris dengan VBA

Tidak ada cara langsung untuk mengubah urutan rentang dan menyisipkan baris untuk mengisi data yang sama, tetapi di sini saya dapat memperkenalkan kode VBA untuk menyelesaikan tugas ini dengan cepat.

1. tekan Alt + F11 kunci untuk membuka Microsoft Visual Basic untuk Aplikasi jendela.

2. klik Menyisipkan > Modul, dan tempelkan kode VBA di bawah ini ke jendela Modul. Lihat tangkapan layar:

VBA: Mengubah urutan dan menyisipkan baris.

 Sub TransposeInsertRows()
'UpdatebyExtendoffice20161125
    Dim xRg As Range
    Dim i As Long, j As Long, k As Long
    Dim x As Long, y As Long
    Set xRg = Application.InputBox _
    (Prompt:="Range Selection...", _
    Title:="Kutools For Excel", Type:=8)
    Application.ScreenUpdating = False
    x = xRg(1, 1).Column + 2
    y = xRg(1, xRg.Columns.Count).Column
    For i = xRg(xRg.Rows.Count, 1).Row To xRg(1, 1).Row Step -1
        If Cells(i, x) <> "" And Cells(i, x + 1) <> "" Then
            k = Cells(i, x - 2).End(xlToRight).Column
            If k > y Then k = y
            For j = k To x + 1 Step -1
                Cells(i + 1, 1).EntireRow.Insert
                With Cells(i + 1, x - 2)
                    .Value = .Offset(-1, 0)
                    .Offset(0, 1) = .Offset(-1, 1)
                    .Offset(0, 2) = Cells(i, j)
                End With
                Cells(i, j).ClearContents
            Next j
        End If
    Next i
    Application.ScreenUpdating = True
End Sub

 

doc transpose masukkan baris 2

3. tekan F5 untuk menjalankan kode, lalu pilih rentang data yang ingin Anda ubah urutannya dan masukkan baris ke dalam dialog popping. Lihat tangkapan layar:
doc transpose masukkan baris 3

4. klik OK. Dan kisaran yang dipilih telah diubah seperti gambar di bawah ini.
doc transpose masukkan baris 4

Note: sebelum menjalankan kode, sebaiknya Anda menyimpan salinan data asli.

Ketik.Jika Anda ingin dengan cepat mengubah tabel silang ke tabel daftar atau sebaliknya, coba gunakan Kutools for Excel's Ubah Urutan Dimensi Tabel seperti yang ditunjukkan pada tangkapan layar berikut. Ini berfungsi penuh tanpa batasan di

30
hari, silakan unduh dan dapatkan uji coba gratis sekarang.
doc transpose lintas ke daftar

Alat Produktivitas Kantor Terbaik

Kutools for Excel Memecahkan Sebagian Besar Masalah Anda, dan Meningkatkan Produktivitas Anda hingga 80%

  • Reuse: Masukkan dengan cepat rumus, bagan yang kompleks dan apa pun yang pernah Anda gunakan sebelumnya; Enkripsi Sel dengan kata sandi; Buat Milis dan mengirim email ...
  • Bilah Formula Super (dengan mudah mengedit beberapa baris teks dan rumus); Membaca Tata Letak (membaca dan mengedit sel dalam jumlah besar dengan mudah); Tempel ke Rentang yang Difilter...
  • Gabungkan Sel / Baris / Kolom tanpa kehilangan Data; Pisahkan Konten Sel; Gabungkan Baris / Kolom Duplikat... Mencegah Sel Duplikat; Bandingkan Rentang...
  • Pilih Duplikat atau Unik Baris; Pilih Baris Kosong (semua sel kosong); Temukan Super dan Temukan Fuzzy di Banyak Buku Kerja; Pilih Acak ...
  • Salinan Tepat Beberapa Sel tanpa mengubah referensi rumus; Buat Referensi Otomatis ke Beberapa Lembar; Sisipkan Poin, Kotak Centang, dan lainnya ...
  • Ekstrak Teks, Tambahkan Teks, Hapus berdasarkan Posisi, Hapus Space; Membuat dan Mencetak Subtotal Paging; Konversi Konten Antar Sel dan Komentar...
  • Filter Super (simpan dan terapkan skema filter ke sheet lain); Penyortiran Lanjutan menurut bulan / minggu / hari, frekuensi dan lainnya; Filter Khusus dengan huruf tebal, miring ...
  • Gabungkan Workbooks dan WorkSheets; Gabungkan Tabel berdasarkan kolom kunci; Pisahkan Data menjadi Beberapa Lembar; Konversi Batch xls, xlsx dan PDF...
  • Lebih dari 300 fitur canggih. Mendukung Office / Excel 2007-2021 dan 365. Mendukung semua bahasa. Penerapan yang mudah di perusahaan atau organisasi Anda. Fitur lengkap Uji coba gratis 30 hari. Jaminan uang kembali 60 hari.
tab kte 201905

Tab Office Membawa antarmuka Tab ke Office, dan Membuat Pekerjaan Anda Jauh Lebih Mudah

  • Aktifkan pengeditan dan pembacaan tab di Word, Excel, PowerPoint, Publisher, Access, Visio, dan Project.
  • Buka dan buat banyak dokumen di tab baru di jendela yang sama, bukan di jendela baru.
  • Meningkatkan produktivitas Anda sebesar 50%, dan mengurangi ratusan klik mouse untuk Anda setiap hari!
officetab bawah
Urutkan komentar berdasarkan
komentar (8)
Belum ada peringkat. Jadilah yang pertama memberi peringkat!
Komentar ini diminimalkan oleh moderator di situs
Jika informasi tabel silang saya berasal dari rumus, rumus tersebut tidak selalu mengikuti saat makro diterapkan. Bagaimana saya bisa memperbaikinya untuk memastikan bahwa formula disimpan di dalam sel?
Komentar ini diminimalkan oleh moderator di situs
Hai, terima kasih atas pesan Anda. Untuk memecahkan masalah Anda, Anda dapat menerapkan Formula Konversi Kutools ke Teks sebelum Anda menjalankan makro, kemudian setelah mengubah tabel, menerapkan Teks Konversi Kutools ke Rumus. Tolong beri tahu saya jika itu berhasil. Terima kasih.
Komentar ini diminimalkan oleh moderator di situs
bagaimana saya mengubah kode VBA sehingga akan membuat lebih banyak kolom tetap sama? misalnya alih-alih dua kolom pertama tetap sama, itu akan menjadi 4 yang pertama?
Komentar ini diminimalkan oleh moderator di situs
Saya tidak yakin, mungkin Anda dapat mencoba mengubah x = xRg(1, 1).Kolom + 2 menjadi x = xRg(1, 1).Kolom + 4.
Komentar ini diminimalkan oleh moderator di situs
bagaimana saya bisa membuat data 3 dan 4 tetap di kolom yang sama:


latihan awal adalah:

Kelas1 | Nama | Nancy | Yudi | Lili | Daniel
Kelas2 | Nama | Bruce | Uee | Perter | Daniel
Kelas3 | Nama | kate | Kelly | Wendy | Daniel

Saya perlu mentransposnya seperti ini

Kelas1 | Nama | Nancy | Judy
Kelas1 | Nama | Lili | Daniel
Kelas 2 | Nama | Bruce | Uee
Kelas 2 | Nama | Perter | Daniel
Kelas3 | Nama | kate | Kelly
Kelas3 | Nama | Wendy | Daniel
Komentar ini diminimalkan oleh moderator di situs
Bagaimana saya bisa mentranspos data setiap dua sel?

Latihan awal adalah:


Kelas1 | Nama | Nancy | Yudi | Lili | Daniel
Kelas2 | Nama | Bruce | Uee | Perter | Daniel
Kelas3 | Nama | kate | Kelly | Wendy | Daniel

dan saya membutuhkannya agar terlihat seperti ini:

Kelas1 | Nama | Nancy | Judy
Kelas1 | Nama | Lili | Daniel
Kelas 2 | Nama | Bruce | Uee
Kelas 2 | Nama | Perter | Daniel
Kelas3 | Nama | kate | Kelly
Kelas3 | Nama | Wendy | Daniel
Komentar ini diminimalkan oleh moderator di situs
Kode di atas berfungsi dengan baik. Itu membuat dua kolom pertama. Bagaimana saya mengubah kode sehingga hanya menyimpan kolom pertama?
Komentar ini diminimalkan oleh moderator di situs
Kesalahan kompilatorKesalahan Sintaks
Redupkan xRg Sebagai Rentang
Redup i Selamanya, j Selamanya, k Selamanya
Redup x Selama, y ​​Selama

Belum ada komentar yang diposting di sini
Tinggalkan komentar anda
Posting sebagai Tamu
×
Beri peringkat pos ini:
0   Karakter
Lokasi yang Disarankan

Ikuti kami

Hak Cipta © 2009 - www.extendoffice.com. | Seluruh hak cipta. Dipersembahkan oleh ExtendOffice. | Peta Situs
Microsoft dan logo Office adalah merek dagang atau merek dagang terdaftar dari Microsoft Corporation di Amerika Serikat dan / atau negara lain.
Dilindungi oleh Sectigo SSL