Добрый день, уважаемые специалисты.
К сожалению, с программированием не дружу, поэтому прошу Вашей помощи.
Для загрузки товаров в магазин из эксель нужно исходные данные привести к другому формату.
Первый столбец с ID всех товаров.
Столбцы 2-5 первой строки - названия аттрибутов.
Столбцы 2-5 и строки со 2-й - это сами аттрибуты товаров, у которых в первом столбце ID.
Нужно в столбец, например 7, вставить ИД товара в строки, количество которых равно количеству названий аттрибутов.
В столбец 8 вставить названия аттрибутов транспонированно, а в столбец 9 - значения аттрибутов.
И потом так же обработать следующие строки, пока ИД товаров не закончатся.
Попытался сделать макрос, может как-то удасться автоматизировать - не удалось, не знаю как все это правильно написать.
Очень прошу Вашей помощи, ребят, руками тысячи позиций переделать нереально просто(
К сожалению, с программированием не дружу, поэтому прошу Вашей помощи.
Для загрузки товаров в магазин из эксель нужно исходные данные привести к другому формату.
Первый столбец с ID всех товаров.
Столбцы 2-5 первой строки - названия аттрибутов.
Столбцы 2-5 и строки со 2-й - это сами аттрибуты товаров, у которых в первом столбце ID.
Нужно в столбец, например 7, вставить ИД товара в строки, количество которых равно количеству названий аттрибутов.
В столбец 8 вставить названия аттрибутов транспонированно, а в столбец 9 - значения аттрибутов.
И потом так же обработать следующие строки, пока ИД товаров не закончатся.
Попытался сделать макрос, может как-то удасться автоматизировать - не удалось, не знаю как все это правильно написать.
Код |
---|
Sub example() ' example Макрос Range("B1:E1").Select Selection.Copy Range("H1").Select Selection.PasteSpecial Paste:=xlPasteAll, Operation:=xlNone, SkipBlanks:= _ False, Transpose:=True Range("B2:E2").Select Application.CutCopyMode = False Selection.Copy Range("I1").Select Selection.PasteSpecial Paste:=xlPasteAll, Operation:=xlNone, SkipBlanks:= _ False, Transpose:=True Range("A2").Select Application.CutCopyMode = False Selection.Copy Range("G1").Select ActiveSheet.Paste Range("G1:G4").Select Application.CutCopyMode = False Selection.FillDown Range("B1:E1").Select Selection.Copy Range("H5").Select ActiveSheet.Paste Range("H5").Select Selection.PasteSpecial Paste:=xlPasteAll, Operation:=xlNone, SkipBlanks:= _ False, Transpose:=True Range("B3:E3").Select Application.CutCopyMode = False Selection.Copy Range("I5").Select Selection.PasteSpecial Paste:=xlPasteAll, Operation:=xlNone, SkipBlanks:= _ False, Transpose:=True Range("A3").Select Application.CutCopyMode = False Selection.Copy Range("G5").Select ActiveSheet.Paste Range("G5:G8").Select Application.CutCopyMode = False Selection.FillDown Range("J9").Select ActiveCell.FormulaR1C1 = "" Range("G9").Select End Sub |
Очень прошу Вашей помощи, ребят, руками тысячи позиций переделать нереально просто(