Здравствуйте. Есть задача: преобразовать такой формат таблицы в такой (смотрите картинку). Это макрос или можно обойтись стандартными средствами ГуглДокс или Excel?
Здравствуйте. Есть задача: преобразовать такой формат таблицы в такой (смотрите картинку). Это макрос или можно обойтись стандартными средствами ГуглДокс или Excel? pacifizd
Если есть какие-то стандартные макросы, которые это умеют, то прошу меня тыкнуть в них пальцем, т.к. даже не знаю как правильно сформулировать поисковой запрос для решения этой задачи. Спасибо. [moder]Это не макрос, но все равно тычу
Если есть какие-то стандартные макросы, которые это умеют, то прошу меня тыкнуть в них пальцем, т.к. даже не знаю как правильно сформулировать поисковой запрос для решения этой задачи. Спасибо. [moder]Это не макрос, но все равно тычуpacifizd
Сначала несколько организационных слов. Добро пожаловать на форум. Просьба следовать местным правилам и выкладывать собственные файлы, примеры данных. Тратить время на составление примера за создателя темы - занятие низко продуктивное и большинство помогающих от этого здраво воздержится. А значит и ответ получить будет сложнее.
Во вложении № 1 макрос. После нажатия на кнопку укажите ячейку, куда необходимо вывести данные.
UPD: Во вложении № 2 формула.
Код программы:
[vba]
Код
Option Explicit Option Base 1
Sub Rio_Reorganisation()
'Author: Roman "Rioran" Voronov 'Date: the 17-th of October, 2014 'Feedback: voronov_rv@mail.ru
Dim A As Long 'Rows number Dim B As Long 'Columns number Dim C As Long 'To roll arrX Dim X As Long 'To roll rows Dim Y As Long 'To roll columns Dim arrX As Variant 'To store data Dim rngX As Range 'Where to place
A = Cells(Rows.Count, 1).End(xlUp).Row B = Cells(1, Columns.Count).End(xlToLeft).Column C = 1
ReDim arrX((A - 1) * (B - 1), 3)
For Y = 2 To B For X = 2 To A arrX(C, 1) = Cells(X, 1).Value arrX(C, 2) = Cells(1, Y).Value arrX(C, 3) = Cells(X, Y).Value C = C + 1 Next X Next Y
Set rngX = Application.InputBox(Prompt:="Куда поместить преобразованные данные?", Type:=8) If rngX Is Nothing Then Exit Sub
Сначала несколько организационных слов. Добро пожаловать на форум. Просьба следовать местным правилам и выкладывать собственные файлы, примеры данных. Тратить время на составление примера за создателя темы - занятие низко продуктивное и большинство помогающих от этого здраво воздержится. А значит и ответ получить будет сложнее.
Во вложении № 1 макрос. После нажатия на кнопку укажите ячейку, куда необходимо вывести данные.
UPD: Во вложении № 2 формула.
Код программы:
[vba]
Код
Option Explicit Option Base 1
Sub Rio_Reorganisation()
'Author: Roman "Rioran" Voronov 'Date: the 17-th of October, 2014 'Feedback: voronov_rv@mail.ru
Dim A As Long 'Rows number Dim B As Long 'Columns number Dim C As Long 'To roll arrX Dim X As Long 'To roll rows Dim Y As Long 'To roll columns Dim arrX As Variant 'To store data Dim rngX As Range 'Where to place
A = Cells(Rows.Count, 1).End(xlUp).Row B = Cells(1, Columns.Count).End(xlToLeft).Column C = 1
ReDim arrX((A - 1) * (B - 1), 3)
For Y = 2 To B For X = 2 To A arrX(C, 1) = Cells(X, 1).Value arrX(C, 2) = Cells(1, Y).Value arrX(C, 3) = Cells(X, Y).Value C = C + 1 Next X Next Y
Set rngX = Application.InputBox(Prompt:="Куда поместить преобразованные данные?", Type:=8) If rngX Is Nothing Then Exit Sub