Вопрос:
Имея проблему, я написал макрос, который обновляется каждые 2 минуты, чтобы загружать данные с веб-страницы, а последний шаг моего макроса использует функцию “Текст в столбцы”, чтобы она была хорошо разделена на столбцы.
Проблема появляется здесь каждый раз, когда она запускает этот “текст в столбец”, он спрашивает, хочу ли я перезаписать столбцы (и я делаю это), но мне нужно нажимать вручную “ОК”.
Есть ли способ сделать VBA нажатием этой кнопки OK в предупреждении?
Большое спасибо!
Лучший ответ:
Вы можете добавить DoCmd.SendKeys ПЕРЕД инструкцией, которая генерирует диалог.
Ответ №1
Просто добавьте Application.DisplayAlerts = False перед вызовом и верните его в True после.
http://msdn.microsoft.com/en-us/library/office/aa175241%28v=office.11%29.aspx
Обновление: я только что проверил тест, и он не запрашивает меня по умолчанию. Можете ли вы опубликовать код, который используете? Я просто сделал:
Public Sub Test() Dim r As Range Set r = ActiveWorkbook.Sheets(1).Columns(«A:A») r.TextToColumns Destination:=Range(«B1») End Sub
Эта ссылка говорит, что решение DisplayAlerts работает для других.
Ответ №2
Вы должны использовать функцию щелчка мыши. Перед тем, как увеличить окно, чтобы x, y пучки ok кнопок остались такими же. Используйте windows lib 32