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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 25.12.2012, 09:06   #11
ertree
Новичок
Джуниор
 
Регистрация: 24.12.2012
Сообщений: 3
По умолчанию

Цитата:
Сообщение от EducatedFool Посмотреть сообщение
ertree, данный код должен работать в любой версии Windows.
Возможно, вы как-то не так его используете?

В чем проявляется проблема?
Выскакивает ошибка? Если да, то на какой строке?
я не могу разобраться, в чем дело. я экспортировал макросы с одного компа на другой, и все те, которые предполагали применение к файлам в папке, перестали работать.

т.е. при запуске предлагается выбрать папку, а после нажатия кнопки ОК происходит НИЧЕГО, т.е. никакие изменения в файле не происходят, но и об ошибках не пишется.

макросы, применяемые непосредственно в документе, работают.

пример неработающего

Код:
Sub макрос()
 Dim sFolder As String, sFiles As String, li As Long
 With Application.FileDialog(msoFileDialogFolderPicker)
        If .Show = False Then Exit Sub
        sFolder = .SelectedItems(1)
 End With
 Application.ScreenUpdating = False
    sFiles = Dir(sFolder & Application.PathSeparator & "*.xls*")
 On Error Resume Next
 Do While sFiles <> ""
        Workbooks.Open sFiles

'начало
макрос
' конец
        ActiveWorkbook.Close SaveChanges:=True
        sFiles = Dir
    Loop
    Application.ScreenUpdating = True
 End Sub

Последний раз редактировалось ertree; 25.12.2012 в 09:46.
ertree вне форума Ответить с цитированием
Старый 25.12.2012, 11:18   #12
EducatedFool
Программист VBA
СуперМодератор
 
Аватар для EducatedFool
 
Регистрация: 13.07.2008
Сообщений: 6,856
По умолчанию

ertree, приношу свои извинения
Код действительно «кривой», требует переделки
(я взял за основу код топикстартера, и не заметил ошибку)

Правильно будет вместо
Код:
Workbooks.Open sFiles
написать
Код:
Workbooks.Open sFolder & Application.PathSeparator & sFiles
и всё заработает
EducatedFool вне форума Ответить с цитированием
Старый 25.12.2012, 11:32   #13
ertree
Новичок
Джуниор
 
Регистрация: 24.12.2012
Сообщений: 3
По умолчанию

Цитата:
Сообщение от EducatedFool Посмотреть сообщение
и всё заработает
Уважаемый EducatedFool!

Спасибо вам огромное!

Всё заработало в лучшем виде, и радости моей нет предела.
ertree вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как в указанной директории узнать названия всех папок evgenrpo Общие вопросы C/C++ 5 08.06.2009 14:20
Как заставить работать CheckBox? ridmal Microsoft Office Word 1 21.05.2009 09:47
Как вывести название папок из указанной папки? zotox Помощь студентам 1 01.05.2009 14:37
Как заставить работать php? yourself Помощь студентам 9 20.05.2008 08:08
Как заставить работать dll ? Volkogriz Общие вопросы Delphi 10 13.12.2007 10:24