У меня есть (для меня) довольно сложная задача сделать в excel. Я хотел бы скопировать диапазон значений (транспонированных) в другой лист. Значения варьируются от 1 до 99 и всегда находятся в порядке возрастания.Excel код VBA для копирования/вставки (транспонирования) различного диапазона значений в петле на другой лист
Задача состоит в том, чтобы иметь VBA, который позволяет мне заполнить этот лист необходимой информацией и повторять его в цикле до тех пор, пока все значения не будут заполнены. С этим я хочу преобразовать лист с закрытием до миллиона строк в один с ок. 25000 рядов и ок. 100 столбцов. Посмотрите скриншоты того, что я хочу сделать.
Первое изображение - таблица данных (лист 1). Я хочу скопировать диапазон значений в столбце C в нужное место на листе 2. Каждый раз, когда имя изменяется (и значения начинаются с нижнего конца снова), начинается новая строка в листе 2.
Возможно это помогает мне всегда знать, как долго этот диапазон, потому что я знаю, сколько образцов это имя появляется (1-99), поэтому я знаю, что диапазон будет, например, C2: C6 (потому что это имя находится в 5 образцах), затем C7: 11 (опять 5 образцов) и т. Д.
Возможно, вы можете мне помочь? Я не смог сделать это в одиночку.
Изображение 1:
Изображение 2:
Есть ли у вас код, чтобы показать нам? – user1
Моя макрозапись выглядит так, но, конечно, она не включает разные диапазоны (1-99) или цикл: Sub transferclone() Листы («Tabelle1»). Выберите Диапазон («E2: E100») .Select Selection.Copy Sheets ("Tabelle2") Выберите Selection.PasteSpecial Paste:. = xlAll, Operation: = xlNone, SkipBlanks: = False _ , Транспонирование: = True Range ("D4") Выберите . Листы ("Tabelle1") Выбрать диапазон.. ("E101: E199") Выберите Application.CutCopyMode = False Selection.Copy Sheets ("Tabelle2") Выберите Selection.PasteSpecial Па. ste: = xlAll, Operation: = xlNone, End Sub – Nicholas