powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Обработать ошибку, если файл не найден
10 сообщений из 35, страница 2 из 2
Обработать ошибку, если файл не найден
    #36266637
Hugo121
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Добавил обработку первого файла, обработку ошибок включил, дальше по аналогии добавьте сами, писать много (ищите по " 'добавлено" и " 'добавлено условие"):

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
75.
76.
77.
78.
79.
80.
81.
82.
83.
84.
85.
86.
87.
88.
89.
90.
91.
92.
93.
94.
95.
96.
97.
98.
99.
100.
101.
102.
103.
104.
105.
106.
107.
108.
109.
110.
111.
112.
113.
114.
115.
116.
117.
118.
119.
120.
121.
122.
123.
124.
125.
126.
127.
128.
129.
130.
131.
132.
133.
134.
135.
136.
137.
138.
139.
140.
141.
142.
143.
144.
145.
146.
147.
148.
149.
150.
151.
152.
153.
154.
155.
156.
157.
158.
159.
160.
161.
162.
163.
164.
165.
166.
167.
168.
169.
170.
171.
172.
173.
174.
175.
176.
177.
178.
179.
180.
181.
182.
183.
184.
185.
186.
187.
188.
189.
190.
191.
192.
193.
194.
195.
196.
197.
198.
199.
200.
201.
202.
203.
204.
205.
206.
207.
208.
209.
210.
211.
212.
213.
214.
215.
216.
217.
218.
219.
220.
221.
222.
223.
224.
225.
226.
227.
228.
Private Sub CommandButton1_Click()
Dim dFirstDate As Date 'объявление переменных
Dim dLastDate As Date
Dim dDate As Date
Dim iDay As Integer
Dim iMonthNum As Integer
Dim iYear As Integer
Dim iTempY As Integer
Dim iTempM As Integer
Dim j As Integer
Dim k As Integer
Dim q As Integer
Dim h As Integer
Dim iTempD As Integer
Dim t As Integer
Dim s As Integer
Dim sMonthName As String
Dim wb As Workbook
Dim OPS As Workbook
Dim wbRef As Workbook
Dim wbDaily As Workbook
Dim wbRefDaily As Workbook
Dim wbCps As Workbook
Dim wbCrush As Workbook
Dim wbReestr As Workbook
Dim wbBottl As Workbook
Dim wbHulls As Workbook




dFirstDate = ActiveWorkbook.Worksheets("Week Summary").Range("C7").Value 'определяем дату начала недели
dLastDate = ActiveWorkbook.Worksheets("Week Summary").Range("W7").Value 'определяем дату конца недели
Set OPS = ThisWorkbook

'определяем, введена ли начальная и конечная даты недели

If IsEmpty(ActiveWorkbook.Worksheets("Week Summary").Range("C7")) Then
MsgBox ("Введите дату начала недели в листе Week Summary")
ElseIf IsEmpty(ActiveWorkbook.Worksheets("Week Summary").Range("W7")) Then
MsgBox ("Введите дату конца недели в листе Week Summary")
Else
iTempY =  0  'временная переменная для определения года
iTempM =  0  'временная переменная для определения месяца

For dDate = dFirstDate To dLastDate
iMonthNum = DatePart("m", dDate) 'определение номера месяца
iDay = DatePart("d", dDate) 'определение номера дня
iYear = DatePart("yyyy", dDate) 'определение номера года
sMonthName = fGetMonthName(iMonthNum) 'вызов функции, которая возвращает название месяца по его номеру
Application.ScreenUpdating = False 'запрет обновления экрана
'проверка, соответствует ли начальный год и месяц текущему
If (iTempY <> iYear) Or (iTempM <> iMonthNum) Then

On Error Resume Next ' временно меняем обработку ошибок на это

wbNotOpen =  0  'добавлено
Set wb = Workbooks.Open("\\Shared Projects\Operations Reports\QC Reports - Crush & Seeds\" & iYear & "\QC Crush " & sMonthName & ".xls", False)
If Not wb Is Nothing Then 'если файл открылся, то дальнейшее пропускаем 'добавлено условие
Else 'иначе
    ChDir "\\Shared Projects\Operations Reports\QC Reports - Crush & Seeds\" & iYear & "\" 'чтоб меньше перебирать
    openxls = Application _
    .GetOpenFilename("QC Crush****.xls, *.xls", , "QC Crush****.xls", , False)
    If openxls <> False Then
    Set wb = Workbooks.Open(Filename:=openxls, ReadOnly:=False)
    Else
    wbNotOpen =  1  'если юзер отказался выбирать файл, обработать флаг далее в коде
    End If
End If


Set wbRef = Workbooks.Open("\\Shared Projects\Operations Reports\QC Reports - Refinery & Bottling\" & iYear & "\QC Report Refinery " & sMonthName & ".xls", False)


Set wbCps = Workbooks.Open("\\Shared Projects\Reports\Silos_Shifts\Season 2009\ЦПС-общий учет.xls", False)


Set wbReestr = Workbooks.Open("\\Shared Projects\Reports\Silos_Shifts\Season 2009\Реестр отходов.xls", False)


Set wbBottl = Workbooks.Open("\\Shared Projects\Operations Reports\Weekly Plant Report\" & iYear & "\BOTTLING - СМЕННЫЕ ЖУРНАЛЫ\KEP_Bottling - сменный журнал " & sMonthName & ".xls", False)


Set wbHulls = Workbooks.Open("\\Shared Projects\Operations Reports\Energy supplies\" & iYear & "\Gas & Hulls.xls", False)



On Error GoTo ErrHandler
iTempY = iYear 'присваиваем временную переменную текущему значению года
iTempM = iMonthNum 'присваиваем временную переменную текущему значению месяца
End If

'копирование нужных значений ячеек из файла QC Crush
If wbNotOpen <>  1  Then  'добавлено условие
For i =  1  To wb.Worksheets("Crush").UsedRange.Rows.Count
If wb.Worksheets.Item("Crush").Cells(i,  4 ).Value = iDay Then
If wb.Worksheets.Item("Crush").Cells(i,  5 ).Value = ("Д1 Массовая доля сора,%") Then
OPS.Worksheets.Item("Data input Volumes & Quality").Cells( 30 ,  20  + (dDate - dFirstDate)).Value = wb.Worksheets.Item("Crush").Cells(i,  32 ).Value
ElseIf wb.Worksheets.Item("Crush").Cells(i,  5 ).Value = ("Д1 Массовая доля влаги,%") Then
OPS.Worksheets.Item("Data input Volumes & Quality").Cells( 31 ,  20  + (dDate - dFirstDate)).Value = wb.Worksheets.Item("Crush").Cells(i,  32 ).Value
ElseIf wb.Worksheets.Item("Crush").Cells(i,  5 ).Value = ("Д1 Массовая доля масла M0, %") Then
OPS.Worksheets.Item("Data input Volumes & Quality").Cells( 32 ,  20  + (dDate - dFirstDate)).Value = wb.Worksheets.Item("Crush").Cells(i,  32 ).Value
ElseIf wb.Worksheets.Item("Crush").Cells(i,  5 ).Value = ("Д1 Лузжистость при факт.влажности и сорности Л0,%") Then
OPS.Worksheets.Item("Data input Volumes & Quality").Cells( 35 ,  20  + (dDate - dFirstDate)).Value = wb.Worksheets.Item("Crush").Cells(i,  32 ).Value
ElseIf wb.Worksheets.Item("Crush").Cells(i,  5 ).Value = ("Д3Л Вынос ядра,%") Then
OPS.Worksheets.Item("Data input Volumes & Quality").Cells( 37 ,  20  + (dDate - dFirstDate)).Value = wb.Worksheets.Item("Crush").Cells(i,  32 ).Value
ElseIf wb.Worksheets.Item("Crush").Cells(i,  5 ).Value = ("Д7 Протеин, %") Then
OPS.Worksheets.Item("Data input Volumes & Quality").Cells( 38 ,  20  + (dDate - dFirstDate)).Value = wb.Worksheets.Item("Crush").Cells(i,  32 ).Value
ElseIf wb.Worksheets.Item("Crush").Cells(i,  5 ).Value = ("Д7 Массовая доля влаги, %") Then
OPS.Worksheets.Item("Data input Volumes & Quality").Cells( 39 ,  20  + (dDate - dFirstDate)).Value = wb.Worksheets.Item("Crush").Cells(i,  32 ).Value
ElseIf wb.Worksheets.Item("Crush").Cells(i,  5 ).Value = ("Д7 Массовая доля масла,%") Then
OPS.Worksheets.Item("Data input Volumes & Quality").Cells( 40 ,  20  + (dDate - dFirstDate)).Value = wb.Worksheets.Item("Crush").Cells(i,  32 ).Value
ElseIf wb.Worksheets.Item("Crush").Cells(i,  5 ).Value = ("Д3Л Массовая доля масла,%") Then
OPS.Worksheets.Item("Data input Volumes & Quality").Cells( 41 ,  20  + (dDate - dFirstDate)).Value = wb.Worksheets.Item("Crush").Cells(i,  32 ).Value
End If
End If
Next i
End If  'добавлено условие

'копирование нужных значений ячеек из файла QC Refinery
For j =  1  To wbRef.Worksheets("Flows in Process").UsedRange.Rows.Count
If wbRef.Worksheets.Item("Flows in Process").Cells(j,  4 ).Value = iDay Then
If wbRef.Worksheets.Item("Flows in Process").Cells(j,  6 ).Value = ("P10 Deodorised Oil Cold Test 1hr") Then
OPS.Worksheets.Item("Data input Volumes & Quality").Cells( 44 ,  20  + (dDate - dFirstDate)).Value = wbRef.Worksheets.Item("Flows in Process").Cells(j,  34 ).Value
ElseIf wbRef.Worksheets.Item("Flows in Process").Cells(j,  6 ).Value = ("P10 Deodorised Oil Acid Value") Then
OPS.Worksheets.Item("Data input Volumes & Quality").Cells( 45 ,  20  + (dDate - dFirstDate)).Value = wbRef.Worksheets.Item("Flows in Process").Cells(j,  34 ).Value
ElseIf wbRef.Worksheets.Item("Flows in Process").Cells(j,  6 ).Value = ("P10 Deodorised Oil Peroxide Value") Then
OPS.Worksheets.Item("Data input Volumes & Quality").Cells( 47 ,  20  + (dDate - dFirstDate)).Value = wbRef.Worksheets.Item("Flows in Process").Cells(j,  34 ).Value
ElseIf wbRef.Worksheets.Item("Flows in Process").Cells(j,  6 ).Value = ("P1 Crude Oil Phosphorus (%)") Then
OPS.Worksheets.Item("Data input Volumes & Quality").Cells( 48 ,  20  + (dDate - dFirstDate)).Value = wbRef.Worksheets.Item("Flows in Process").Cells(j,  34 ).Value
ElseIf wbRef.Worksheets.Item("Flows in Process").Cells(j,  6 ).Value = ("P10 Deodorised Oil Phosphorus (%)") Then
OPS.Worksheets.Item("Data input Volumes & Quality").Cells( 49 ,  20  + (dDate - dFirstDate)).Value = wbRef.Worksheets.Item("Flows in Process").Cells(j,  34 ).Value
End If
End If
Next j
'копирование нужных значений ячеек из файлов Daily Report Crush & Silos за все числа месяца
For iTempD =  0  To iDay
iTempD = iDay
Set wbDaily = Workbooks.Open("\\Shared Projects\Operations Reports\Production Reports - Crush & Seeds\Daily Report Crush & Silos\Daily Report Crush & Silos " & sMonthName & " " & iYear & "\Daily Report Crush & Silos " & sMonthName & " " & iTempD & ".xls", False)
OPS.Worksheets.Item("Data input Volumes & Quality").Cells( 10 ,  20  + (dDate - dFirstDate)).Value = wbDaily.Worksheets.Item("QA Seeds").Cells( 87 ,  3 ).Value
OPS.Worksheets.Item("Data input Volumes & Quality").Cells( 11 ,  20  + (dDate - dFirstDate)).Value = wbDaily.Worksheets.Item("QA Seeds").Cells( 88 ,  3 ).Value
OPS.Worksheets.Item("Data input Volumes & Quality").Cells( 12 ,  20  + (dDate - dFirstDate)).Value = wbDaily.Worksheets.Item("QA Seeds").Cells( 89 ,  3 ).Value
OPS.Worksheets.Item("Data input Volumes & Quality").Cells( 13 ,  20  + (dDate - dFirstDate)).Value = wbDaily.Worksheets.Item("QA Seeds").Cells( 90 ,  3 ).Value
OPS.Worksheets.Item("Data input Volumes & Quality").Cells( 14 ,  20  + (dDate - dFirstDate)).Value = wbDaily.Worksheets.Item("QA Seeds").Cells( 91 ,  3 ).Value
OPS.Worksheets.Item("Data input Volumes & Quality").Cells( 33 ,  20  + (dDate - dFirstDate)).Value = wbDaily.Worksheets.Item("QA Seeds").Cells( 92 ,  3 ).Value
OPS.Worksheets.Item("Data input Volumes & Quality").Cells( 34 ,  20  + (dDate - dFirstDate)).Value = wbDaily.Worksheets.Item("QA Seeds").Cells( 93 ,  3 ).Value
OPS.Worksheets.Item("Data input Volumes & Quality").Cells( 34 ,  9  + (dDate - dFirstDate)).Value = wbDaily.Worksheets.Item("Сводная").Cells( 49 ,  11 ).Value
OPS.Worksheets.Item("Data input Volumes & Quality").Cells( 35 ,  9  + (dDate - dFirstDate)).Value = wbDaily.Worksheets.Item("Сводная").Cells( 51 ,  11 ).Value
OPS.Worksheets.Item("Data input Volumes & Quality").Cells( 38 ,  9  + (dDate - dFirstDate)).Value = wbDaily.Worksheets.Item("Сводная").Cells( 53 ,  11 ).Value
wbDaily.Close
'копирование необходимых ячеек из файлов Daily Report Refinery & Bottling за каждый день
Set wbRefDaily = Workbooks.Open("\\Shared Projects\Operations Reports\Production Reports - Refinery & Bottling\" & iYear & "\Production Report Refinery & Bottling " & sMonthName & " " & iYear & "\Daily Report Refinery & Bottling " & sMonthName & " " & iTempD & ".xls", False)
OPS.Worksheets.Item("Data input Volumes & Quality").Cells( 17 ,  9  + (dDate - dFirstDate)).Value = wbRefDaily.Worksheets.Item("Сводная").Cells( 149 ,  11 ).Value
OPS.Worksheets.Item("Data input Volumes & Quality").Cells( 21 ,  9  + (dDate - dFirstDate)).Value = wbRefDaily.Worksheets.Item("Сводная").Cells( 153 ,  11 ).Value
OPS.Worksheets.Item("Data input Volumes & Quality").Cells( 22 ,  9  + (dDate - dFirstDate)).Value = wbRefDaily.Worksheets.Item("Сводная").Cells( 238 ,  11 ).Value
OPS.Worksheets.Item("Data input Volumes & Quality").Cells( 45 ,  9  + (dDate - dFirstDate)).Value = wbRefDaily.Worksheets.Item("Сводная").Cells( 30 ,  11 ).Value
OPS.Worksheets.Item("Data input Volumes & Quality").Cells( 46 ,  9  + (dDate - dFirstDate)).Value = wbRefDaily.Worksheets.Item("Сводная").Cells( 96 ,  11 ).Value
OPS.Worksheets.Item("Data input Volumes & Quality").Cells( 47 ,  9  + (dDate - dFirstDate)).Value = wbRefDaily.Worksheets.Item("Сводная").Cells( 97 ,  11 ).Value
OPS.Worksheets.Item("Data input Volumes & Quality").Cells( 49 ,  9  + (dDate - dFirstDate)).Value = wbRefDaily.Worksheets.Item("Сводная").Cells( 71 ,  11 ).Value
wbRefDaily.Close
'копирование данных из файла Daily Report Crushing&Handling
Set wbCrush = Workbooks.Open("\\Shared Projects\Operations Reports\Production Reports - Crush & Seeds\SHIFTS Производственный отчет ПДМ-" & iYear & "\" & sMonthName & "\Daily Report Crushing&Handling " & sMonthName & " " & iTempD & ".xls", False)
OPS.Worksheets.Item("Data input Volumes & Quality").Cells( 41 ,  9  + (dDate - dFirstDate)).Value = wbCrush.Worksheets.Item("Отчет").Cells( 9 ,  10 ).Value
wbCrush.Close
Next iTempD
'копирование данных из файла ЦПС-общий учет (по семечке)
For k =  1  To wbCps.Worksheets("Проверка семечка").UsedRange.Rows.Count
If wbCps.Worksheets.Item("Проверка семечка").Cells(k,  1 ).Value = dDate And wbCps.Worksheets.Item("Проверка семечка").Cells(k +  1 ,  1 ).Value = dDate Then
OPS.Worksheets.Item("Data input Volumes & Quality").Cells( 12 ,  9  + (dDate - dFirstDate)).Value = wbCps.Worksheets.Item("Проверка семечка").Cells(k,  5 ).Value + wbCps.Worksheets.Item("Проверка семечка").Cells(k +  1 ,  5 ).Value
OPS.Worksheets.Item("Data input Volumes & Quality").Cells( 13 ,  9  + (dDate - dFirstDate)).Value = wbCps.Worksheets.Item("Проверка семечка").Cells(k,  6 ).Value + wbCps.Worksheets.Item("Проверка семечка").Cells(k +  1 ,  6 ).Value
OPS.Worksheets.Item("Data input Volumes & Quality").Cells( 14 ,  9  + (dDate - dFirstDate)).Value = wbCps.Worksheets.Item("Проверка семечка").Cells(k +  1 ,  9 ).Value
End If
Next k
'копирование данных из файла ЦПС-общий учет (по шроту)
For q =  1  To wbCps.Worksheets("Проверка шрота").UsedRange.Rows.Count
If wbCps.Worksheets.Item("Проверка шрота").Cells(q,  1 ).Value = dDate And wbCps.Worksheets.Item("Проверка шрота").Cells(q +  1 ,  1 ).Value = dDate Then
OPS.Worksheets.Item("Data input Volumes & Quality").Cells( 28 ,  9  + (dDate - dFirstDate)).Value = wbCps.Worksheets.Item("Проверка шрота").Cells(q,  6 ).Value + wbCps.Worksheets.Item("Проверка шрота").Cells(q +  1 ,  6 ).Value
OPS.Worksheets.Item("Data input Volumes & Quality").Cells( 29 ,  9  + (dDate - dFirstDate)).Value = wbCps.Worksheets.Item("Проверка шрота").Cells(q +  1 ,  7 ).Value
End If
Next q
'копирование данных из файла Реестр отходов
R =  0 
For h =  1  To wbReestr.Worksheets("2009-2010").UsedRange.Rows.Count
If wbReestr.Worksheets.Item("2009-2010").Cells(h,  2 ).Value = dDate And wbReestr.Worksheets.Item("2009-2010").Cells(h,  4 ).Value = ("Лузга") Then
R = R + wbReestr.Worksheets.Item("2009-2010").Cells(h,  8 ).Value
End If
Next h
OPS.Worksheets.Item("Data input Volumes & Quality").Cells( 42 ,  9  + (dDate - dFirstDate)).Value = R
'копирование данных из папки Bottling сменные журналы
For t =  1  To wbBottl.Worksheets("Лист1").UsedRange.Columns.Count
If wbBottl.Worksheets("Лист1").Cells( 1 , t).Value = iDay And wbBottl.Worksheets("Лист1").Cells( 1 , t +  1 ).Value = iDay Then
OPS.Worksheets.Item("Data input Volumes & Quality").Cells( 52 ,  9  + (dDate - dFirstDate)).Value = wbBottl.Worksheets("Лист1").Cells( 72 , t +  1 ).Value
End If
Next t
'копирование данных из файла Gas & Hulls
For s =  1  To wbHulls.Worksheets("Потребление сменное").UsedRange.Rows.Count
If wbHulls.Worksheets("Потребление сменное").Cells(s,  3 ) = dDate Then
OPS.Worksheets.Item("Data input Volumes & Quality").Cells( 43 ,  9  + (dDate - dFirstDate)).Value = wbHulls.Worksheets("Потребление сменное").Cells(s,  10 ).Value + wbHulls.Worksheets("Потребление сменное").Cells(s +  1 ,  10 ).Value
End If
Next s






Next dDate

wb.Close
wbRef.Close
wbCps.Close (False)
wbReestr.Close
wbBottl.Close
wbHulls.Close




End If

ExitHandler:
Application.ScreenUpdating = True 'разрешение обновления экрана (чтобы видеть внесенные изменения)
Exit Sub
ErrHandler:
MsgBox Err.Description
Resume ExitHandler
End Sub


Если решите при отказе юзера выбрать файл выходить из кода, тогда флаги не нужны вообще (и ниже по коду условие проверки флага тоже), а вместо
Код: plaintext
1.
    wbNotOpen =  1  'если юзер отказался выбирать файл, обработать флаг далее в коде
пишем
Код: plaintext
1.
Exit Sub
...
Рейтинг: 0 / 0
Обработать ошибку, если файл не найден
    #36266681
Oksana Slonevskaya
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
последний вопрос: On Error Resume Next добавлять 1 раз в начале или перед каждой попыткой открыть файлы?
...
Рейтинг: 0 / 0
Обработать ошибку, если файл не найден
    #36266687
Oksana Slonevskaya
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
и On Error GoTo ErrHandler вообще не надо?
...
Рейтинг: 0 / 0
Обработать ошибку, если файл не найден
    #36266712
Oksana Slonevskaya
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Oksana Slonevskayaи On Error GoTo ErrHandler вообще не надо?

увидела,пардон
...
Рейтинг: 0 / 0
Обработать ошибку, если файл не найден
    #36266752
Hugo121
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
On Error Resume Next добавлять 1 раз в начале или перед каждой попыткой открыть файлы?
я думаю поставить в начале цикла открытия файлов (уже внутри цикла), т.е. должно срабатывать каждый раз при открытии файлов, открыли - снова GoTo ErrHandler, затем опять при открытии Resume Next и так по кругу.
...
Рейтинг: 0 / 0
Обработать ошибку, если файл не найден
    #36266769
Oksana Slonevskaya
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
то есть я правильно поняла, что так, как щас стоит, так пусть и стоит, добавляем только условия существоания к каждому файлу и все. так?
...
Рейтинг: 0 / 0
Обработать ошибку, если файл не найден
    #36266804
Hugo121
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Да, добавляем индивидуальный вариант этого блока (имя переменной, путь в ChDir, предположительное название файла) к каждому файлу, я там уже в примере раздвинул место:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
If Not wb Is Nothing Then 'если файл открылся, то дальнейшее пропускаем 'добавлено условие
Else 'иначе
    ChDir "\\Shared Projects\Operations Reports\QC Reports - Crush & Seeds\" & iYear & "\" 'чтоб меньше перебирать
    openxls = Application _
    .GetOpenFilename("QC Crush****.xls, *.xls", , "QC Crush****.xls", , False)
    If openxls <> False Then
    Set wb = Workbooks.Open(Filename:=openxls, ReadOnly:=False)
    Else
    wbNotOpen =  1  'если юзер отказался выбирать файл, обработать флаг далее в коде
    End If
End If

ну и проверку этих флагов каждому файлу ниже по коду, если их оставляем.
...
Рейтинг: 0 / 0
Обработать ошибку, если файл не найден
    #36266821
Hugo121
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ну и про индивидуальное обнуление флага перед открытием файла не забудьте
Код: plaintext
1.
wbNotOpen =  0  'добавлено
Но напомню - если юзер ткнёт не в тот файл, код в итоге отработает неверно. В идеале надо найти, как выбор юзера проверить.
...
Рейтинг: 0 / 0
Обработать ошибку, если файл не найден
    #36267194
Oksana Slonevskaya
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
вот уж да... теперь даже и не знаю, как лучше, представить не могу, как осуществлять такую проверку. может быть тогда имеет смысл сделать без выборки файла, а просто при отсутствии файла выдавать сообщение, что такого файла нет и продолжать код?
...
Рейтинг: 0 / 0
Обработать ошибку, если файл не найден
    #36267293
Hugo121
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
как осуществлять такую проверку - может быть проверять хотя бы начало названия файла, или часть названия, или по значению ячейки А10 первого листа, или названию второго листа, или .....
...
Рейтинг: 0 / 0
10 сообщений из 35, страница 2 из 2
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Обработать ошибку, если файл не найден
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]