Редизајнер на маса

содржина

Не е тајна дека повеќето корисници на Excel, кога креираат табели на листови, размислуваат пред сè за сопствената удобност и удобност. Така се раѓаат убави, шарени и незгодни табели со сложени „заглавија“, кои, во исто време, воопшто не можат да се филтрираат или сортираат, а подобро е воопшто да не размислувате за автоматски извештај со стожерна табела.

Порано или подоцна, корисникот на таква табела доаѓа до заклучок дека „можеби не е толку убава, но може да работи“ и почнува да го поедноставува дизајнот на неговата маса, усогласувајќи го со класичните препораки:

  • едноставно заглавие од една линија, каде што секоја колона ќе има свое единствено име (име на поле)
  • една линија – една завршена операција (договор, продажба, објавување, проект итн.)
  • нема споени ќелии
  • без прекини во форма на празни редови и колони

Но, ако направите заглавие од една линија од повеќе нивоа или поделите една колона на неколку, тоа е прилично едноставно, тогаш реконструкцијата на табелата може да потрае многу време (особено при големи димензии). Тоа значи следнава ситуација:

Of     Редизајнер на маса   do     Редизајнер на маса  

Во однос на базите на податоци, десната табела обично се нарекува рамна (рамна) - според таквите табели е најдобро да се градат извештаи за стожерните табели (стожерни табели) и да се спроведе аналитика.

Можете да конвертирате дводимензионална табела во рамна табела користејќи едноставно макро. Отворете го уредникот на Visual Basic преку јазичето Програмер – Visual Basic (Програмер - уредник на Visual Basic) или кратенка на тастатура Alt+F11. Вметнете нов модул (Вметни – Модул) и копирајте го текстот на ова макро таму:

Sub Redesigner() Dim i Колку долго Dim hc како цел број, hr како цел број Dim ns како работен лист hr = InputBox("Сколько строк со подписями сверху?") hc = InputBox("Сколько столбцов со подписями слева?") Application.Screen Неточно i = 1 Постави inpdata = Изборно множество ns = работни листови. Додај за r = (hr + 1) во inpdata.Редови. Број за c = (hc + 1) за inpdata.Колони. Број за j = 1 за hc ns. Ќелии(i, j) = inpdata.Cells(r, j) Следна j За k = 1 До hr ns.Ќелии(i, j + k - 1) = inpdata.Cells(k, c) Следна k ns.Cells( i, j + k - 1) = inpdata.Cells(r, c) i = i + 1 Следно c Следна r Крај Под  

Потоа можете да го затворите уредникот VBA и да се вратите во Excel. Сега можеме да ја избереме оригиналната табела (целосно, со заглавие и првата колона со месеци) и да го извршиме нашето макро низ Програмер - Макроа (Програмер - макроа) или комбинација на притискање Alt+F8.

Макрото ќе вметне нов лист во книгата и ќе создаде нова, реконструирана верзија на избраната табела на неа. Можете да работите со таква табела „целосно“, користејќи го целиот арсенал на алатки на Excel за обработка и анализа на големи списоци.

  • Што се макроа, каде да вметнете макро код во VBA, како да ги користите
  • Креирање извештаи со PivotTables
  • Алатка за редизајнирање XNUMXD маси на рамни од додатокот PLEX

 

Оставете Одговор