Thiết kế lại bảng

Nội dung

Không có gì bí mật khi hầu hết người dùng Excel, khi tạo bảng trên trang tính, trước hết nghĩ đến sự thoải mái và tiện lợi của họ. Đây là cách các bảng đẹp đẽ, nhiều màu sắc và cồng kềnh với các “tiêu đề” phức tạp được sinh ra, đồng thời, chúng không thể được lọc hoặc sắp xếp, và tốt hơn hết là đừng nghĩ đến một báo cáo tự động với bảng tổng hợp.

Không sớm thì muộn, người sử dụng chiếc bàn như vậy sẽ đi đến kết luận rằng “nó có thể không đẹp, nhưng nó có thể hoạt động được” và bắt đầu đơn giản hóa thiết kế chiếc bàn của mình, phù hợp với các khuyến nghị cổ điển:

  • tiêu đề một dòng đơn giản, trong đó mỗi cột sẽ có tên riêng (tên trường)
  • một dòng - một hoạt động đã hoàn thành (giao dịch, bán, đăng bài, dự án, v.v.)
  • không có ô đã hợp nhất
  • không có ngắt ở dạng hàng và cột trống

Nhưng nếu bạn tạo tiêu đề một dòng từ một tiêu đề nhiều cấp hoặc chia một cột thành nhiều cột khá đơn giản, thì việc xây dựng lại bảng có thể mất rất nhiều thời gian (đặc biệt là ở kích thước lớn). Nó có nghĩa là tình huống sau:

Of     Thiết kế lại bảng   do     Thiết kế lại bảng  

Về cơ sở dữ liệu, bảng bên phải thường được gọi là phẳng (phẳng) - theo các bảng như vậy thì tốt nhất nên xây dựng các báo cáo về bảng tổng hợp (pivot table) và tiến hành phân tích.

Bạn có thể chuyển đổi bảng hai chiều thành bảng phẳng bằng cách sử dụng macro đơn giản. Mở Visual Basic Editor qua tab Nhà phát triển - Visual Basic (Nhà phát triển - Trình chỉnh sửa Visual Basic) hoặc phím tắt Khác+F11. Chèn một mô-đun mới (Chèn - Mô-đun) và sao chép văn bản của macro này vào đó:

Sub Redesigner () Dim i As Long Dim hc As Integer, hr As Integer Dim ns As Worksheet hr = InputBox ("Сколько строк с подписями сверху?") Hc = InputBox ("пколька стол сто". Sai i = 1 Đặt inpdata = Tập hợp lựa chọn ns = Worksheets.Add For r = (hr + 1) To inpdata.Rows.Count For c = (hc + 1) To inpdata.Columns.Count For j = 1 To hc ns. Cells (i, j) = inpdata.Cells (r, j) Next j For k = 1 To hr ns.Cells (i, j + k - 1) = inpdata.Cells (k, c) Next k ns.Cells ( i, j + k - 1) = inpdata.Cells (r, c) i = i + 1 Next c Next r End Sub  

Sau đó, bạn có thể đóng trình soạn thảo VBA và quay lại Excel. Bây giờ chúng ta có thể chọn bảng gốc (hoàn toàn, với tiêu đề và cột đầu tiên có tháng) và chạy macro của chúng tôi thông qua Nhà phát triển - Macro (Nhà phát triển - Macro) hoặc kết hợp nhấn Khác+F8.

Macro sẽ chèn một trang tính mới vào sách và tạo một phiên bản mới, được tái tạo lại của bảng đã chọn trên đó. Bạn có thể làm việc với một bảng như vậy “đầy đủ”, sử dụng toàn bộ kho công cụ Excel để xử lý và phân tích các danh sách lớn.

  • Macro là gì, chèn mã macro ở đâu trong VBA, cách sử dụng chúng
  • Tạo báo cáo với PivotTables
  • Công cụ thiết kế lại bảng XNUMXD thành bảng phẳng từ tiện ích bổ sung PLEX

 

Bình luận