表重新設計器

內容

大多數 Excel 用戶在工作表上創建表格時,首先考慮自己的舒適度和便利性,這已不是什麼秘密。 漂亮、多彩、繁瑣的帶有復雜“標題”的表格就這樣誕生了,與此同時,這些表格根本無法過濾或排序,最好不要考慮帶有數據透視表的自動報表。

這樣一張桌子的使用者遲早會得出“它可能不那麼漂亮,但它可以工作”的結論,並開始簡化他的桌子設計,使其符合經典建議:

  • 一個簡單的單行標題,其中每一列都有自己唯一的名稱(字段名稱)
  • 一條線 - 一項已完成的操作(交易、銷售、發布、項目等)
  • 沒有合併的單元格
  • 沒有空行和空列形式的中斷

但是如果你把一個多級的表頭做成單行表頭,或者將一列拆分成幾列,這很簡單,那麼表重建可能會花費很多時間(尤其是在大尺寸時)。 這意味著以下情況:

Of     表重新設計器   do     表重新設計器  

在數據庫方面,右表通常稱為平面(flat)——最好是根據這樣的表來構建數據透視表(pivot table)的報表並進行分析。

您可以使用簡單的宏將二維表轉換為平面表。 通過選項卡打開 Visual Basic 編輯器 開發人員——Visual Basic (開發者——Visual Basic 編輯器) 或鍵盤快捷鍵 其他+F11. 插入一個新模塊(插入 - 模塊) 並在此處複製此宏的文本:

Sub Redesigner() Dim i As Long Dim hc As Integer, hr As Integer Dim ns As Worksheet hr = InputBox("Сколько строк с подписями сверху?") hc = InputBox("Сколько столбцов с подписями слева?") Application.ScreenUp False i = 1 設置 inpdata = 選擇集 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  

然後您可以關閉 VBA 編輯器並返回 Excel。 現在我們可以選擇原始表(完全是,帶有標題和帶有月份的第一列)並運行我們的宏 開發人員 – 宏 (開發者——宏) 或按組合 其他+F8.

宏將在書中插入一張新工作表,並在其上創建所選表格的新重建版本。 您可以使用整個 Excel 工具庫來處理和分析大型列表,從而“完整地”使用這樣的表格。

  • 什麼是宏,在 VBA 中插入宏代碼的位置,如何使用它們
  • 使用數據透視表創建報表
  • 從 PLEX 插件中將 XNUMXD 表重新設計為平面表的工具

 

發表評論