Екцел - Макро за пренос података из редова у колоне

Питање

Подаци су сада у формату испод

 1 2 3

9 15 16 20 25

1

Ово мора доћи у овом формату

 1

2

3

9

15

16

20

25

1

Решење

Претпоставке:
  • 1. Подаци почињу из реда 1 и увек се копирају у колону А
  • 2. Редови се могу уметнути без изобличења у податке

 Суб ТранспосеСпециал ()

Дим лМакРовс Ас Лонг 'мак редова у листу

Дим лТхисРов Ас Лонг 'се обрађује

Дим иМакЦол Ас Интегер 'користи колону у реду који се обрађује

лМакРовс = Ћелије (Ровс.Цоунт, "А"). Крај (клУп) .Ров

лТхисРов = 1 'почиње из реда 1

До Вхиле лТхисРов <лМакРовс

иМакЦол = Ћелије (лТхисРов, Цолумнс.Цоунт) .Енд (клТоЛефт) .Цолумн

Ако (иМакЦол> 1) онда

Ровс (лТхисРов + 1 & ":" & лТхисРов + иМакЦол - 1) .Инсерт

Опсег (ћелије (лТхисРов, 2), ћелије (лТхисРов, иМакЦол)).

Опсег ("А" & лТхисРов + 1) .Селецт

Селецтион.ПастеСпециал Пасте: = клПастеАлл, Операција: = клНоне, СкипБланкс: = Фалсе, Транспосе: = Труе

Опсег (ћелије (лТхисРов, 2), ћелије (лТхисРов, иМакЦол)).

лТхисРов = лТхисРов + иМакЦол - 1

лМакРовс = Ћелије (Ровс.Цоунт, "А"). Крај (клУп) .Ров

Енд Иф

лТхисРов = лТхисРов + 1

Лооп

Енд Суб

Напоменути да

Хвала ризвиса1 за овај тип на форуму.
Претходни Чланак Sledeći Чланак

Топ Савети