consolidator
248 строк · 10.1 Кб
1Attribute VB_Name = "M6_ТЭСЦ2"
2Sub П0000_Анализ()
3On Error Resume Next
4M0_Переменные.П0001_Параметры
5
6' "Труба круглая ТЭСЦ-2" '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
7If InStr(1, LCase(Производство), "труба") > 0 _
8And InStr(1, LCase(Производство), "круглая") > 0 _
9And InStr(1, LCase(Производство), "тэсц") > 0 _
10And InStr(1, LCase(Производство), "2") > 0 Then
11Производство = "Труба круглая ТЭСЦ-2"
12Продукт = "ТРУБА Д"
13M3_Общий.П0100_Продукт
14' If InStr(1, LCase(Полное_нименование), "прямошов") > 0 _
15' Or InStr(1, LCase(Полное_нименование), "свар") > 0 _
16' And InStr(1, LCase(Полное_нименование), "вод") = 0 _
17' And InStr(1, LCase(Полное_нименование), "газ") = 0 Then
18' Продукт = "ТРУБА Д"
19' ElseIf InStr(1, LCase(Полное_нименование), "вод") > 0 _
20' And InStr(1, LCase(Полное_нименование), "газ") > 0 Then
21' Продукт = "ТРУБА ДУ"
22' End If
23Толщина_тип = Толщ_стен
24П0100_Диаметр_типовой
25
26Доп_парам1 = Диам_тип
27П0110_Диап_Толщин_по_Продукт
28
29Наименование_УП = Продукт & Диам_тип & " " & Диап_толщин & " ГУ"
30M2_Промежуточный.П0900_Укрупнение
31End If
32
33' "Штрипс ТЭСЦ-2" '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
34If InStr(1, LCase(Производство), "штрип") > 0 _
35And InStr(1, LCase(Производство), "тэсц") > 0 _
36And InStr(1, LCase(Производство), "2") > 0 Then
37Производство = "Штрипс ТЭСЦ-2"
38Продукт = "ПОЛОСА"
39
40Толщина_тип = Толщина
41П0120_Ширина_приведенная
42
43Наименование_УП = Продукт & " " & Диап_толщин & " Ш" & Шир_тип & " ГУ"
44M2_Промежуточный.П0900_Укрупнение
45End If
46
47' "Труба профильная ТЭСЦ-2" '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
48If InStr(1, LCase(Производство), "труба") > 0 _
49And InStr(1, LCase(Производство), "профил") > 0 _
50And InStr(1, LCase(Производство), "тэсц") > 0 _
51And InStr(1, LCase(Производство), "2") > 0 Then
52Производство = "Труба профильная ТЭСЦ-2"
53Продукт = "ТРУБА Д"
54
55Толщина_тип = Толщ_стен
56Доп_парам1 = Размер_проф_1 & "Х" & Размер_проф_2
57П0110_Диап_Толщин_по_Продукт
58
59Наименование_УП = Продукт & Доп_парам1 & " " & Диап_толщин & " ГУ"
60M2_Промежуточный.П0900_Укрупнение
61End If
62End Sub
63
64
65''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
66''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
67''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
68Sub П0130_Профиль_приведенный()
69On Error Resume Next
70If Шир_штрипса = "" Then Шир_штрипса = 0
71Шир_штрипса = Replace(Шир_штрипса, ".", ",")
72Шир_штрипса = CSng(Шир_штрипса)
73
74If Толщина_тип = "" Then Толщина_тип = 0
75Толщина_тип = Replace(Толщина_тип, ".", ",")
76Толщина_тип = CSng(Толщина_тип)
77
78For s0 = 1 To 200
79If Workbooks(ИмяФайла_Раб).Sheets("Справочник").Cells(1, s0) = "Параметры по Продукту ТЭСЦ-2" Then Exit For
80Next
81ш_мин = 5000
82For i = 4 To 300
83If i_строк_НП = 6 And i = 19 Then
84q = q
85End If
86q0 = Workbooks(ИмяФайла_Раб).Sheets("Справочник").Cells(i, s0) 'Производство
87q1 = Workbooks(ИмяФайла_Раб).Sheets("Справочник").Cells(i, s0 + 1) 'Продукт
88q2 = Workbooks(ИмяФайла_Раб).Sheets("Справочник").Cells(i, s0 + 2) 'Доп параметр1
89q3 = Workbooks(ИмяФайла_Раб).Sheets("Справочник").Cells(i, s0 + 3) 'Доп параметр2
90q4 = Workbooks(ИмяФайла_Раб).Sheets("Справочник").Cells(i, s0 + 4) 'Доп параметр3
91q5 = Workbooks(ИмяФайла_Раб).Sheets("Справочник").Cells(i, s0 + 5) 'минимальная толщина
92q6 = Workbooks(ИмяФайла_Раб).Sheets("Справочник").Cells(i, s0 + 6) 'максимальная толщина
93q7 = Workbooks(ИмяФайла_Раб).Sheets("Справочник").Cells(i, s0 + 7) 'Диапазон толщин
94q2 = Replace(q2, ".", ",")
95q2 = CSng(q2)
96q5 = Replace(q5, ".", ",")
97q5 = CSng(q5)
98q6 = Replace(q6, ".", ",")
99q6 = CSng(q6)
100
101If IsNumeric(q2) = True Then
102If UCase(q0) = UCase(Производство) And UCase(q1) = UCase(Продукт) _
103And q5 <= Толщина_тип And Толщина_тип <= q6 And Толщина_тип > 0 Then
104ш_0 = Abs(q2 - Шир_штрипса)
105If ш_мин > ш_0 Then
106ш_мин = ш_0
107Шир_тип = q2
108Диап_толщин = q7
109End If
110End If
111End If
112Next
113End Sub
114
115Sub П0120_Ширина_приведенная()
116On Error Resume Next
117If Шир_штрипса = "" Then Шир_штрипса = 0
118Шир_штрипса = Replace(Шир_штрипса, ".", ",")
119Шир_штрипса = CSng(Шир_штрипса)
120
121If Толщина_тип = "" Then Толщина_тип = 0
122Толщина_тип = Replace(Толщина_тип, ".", ",")
123Толщина_тип = CSng(Толщина_тип)
124
125For s0 = 1 To 200
126If Workbooks(ИмяФайла_Раб).Sheets("Справочник").Cells(1, s0) = "Параметры по Продукту ТЭСЦ-2" Then Exit For
127Next
128ш_мин = 5000
129For i = 4 To 300
130If i_строк_НП = 6 And i = 19 Then
131q = q
132End If
133q0 = Workbooks(ИмяФайла_Раб).Sheets("Справочник").Cells(i, s0) 'Производство
134q1 = Workbooks(ИмяФайла_Раб).Sheets("Справочник").Cells(i, s0 + 1) 'Продукт
135q2 = Workbooks(ИмяФайла_Раб).Sheets("Справочник").Cells(i, s0 + 2) 'Доп параметр1
136q3 = Workbooks(ИмяФайла_Раб).Sheets("Справочник").Cells(i, s0 + 3) 'Доп параметр2
137q4 = Workbooks(ИмяФайла_Раб).Sheets("Справочник").Cells(i, s0 + 4) 'Доп параметр3
138q5 = Workbooks(ИмяФайла_Раб).Sheets("Справочник").Cells(i, s0 + 5) 'минимальная толщина
139q6 = Workbooks(ИмяФайла_Раб).Sheets("Справочник").Cells(i, s0 + 6) 'максимальная толщина
140q7 = Workbooks(ИмяФайла_Раб).Sheets("Справочник").Cells(i, s0 + 7) 'Диапазон толщин
141q2 = Replace(q2, ".", ",")
142q2 = CSng(q2)
143q5 = Replace(q5, ".", ",")
144q5 = CSng(q5)
145q6 = Replace(q6, ".", ",")
146q6 = CSng(q6)
147
148If IsNumeric(q2) = True Then
149If UCase(q0) = UCase(Производство) And UCase(q1) = UCase(Продукт) _
150And q5 <= Толщина_тип And Толщина_тип <= q6 And Толщина_тип > 0 Then
151ш_0 = Abs(q2 - Шир_штрипса)
152If ш_мин > ш_0 Then
153ш_мин = ш_0
154Шир_тип = q2
155Диап_толщин = q7
156End If
157End If
158End If
159Next
160End Sub
161
162Sub П0100_Диаметр_типовой()
163On Error Resume Next
164If Диаметр = "" Then Диаметр = 0
165Диаметр = Replace(Диаметр, ".", ",")
166Диаметр = CSng(Диаметр)
167If Толщина_тип = "" Then Толщина_тип = 0
168Толщина_тип = Replace(Толщина_тип, ".", ",")
169Толщина_тип = CSng(Толщина_тип)
170
171For s0 = 1 To 200
172If Workbooks(ИмяФайла_Раб).Sheets("Справочник").Cells(1, s0) = "Параметры по Продукту ТЭСЦ-2" Then Exit For
173Next
174' Диам_тип = 0
175д_мин = 5000
176For i = 4 To 300
177If i_строк_НП = 67 And i = 11 Then
178q = q
179End If
180q0 = Workbooks(ИмяФайла_Раб).Sheets("Справочник").Cells(i, s0) 'Производство
181q1 = Workbooks(ИмяФайла_Раб).Sheets("Справочник").Cells(i, s0 + 1) 'Продукт
182q2 = Workbooks(ИмяФайла_Раб).Sheets("Справочник").Cells(i, s0 + 2) 'Доп параметр1
183q3 = Workbooks(ИмяФайла_Раб).Sheets("Справочник").Cells(i, s0 + 3) 'Доп параметр2
184q4 = Workbooks(ИмяФайла_Раб).Sheets("Справочник").Cells(i, s0 + 4) 'Доп параметр3
185q5 = Workbooks(ИмяФайла_Раб).Sheets("Справочник").Cells(i, s0 + 5) 'минимальная толщина
186q6 = Workbooks(ИмяФайла_Раб).Sheets("Справочник").Cells(i, s0 + 6) 'максимальная толщина
187q7 = Workbooks(ИмяФайла_Раб).Sheets("Справочник").Cells(i, s0 + 7) 'Диапазон толщин
188
189q2 = Replace(q2, ".", ",")
190q2 = CSng(q2)
191q5 = Replace(q5, ".", ",")
192q5 = CSng(q5)
193q6 = Replace(q6, ".", ",")
194q6 = CSng(q6)
195
196If IsNumeric(q2) = True Then
197If UCase(q0) = UCase(Производство) _
198And UCase(q1) = UCase(Продукт) _
199And q5 <= Толщина_тип And Толщина_тип <= q6 Then
200д_0 = Abs(q2 - Диаметр)
201If д_мин > д_0 Then
202д_мин = д_0
203Диам_тип = q2
204End If
205End If
206End If
207Next
208End Sub
209
210
211Sub П0110_Диап_Толщин_по_Продукт()
212On Error Resume Next
213If Толщина_тип = "" Then Толщина_тип = 0
214Толщина_тип = Replace(Толщина_тип, ".", ",")
215Толщина_тип = CSng(Толщина_тип)
216For s0 = 1 To 200
217If Workbooks(ИмяФайла_Раб).Sheets("Справочник").Cells(1, s0) = "Параметры по Продукту ТЭСЦ-2" Then Exit For
218Next
219For i = 4 To 300
220If i = 41 Then
221q = q
222End If
223q0 = Workbooks(ИмяФайла_Раб).Sheets("Справочник").Cells(i, s0) 'Производство
224q1 = Workbooks(ИмяФайла_Раб).Sheets("Справочник").Cells(i, s0 + 1) 'Продукт
225q2 = Workbooks(ИмяФайла_Раб).Sheets("Справочник").Cells(i, s0 + 2) 'Доп параметр1
226q3 = Workbooks(ИмяФайла_Раб).Sheets("Справочник").Cells(i, s0 + 3) 'Доп параметр2
227q4 = Workbooks(ИмяФайла_Раб).Sheets("Справочник").Cells(i, s0 + 4) 'Доп параметр3
228q5 = Workbooks(ИмяФайла_Раб).Sheets("Справочник").Cells(i, s0 + 5) 'минимальная толщина
229q6 = Workbooks(ИмяФайла_Раб).Sheets("Справочник").Cells(i, s0 + 6) 'максимальная толщина
230q7 = Workbooks(ИмяФайла_Раб).Sheets("Справочник").Cells(i, s0 + 7) 'Диапазон толщин
231
232q2 = Replace(q2, ".", ",")
233q2 = CSng(q2)
234q5 = Replace(q5, ".", ",")
235q5 = CSng(q5)
236q6 = Replace(q6, ".", ",")
237q6 = CSng(q6)
238
239т_мин = 1000
240т_макс = 1000
241If UCase(q0) = UCase(Производство) _
242And UCase(q1) = UCase(Продукт) _
243And Доп_парам1 = q2 _
244And q5 <= Толщина_тип And Толщина_тип <= q6 And Толщина_тип > 0 Then
245Диап_толщин = q7: Exit Sub
246End If
247Next
248End Sub
249
250