У меня есть некоторые данные результата в листе Извлечение, что мне нужно активировать ячейку по ячейке и нажать enter. Это нормально для 10 ячеек, но у меня более 40 000. Так что я написал несколько макросовVBA Excel SendKeys Macro
Sub Refresh()
Dim lastrow As Long
lastrow = ActiveWorkbook.Worksheets("Extract").Range("Q" & rows.Count).End(xlUp).Row
For j = 2 To lastrow
Sheets("Extract").Activate
Sheets("Extract").Range("Q" & j).Select
Application.SendKeys "{F2}"
Application.SendKeys "{ENTER}"
DoEvents
Next j
End Sub
И это не работает. Я получаю ошибку gettin 1004 Определяемую приложением или Object-defined ошибку.
Что я делаю неправильно?
Спасибо за помощь
EDIT: Решение было простым. Я не активировал Sheet Extract. У меня есть новая строка в коде, и все работает нормально.
Благодарим за помощь.
В какую строку вы принимаете ошибку? – TMH8885
Вы хотите (или должны) соблюдать ту же процедуру? Можем ли мы полностью удалить вход и просто пропустить его через ваши события? Почему необходимо нажать клавишу ввода для того, чтобы события работали? –
Что я читаю здесь: http://www.mrexcel.com/forum/excel-questions/697548-help-sendkeys-only-first-sendkey-command-works.html - это то, что приложения application.sendkey могут помочь, добавив небольшая задержка, когда они используются один за другим. Может быть, вы могли бы попробовать? Без контекста трудно помочь! –