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

Làm cách nào để chuyển cột thành hàng và chèn hàng mới để điền dữ liệu trong Excel?

Trong bài viết này, tôi giới thiệu mã VBA để chuyển cột thành hàng và chèn hàng mới để điền dữ liệu như hình ảnh chụp màn hình bên dưới, nếu bạn quan tâm đến thao tác này, vui lòng vào bên dưới để biết thêm chi tiết.
doc chuyển vị chèn hàng 1

Chuyển đổi và chèn các hàng bằng VBA


mũi tên màu xanh bong bóng bên phải Chuyển đổi và chèn các hàng bằng VBA

Không có cách trực tiếp nào để chuyển một dải ô và chèn các hàng để điền vào cùng một dữ liệu, nhưng ở đây tôi có thể giới thiệu một mã VBA để giải quyết nhanh nhiệm vụ này.

1. nhấn Alt + F11 chìa khóa để mở Microsoft Visual Basic cho các ứng dụng cửa sổ.

2. nhấp chuột Chèn > Mô-đunvà dán mã VBA bên dưới vào cửa sổ Mô-đun. Xem ảnh chụp màn hình:

VBA: Chuyển đổi và chèn hàng.

 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 chuyển vị chèn hàng 2

3. nhấn F5 để chạy mã, sau đó chọn phạm vi dữ liệu bạn muốn hoán vị và chèn các hàng vào hộp thoại bật lên. Xem ảnh chụp màn hình:
doc chuyển vị chèn hàng 3

4. nhấp chuột OK. Và phạm vi đã chọn đã được chuyển đổi như hình minh họa bên dưới.
doc chuyển vị chèn hàng 4

Chú thích: trước khi chạy mã, bạn nên lưu một bản sao của dữ liệu gốc.

Tiền boa.Nếu bạn muốn nhanh chóng chuyển đổi một bảng chéo sang bảng danh sách hoặc ngược lại, hãy thử sử dụng Kutools cho Excel Chuyển đổi kích thước bảng như thể hiện trong ảnh chụp màn hình sau đây. Nó đầy đủ chức năng mà không giới hạn trong 30 ngày vui lòng tải xuống và dùng thử miễn phí ngay bây giờ.

doc chuyển chéo sang danh sách

Các công cụ năng suất văn phòng tốt nhất

Kutools cho Excel giải quyết hầu hết các vấn đề của bạn và tăng 80% năng suất của bạn

  • Tái sử dụng: Chèn nhanh công thức phức tạp, biểu đồ và bất cứ thứ gì bạn đã sử dụng trước đây; Mã hóa ô với mật khẩu; Tạo danh sách gửi thư và gửi email ...
  • Thanh siêu công thức (dễ dàng chỉnh sửa nhiều dòng văn bản và công thức); Bố cục đọc (dễ dàng đọc và chỉnh sửa số lượng ô lớn); Dán vào Dải ô đã Lọchữu ích. Cảm ơn !
  • Hợp nhất các ô / hàng / cột mà không làm mất dữ liệu; Nội dung phân chia ô; Kết hợp các hàng / cột trùng lặp... Ngăn chặn các ô trùng lặp; So sánh các dãyhữu ích. Cảm ơn !
  • Chọn trùng lặp hoặc duy nhất Hàng; Chọn hàng trống (tất cả các ô đều trống); Tìm siêu và Tìm mờ trong Nhiều Sổ làm việc; Chọn ngẫu nhiên ...
  • Bản sao chính xác Nhiều ô mà không thay đổi tham chiếu công thức; Tự động tạo tài liệu tham khảo sang Nhiều Trang tính; Chèn Bullets, Hộp kiểm và hơn thế nữa ...
  • Trích xuất văn bản, Thêm Văn bản, Xóa theo Vị trí, Xóa không gian; Tạo và In Tổng số phân trang; Chuyển đổi giữa nội dung ô và nhận xéthữu ích. Cảm ơn !
  • Siêu lọc (lưu và áp dụng các lược đồ lọc cho các trang tính khác); Sắp xếp nâng cao theo tháng / tuần / ngày, tần suất và hơn thế nữa; Bộ lọc đặc biệt bằng cách in đậm, in nghiêng ...
  • Kết hợp Workbook và WorkSheets; Hợp nhất các bảng dựa trên các cột chính; Chia dữ liệu thành nhiều trang tính; Chuyển đổi hàng loạt xls, xlsx và PDFhữu ích. Cảm ơn !
  • Hơn 300 tính năng mạnh mẽ. Hỗ trợ Office / Excel 2007-2021 và 365. Hỗ trợ tất cả các ngôn ngữ. Dễ dàng triển khai trong doanh nghiệp hoặc tổ chức của bạn. Đầy đủ tính năng Dùng thử miễn phí 30 ngày. Bảo đảm hoàn lại tiền trong 60 ngày.
tab kte 201905

Tab Office mang lại giao diện Tab cho Office và giúp công việc của bạn trở nên dễ dàng hơn nhiều

  • Cho phép chỉnh sửa và đọc theo thẻ trong Word, Excel, PowerPoint, Publisher, Access, Visio và Project.
  • Mở và tạo nhiều tài liệu trong các tab mới của cùng một cửa sổ, thay vì trong các cửa sổ mới.
  • Tăng 50% năng suất của bạn và giảm hàng trăm cú nhấp chuột cho bạn mỗi ngày!
officetab dưới cùng
Nhận xét (8)
Chưa có xếp hạng. Hãy là người đầu tiên xếp hạng!
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Nếu thông tin của bảng chéo của tôi đến từ các công thức, thì những công thức đó không phải lúc nào cũng tuân theo khi macro được áp dụng. Làm cách nào tôi có thể sửa lỗi này để đảm bảo rằng các công thức được giữ trong các ô?
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Xin chào, cảm ơn vì tin nhắn của bạn. Để giải quyết vấn đề của mình, bạn có thể áp dụng Chuyển đổi Công thức thành Văn bản của Kutools trước khi bạn chạy macro, sau đó sau khi chuyển bảng, hãy áp dụng Chuyển đổi Văn bản thành Công thức của Kutools. Xin vui lòng cho tôi biết nếu nó hoạt động. Cảm ơn.
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Làm cách nào để thay đổi mã VBA để giữ nguyên nhiều cột hơn? Ví dụ: thay vì hai cột đầu tiên giữ nguyên, nó sẽ là 4 cột đầu tiên?
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Tôi không chắc, có thể bạn có thể thử thay đổi x = xRg (1, 1) .Column + 2 thành x = xRg (1, 1) .Column + 4.
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
làm cách nào để tạo dữ liệu 3 và 4 trong cùng một cột:


bài tập ban đầu là:

Lớp1 | Tên | Nancy | Judy | Hoa huệ | Daniel
Lớp2 | Tên | Lý Tiểu Long | Uee | Perter | Daniel
Lớp3 | Tên | kate | Kelly | Wenddy | Daniel

Tôi cần chuyển đổi nó như thế này

Lớp1 | Tên | Nancy | Judy
Lớp1 | Tên | Hoa huệ | Daniel
Lớp 2 | Tên | Lý Tiểu Long | Uee
Lớp 2 | Tên | Perter | Daniel
Lớp3 | Tên | kate | Kelly
Lớp3 | Tên | Wenddy | Daniel
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Làm cách nào để chuyển đổi dữ liệu sau mỗi hai ô

Bài tập ban đầu là:


Lớp1 | Tên | Nancy | Judy | Hoa huệ | Daniel
Lớp2 | Tên | Lý Tiểu Long | Uee | Perter | Daniel
Lớp3 | Tên | kate | Kelly | Wenddy | Daniel

và tôi cần nó trông như thế này:

Lớp1 | Tên | Nancy | Judy
Lớp1 | Tên | Hoa huệ | Daniel
Lớp 2 | Tên | Lý Tiểu Long | Uee
Lớp 2 | Tên | Perter | Daniel
Lớp3 | Tên | kate | Kelly
Lớp3 | Tên | Wenddy | Daniel
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Đoạn mã trên hoạt động tuyệt vời. Nó giữ hai cột đầu tiên. Làm cách nào để thay đổi mã để nó chỉ giữ lại cột đầu tiên?
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Lỗi trình biên dịch Lỗi tổng hợp
Dim xRg theo phạm vi
Dim i As Long, j As Long, k As Long
Dim x As Long, y As Long

Không có bình luận nào được đăng ở đây
Để lại ý kiến ​​của bạn
Đăng với tư cách khách
×
Đánh giá bài viết này:
0   Nhân vật
Các vị trí được đề xuất

Kết nối với chúng tôi

Bản quyền © 2009 - www.extendoffice.com. | Đã đăng ký Bản quyền. cung cấp bởi ExtendOffice. | BẢN ĐỒ CHI NHÁNH
Microsoft và logo Office là các nhãn hiệu hoặc nhãn hiệu đã đăng ký của Microsoft Corporation tại Hoa Kỳ và / hoặc các quốc gia khác.
Được bảo vệ bởi Sectigo SSL