Я пытаюсь создать макрос для копирования и вставки столбца из вывода данных с одного рабочего листа под названием ImportTXT в таблицу на другом листе под названием ExtractData , но этот столбец может be Dynami c, и количество точек может измениться (то есть, сколько номеров точек (1,2,3, ...), а также сколько итераций каждой точки (в данном случае есть 9 точек Комбинации 1, 9 точек 2, 9 точек 3 и т. Д. c.)). Это означает, что код должен работать для любого файла аналогичного типа, но переменного размера.
Вот несколько фотографий для справки:
Первое изображение показывает, как выглядят данные из листа ImportTXT . Для справки: первая ячейка всегда будет в ячейке «A51».
Данные в столбце ImportTXT
Второе изображение показывает мою цель для внешнего вида таблицы на листе «ExportData». Первая ячейка, в которую должны быть вставлены данные, всегда будет «C8».
Окончательный вид столбца в таблице
Вот макрос, который я записал в попробуйте выбрать все числа только в столбце № точки:
Sub SelectPointNoCol()
'
' SelectPointNoCol Macro
' Selects Point No Column and pastes it in the corresponding column in the table.
Sheets("ImportTXT").Select
Range("A51").Select
Range(Selection, ActiveCell.SpecialCells(xlLastCell)).Select
Range(Selection, Selection.End(xlToLeft)).Select
Range(Selection, Selection.End(xlToLeft)).Select
Selection.SpecialCells(xlCellTypeConstants, 23).Select
Selection.Copy
Sheets("ExtractData").Select
Range("C8").Select
ActiveSheet.Paste
End Sub
К сожалению, этот метод выбора дает мне ошибку во время выполнения, и я не уверен, как ее исправить. После прохождения кода один за другим, похоже, что на моем компьютере код Range(Selection, Selection.End(xlToLeft)).Select
не выполняет свою работу по выбору только столбца № точки. Мой процесс заключался в следующем: выберите ячейку A51 на листе ImportTXT , выберите Ctrl + Shift + End, затем дважды Ctrl + Shift + стрелка влево (<-), затем на вкладке Home нажмите Find & Select, GoToSpecial, отметьте «константы», затем скопируйте и вставьте числа в столбец PointNo на листе <em>ExtractData .
Примечание: Номер точки не совсем относится к остальным данным, это просто маркер, а также может быть буква, например A, B, C, et c. но числа использовались только что.
Спасибо заранее.