Скопируйте и вставьте на тот же лист

У меня есть книга, которая служит базой данных со страницей ввода. Я хочу сделать столбец A динамическим, который будет обновлять строки заголовков на всех страницах рабочего листа. Я создал макрос, который копирует эти имена заголовков из столбца A на входном листе и вставляет эти значения в качестве заголовков на следующем листе. После того как эти строки заголовков будут помечены, они будут скопированы на Лист 2 во второй раз, чтобы их можно было вставить как дополнительные строки заголовков справа от ранее вставленных значений. Причина в том, что они являются значениями, отслеживаемыми во время начала и окончания, и в каждый момент времени будут храниться разные данные. Кроме того, я хотел бы, чтобы эти строки заголовков имели границы среднего веса вокруг них. Я набросал следующий код, но он работает только частично правильно, скопировав первый набор, как и ожидалось, однако вторая часть копии не работает. Я надеялся создать лист шаблона в документе, в котором будут указаны дата, время начала, пространство, время окончания. Это означало бы, что строки копирования должны быть вставлены после времени начала и снова после времени окончания динамическим образом, чтобы этот список мог расти. Пожалуйста, посмотрите мой прикрепленный код и большое спасибо за любую помощь.

Sub CopyData2()

Dim ws1 As Worksheet
Dim ws2 As Worksheet
Dim wb As Workbook
Dim lRow As Long
Dim lCol1 As Long
Dim lCol2 As Long
Dim cRange As Range
Dim iCell As Range
Dim iRange As Range

Set wb = ThisWorkbook

Set ws1 = wb.Sheets(1)

Set ws2 = wb.Sheets(2)

lRow = ws1.Cells(Rows.Count, 1).End(xlUp).Row

lCol1 = ws2.Cells(12, Columns.Count).End(xlToLeft).Column

lCol2 = ws2.Cells(3, Columns.Count).End(xlToLeft).Column

ws1.Range("A13:A" & lRow).Copy

ws2.Range("C3").PasteSpecial xlPasteValues, Transpose:=True

Set cRange = ws2.Range(("C3"), ws2.Range("C3").End(xlToRight))

cRange.Select

cRange.Copy

ws2.Cells(3, lCol2).PasteSpecial xlPasteValues

End Sub
3 метода стилизации элементов HTML
3 метода стилизации элементов HTML
Когда дело доходит до применения какого-либо стиля к нашему HTML, существует три подхода: встроенный, внутренний и внешний. Предпочтительным обычно...
Формы c голосовым вводом в React с помощью Speechly
Формы c голосовым вводом в React с помощью Speechly
Пытались ли вы когда-нибудь заполнить веб-форму в области электронной коммерции, которая требует много кликов и выбора? Вас попросят заполнить дату,...
Стилизация и валидация html-формы без использования JavaScript (только HTML/CSS)
Стилизация и валидация html-формы без использования JavaScript (только HTML/CSS)
Будучи разработчиком веб-приложений, легко впасть в заблуждение, считая, что приложение без JavaScript не имеет права на жизнь. Нам становится удобно...
Flatpickr: простой модуль календаря для вашего приложения на React
Flatpickr: простой модуль календаря для вашего приложения на React
Если вы ищете пакет для быстрой интеграции календаря с выбором даты в ваше приложения, то библиотека Flatpickr отлично справится с этой задачей....
В чем разница между Promise и Observable?
В чем разница между Promise и Observable?
Разберитесь в этом вопросе, и вы значительно повысите уровень своей компетенции.
Что такое cURL в PHP? Встроенные функции и пример GET запроса
Что такое cURL в PHP? Встроенные функции и пример GET запроса
Клиент для URL-адресов, cURL, позволяет взаимодействовать с множеством различных серверов по множеству различных протоколов с синтаксисом URL.
0
0
47
2
Перейти к ответу Данный вопрос помечен как решенный

Ответы 2

Я не понимаю, что вы пытаетесь сделать со временем запуска / остановки, но попробуйте удалить cRange.Select, чтобы исправить 2-е копирование / вставку.

Ответ принят как подходящий

Я бы предложил заменить последние 4 строки на приведенные ниже

With ws2.Range(("C3"), ws2.Range("C3").End(xlToRight))
    ws2.Cells(3, lCol2).Resize(.Rows.Count,.Columns.Count).Value2 = .Value2
End With

во избежание оба Select, и избыточного использования буфера обмена.

Другие вопросы по теме