Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Excel
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 07.06.2013, 04:41   #1
Klerik97
 
Регистрация: 07.06.2013
Сообщений: 3
По умолчанию некорректно работает скрипт

Доброго времени суток! Суть в том, что скрипт копирует данные из файла rod.xls, а не из открывшегося. Пересмотрел не один раз, вроде все правильно, помогите с проблемой. Код прилагается.(office 2003)

x = 0
Const myPattern = "*.XLS"
Dim myPath As String, myName As String, Wb As Workbook

myPath = CurDir & Application.PathSeparator
myName = Dir(myPath & myPattern, vbNormal + vbArchive)
Do While myName <> ""
Set Wb = Workbooks.Open(Filename:=myPath & myName _
, AddToMRU:=False)
x = x + 1

Wb.Activate
Range("H8").MergeArea.Copy
Windows("rod.xls").Activate
Cells(x, 1).Select
ActiveSheet.Paste

Wb.Close
myName = Dir ' Get next entry.
Loop


End Sub
Klerik97 вне форума Ответить с цитированием
Старый 07.06.2013, 06:21   #2
kuklp
Участник клуба
 
Регистрация: 02.05.2010
Сообщений: 1,390
По умолчанию

Правильно и копирует. Вы ему так задали. Хотите, чтоб копировало из открытой, строки:
Код:
Wb.Activate
Range("H8").MergeArea.Copy
Windows("rod.xls").Activate
Cells(x, 1).Select
ActiveSheet.Paste
замените на:
Код:
Wb.Activesheet.Range("H8").MergeArea.Copy workbooks("rod.xls").Activesheet.Cells(x, 1)
mailto: kuklp60@gmail.com, ящики для благодарностей:
WM Z206653985942, R334086032478, U238399322728
kuklp вне форума Ответить с цитированием
Старый 07.06.2013, 12:59   #3
Klerik97
 
Регистрация: 07.06.2013
Сообщений: 3
По умолчанию

Цитата:
Сообщение от kuklp Посмотреть сообщение
Правильно и копирует. Вы ему так задали. Хотите, чтоб копировало из открытой, строки:
Код:
Wb.Activate
Range("H8").MergeArea.Copy
Windows("rod.xls").Activate
Cells(x, 1).Select
ActiveSheet.Paste
замените на:
Код:
Wb.Activesheet.Range("H8").MergeArea.Copy workbooks("rod.xls").Activesheet.Cells(x, 1)
Спасибо, помогло!
Klerik97 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Некорректно работает TidHTTP denbox Общие вопросы Delphi 4 16.01.2013 12:13
Некорректно работает программа. JIOBEJIAC Помощь студентам 0 19.12.2011 20:47
некорректно работает WaitForMultipleObjects bazilior Общие вопросы C/C++ 2 17.04.2010 20:15
IdHTTP1 некорректно работает nike-p Работа с сетью в Delphi 9 23.07.2008 23:13