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

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

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

Восстановить пароль

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

Ответ
 
Опции темы Поиск в этой теме
Старый 01.03.2011, 12:19   #1
nik1905
Пользователь
 
Регистрация: 27.07.2009
Сообщений: 27
По умолчанию работа с несколькими файлами

Здравствуйте!

Подскажите, пожалуйста, как решить слебующую проблемку.

у меня есть следующий процесс:
1. Я открываю файл excel, который храниться на жестком диске
2. Запускаю макрос, он выполняется
3. потом нужна принудительная остановка, для перехода к другому файлу, который я открываю из базы данных
4. далее должен продолжить работу макрос уже с этими двумя файлами.

Как организовать принудительную остановку?

Спасибо!
nik1905 вне форума Ответить с цитированием
Старый 01.03.2011, 12:28   #2
IgorGO
Новичок
СтарожилДжуниор
 
Аватар для IgorGO
 
Регистрация: 05.02.2008
Сообщений: 9,487
По умолчанию

Цитата:
Как организовать принудительную остановку?
а зачем?
в теле макроса откройте этот второй файл (если не возможно открыть автоматически, заранее не известно имя файла, выполните диалог, пусть пользователь выберет файл) и пусть себе все работает дальше...

пожалуйста
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете
IgorGO вне форума Ответить с цитированием
Старый 01.03.2011, 12:32   #3
nik1905
Пользователь
 
Регистрация: 27.07.2009
Сообщений: 27
По умолчанию

а подскажите как реализовать выбор файла?
у меня в справочнике нет функций работы с файлами(
nik1905 вне форума Ответить с цитированием
Старый 01.03.2011, 13:02   #4
IgorGO
Новичок
СтарожилДжуниор
 
Аватар для IgorGO
 
Регистрация: 05.02.2008
Сообщений: 9,487
По умолчанию

в редакторе ВБА задал вопрос FileDialog
получил такой пример:

Код:
Sub Main()

    'Declare a variable as a FileDialog object.
    Dim fd As FileDialog

    'Create a FileDialog object as a File Picker dialog box.
    Set fd = Application.FileDialog(msoFileDialogFilePicker)

    'Declare a variable to contain the path
    'of each selected item. Even though the path is aString,
    'the variable must be a Variant because For Each...Next
    'routines only work with Variants and Objects.
    Dim vrtSelectedItem As Variant

    'Use a With...End With block to reference the FileDialog object.
    With fd

        'Use the Show method to display the File Picker dialog box and return the user's action.
        'The user pressed the button.
        If .Show = -1 Then

            'Step through each string in the FileDialogSelectedItems collection.
            For Each vrtSelectedItem In .SelectedItems

                'vrtSelectedItem is aString that contains the path of each selected item.
                'You can use any file I/O functions that you want to work with this path.
                'This example displays the path in a message box.
                MsgBox "The path is: " & vrtSelectedItem

            Next vrtSelectedItem
        'The user pressed Cancel.
        Else
        End If
    End With

    'Set the object variable to Nothing.
    Set fd = Nothing

End Sub
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете
IgorGO вне форума Ответить с цитированием
Старый 01.03.2011, 13:07   #5
nik1905
Пользователь
 
Регистрация: 27.07.2009
Сообщений: 27
По умолчанию

Спасибо!
nik1905 вне форума Ответить с цитированием
Старый 01.03.2011, 13:18   #6
nik1905
Пользователь
 
Регистрация: 27.07.2009
Сообщений: 27
По умолчанию

только дело в том, что файл не сохранен, он просто открыт, заполнен другой прогой.
nik1905 вне форума Ответить с цитированием
Старый 01.03.2011, 13:25   #7
IgorGO
Новичок
СтарожилДжуниор
 
Аватар для IgorGO
 
Регистрация: 05.02.2008
Сообщений: 9,487
По умолчанию

excel дал ему какое-то временное имя "Книга№.xls" обращайтесь к нему по этому имени. или пусть та прога, которая его заполняла его же и сохранит под заранее заданным именем.
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете

Последний раз редактировалось IgorGO; 01.03.2011 в 13:31.
IgorGO вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Работа с несколькими массивами mexx1337 Паскаль, Turbo Pascal, PascalABC.NET 1 23.12.2010 17:04
Работа с несколькими массивами mexx1337 Паскаль, Turbo Pascal, PascalABC.NET 1 16.12.2010 18:13
Работа с несколькими БД Янка:) Базы данных (ADO.NET, LinqToSql, ORM Entity Framework, NHibernate) 6 01.11.2010 14:55
Работа с несколькими формами zmey31313 Общие вопросы Delphi 10 01.12.2009 11:24
проблема при работе с несколькими исходными файлами Grind Помощь студентам 2 19.02.2008 19:37