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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 30.01.2012, 08:52   #1
slone2179
Форумчанин
 
Аватар для slone2179
 
Регистрация: 22.04.2011
Сообщений: 155
По умолчанию Работа с 2-мя файлами Excel

Доброе утро! Добрый день! Добрый вечер!
Очень прошу помочь в решении небольшой проблемы. Есть файл primer.xls в поле Description вожу данные например болт, дуб и происходит проверка с файлом 2.xls. Т.е. после ввода например дуб появляется цена из файла 2.xls. Это все реализовал. Вопрос вот в чем: Как сделать проверку на отсутствие файла. Т.е. если файла нет, то при вводе курсор просто переходил на другую строку, а не открывал файл 2.xls. Спасибо.
Вложения
Тип файла: rar primer.rar (15.7 Кб, 16 просмотров)
slone2179 вне форума Ответить с цитированием
Старый 30.01.2012, 10:03   #2
staniiislav
Форумчанин
 
Аватар для staniiislav
 
Регистрация: 16.04.2010
Сообщений: 695
По умолчанию

Цитата:
Сообщение от slone2179 Посмотреть сообщение
Доброе утро! Добрый день! Добрый вечер!
Очень прошу помочь в решении небольшой проблемы. Есть файл primer.xls в поле Description вожу данные например болт, дуб и происходит проверка с файлом 2.xls. Т.е. после ввода например дуб появляется цена из файла 2.xls. Это все реализовал. Вопрос вот в чем: Как сделать проверку на отсутствие файла. Т.е. если файла нет, то при вводе курсор просто переходил на другую строку, а не открывал файл 2.xls. Спасибо.
http://www.excel-vba.ru/tag/fajly/
смотрите блог "Как проверить открыта ли книга?"
Единственный способ стать умнее, играть с более умным противником...
staniiislav вне форума Ответить с цитированием
Старый 30.01.2012, 10:16   #3
slone2179
Форумчанин
 
Аватар для slone2179
 
Регистрация: 22.04.2011
Сообщений: 155
По умолчанию

Цитата:
Сообщение от staniiislav Посмотреть сообщение
http://www.excel-vba.ru/tag/fajly/
смотрите блог "Как проверить открыта ли книга?"
Спасибо, Staniiislav! Я уже пробовал эту проверку. Делал и If wbBook.Name <>, но при отсутствии файла, выходит ошибка отсутствия файла. А мне хотелось, чтобы ни ошибки не выходило. Даже если в файле primer.xls удалишь какие-то данных, все равно открывается файл 2.xls/
slone2179 вне форума Ответить с цитированием
Старый 30.01.2012, 10:47   #4
Hugo121
Старожил
 
Регистрация: 11.05.2010
Сообщений: 5,166
По умолчанию

Попробуйте
Код:
        If Dir("\\server\Share\Hy-Lok\Заказы\2.xls") <> "" Then
webmoney: E265281470651 Z422237915069 R418926282008
Hugo121 вне форума Ответить с цитированием
Старый 30.01.2012, 10:55   #5
slone2179
Форумчанин
 
Аватар для slone2179
 
Регистрация: 22.04.2011
Сообщений: 155
По умолчанию

Цитата:
Сообщение от Hugo121 Посмотреть сообщение
Попробуйте
Код:
        If Dir("\\server\Share\Hy-Lok\Заказы\2.xls") <> "" Then
Спасибо Hugo121, пробовал это тоже, в Then писал свой код, а в противном случае чего только не писал, даже Exit Sub вылетает ошибка. Где копать ?
slone2179 вне форума Ответить с цитированием
Старый 30.01.2012, 11:06   #6
Hugo121
Старожил
 
Регистрация: 11.05.2010
Сообщений: 5,166
По умолчанию

Да, с сетью у меня тоже как-то нестабильно Dir работает.
Попробуйте ещё такой вариант:
Код:
  Set filesys = CreateObject("scripting.filesystemobject")
   If filesys.FileExists("\\server\Share\Hy-Lok\Заказы\2.xls")  Then
webmoney: E265281470651 Z422237915069 R418926282008
Hugo121 вне форума Ответить с цитированием
Старый 30.01.2012, 12:38   #7
slone2179
Форумчанин
 
Аватар для slone2179
 
Регистрация: 22.04.2011
Сообщений: 155
По умолчанию

Hugo121, не помогло. Можно сделать так, чтобы не вылетала ошибка Run-time error 1004 об отсутствии файла?
Можно сделать, чтобы когда я удалял какие-то данные в primer.xls, то файл 2.xls не открывался, т.е. удаляю данных, а файл 2.xls вообще в стороне?
slone2179 вне форума Ответить с цитированием
Старый 30.01.2012, 12:46   #8
Hugo121
Старожил
 
Регистрация: 11.05.2010
Сообщений: 5,166
По умолчанию

Тогда пробуйте так:
Код:
Private Sub Worksheet_Change(ByVal Target As Range)
    Dim myF
    If Target.Value = Empty Then Exit Sub
    On Error Resume Next
    Set WB = Workbooks.Open("\\server\Share\Hy-Lok\Заказы\2.xls")
    If Err = 0 Then
    On Error GoTo 0
    Set Sh = WB.Sheets("Лист1")
'и далее по коду, в конце закройте End If
webmoney: E265281470651 Z422237915069 R418926282008
Hugo121 вне форума Ответить с цитированием
Старый 30.01.2012, 13:07   #9
slone2179
Форумчанин
 
Аватар для slone2179
 
Регистрация: 22.04.2011
Сообщений: 155
По умолчанию

Цитата:
Сообщение от Hugo121 Посмотреть сообщение
Тогда пробуйте так:
Код:
Private Sub Worksheet_Change(ByVal Target As Range)
    Dim myF
    If Target.Value = Empty Then Exit Sub
    On Error Resume Next
    Set WB = Workbooks.Open("\\server\Share\Hy-Lok\Заказы\2.xls")
    If Err = 0 Then
    On Error GoTo 0
    Set Sh = WB.Sheets("Лист1")
'и далее по коду, в конце закройте End If

Hugo121, Спасибо огромное! Это то, что нужно. Все получилось.
slone2179 вне форума Ответить с цитированием
Старый 06.02.2012, 11:20   #10
slone2179
Форумчанин
 
Аватар для slone2179
 
Регистрация: 22.04.2011
Сообщений: 155
По умолчанию

Hugo121, а можно в дополнении этой темы еще вопрос. У меня в моем примере проблема такая. Ввожу данные в ячейку D и после ввода, в ячейку Price летят данные из другого файла 2.xls. Необходимо, чтобы если я захотел ввести в главном файле какой-то новые данные, которых нет в файле 2.xls ошибка - Введенное значение неверно не появлялось, а данные вводились без проблем. Спасибо.
slone2179 вне форума Ответить с цитированием
Ответ


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

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Работа в Delphi с Excel файлами! Leximus Общие вопросы Delphi 5 02.10.2010 11:37
связи между файлами excel redfield Microsoft Office Excel 0 04.05.2010 16:22
Резервное копирование папки с файлами xls (Excel 2003) vfv Microsoft Office Excel 11 12.03.2010 17:05
Работа с файлами из Excel axell_pnz Microsoft Office Excel 4 16.11.2009 11:10
работа с excel файлами через Delphi Winss Помощь студентам 6 08.09.2007 17:54