consolidator

Форк
0
/
M5_КПК.bas 
177 строк · 7.5 Кб
1
Attribute VB_Name = "M5_КПК"
2
Sub П0000_Анализ()
3
    On Error Resume Next
4
    M0_Переменные.П0001_Параметры
5
    
6
' "КПК Слиток" '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
7
    If "КПК Слиток" = Производство Then
8
        П0100_Марка_стали_КПК_Производство
9
        M2_Промежуточный.П0900_Укрупнение
10
    End If
11
' "КПК Колесо черновое" '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
12
    If InStr(1, LCase(Производство), "кпк") > 0 _
13
    And InStr(1, LCase(Производство), "черновое") > 0 _
14
    And InStr(1, LCase(Производство), "колесо") > 0 Then
15
        Производство = "КПК Колесо черновое"
16
        Продукт = "ЧЕРН КОЛЕСО"
17
        П0130_Диаметр_КПК
18
        Вес_теор = Вес_колес_черн_теор
19
        П0120_КПК_Вес_колес
20
        П0110_Стандарт_КПК_Колесо
21
        Наименование_УП = Продукт & " Д" & Диаметр & " В" & Вес_теор & " " & Стандарт_КПК
22
        If Диаметр = 473 Then Наименование_УП = "ИНСТРУМЕНТ ДЕФОРМАЦИИ"
23
        M2_Промежуточный.П0900_Укрупнение
24
    End If
25
' "КПК Колесо после термообработки" '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
26
    If InStr(1, LCase(Производство), "кпк") > 0 _
27
    And InStr(1, LCase(Производство), "после") > 0 _
28
    And InStr(1, LCase(Производство), "термообработ") > 0 _
29
    And InStr(1, LCase(Производство), "колесо") > 0 Then
30
        Производство = "КПК Колесо после термообработки"
31
        Продукт = "ЧЕРН КОЛЕСО"
32
        П0130_Диаметр_КПК
33
        Вес_теор = Вес_колес_заг_теор
34
        П0120_КПК_Вес_колес
35
        П0110_Стандарт_КПК_Колесная_заготовка
36
        Наименование_УП = Продукт & " Д" & Диаметр & " В" & Вес_теор & " " & Стандарт_КПК
37
        If Диаметр = 473 Then Наименование_УП = "ИНСТРУМЕНТ ДЕФОРМАЦИИ"
38
        M2_Промежуточный.П0900_Укрупнение
39
    End If
40
'"КПК Колесная заготовка"''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
41
    If InStr(1, LCase(Производство), "кпк") > 0 _
42
    And InStr(1, LCase(Производство), "колесная") > 0 _
43
    And InStr(1, LCase(Производство), "заготовка") > 0 Then
44
        Производство = "КПК Колесная заготовка"
45
        Продукт = "КОЛЕС ЗАГОТОВКА"
46
        П0130_Диаметр_КПК
47
        Вес_теор = Вес_колес_заг_теор
48
        П0120_КПК_Вес_колес
49
        П0110_Стандарт_КПК_Колесная_заготовка
50
        Наименование_УП = Продукт & " Д" & Диаметр & " В" & Вес_теор & " " & Стандарт_КПК
51
        If Диаметр = 473 Then Наименование_УП = "ИНСТРУМЕНТ ДЕФОРМАЦИИ"
52
        M2_Промежуточный.П0900_Укрупнение
53
    End If
54
'"КПК Колесо"''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
55
    If "КПК Колесо" = Производство Then
56
        Продукт = "КОЛЕСО"
57
        П0130_Диаметр_КПК
58
        Вес_теор = Вес_колес_теор
59
        П0120_КПК_Вес_колес
60
        П0130_Диаметр_КПК
61
        П0110_Стандарт_КПК_Колесо
62
        Наименование_УП = Продукт & " Д" & Диаметр & " В" & Вес_теор & " " & Стандарт_КПК
63
        M2_Промежуточный.П0900_Укрупнение
64
    End If
65
End Sub
66

67

68
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
69
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
70
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
71

72
Sub П0100_Марка_стали_КПК_Производство()
73
    For s0 = 1 To 200
74
        If Workbooks(ИмяФайла_Раб).Sheets("Справочник").Cells(1, s0) = "Стали КПК" Then Exit For
75
    Next
76
    For i = 4 To 50
77
       q0 = Workbooks(ИмяФайла_Раб).Sheets("Справочник").Cells(i, s0)
78
       q1 = Workbooks(ИмяФайла_Раб).Sheets("Справочник").Cells(i, s0 + 1)
79
       If UCase(Марка_стали) = UCase(q0) Then Наименование_УП = q1
80
    Next
81
End Sub
82

83
Sub П0100_Марка_стали_Сталь_жидкая()
84
    For s0 = 1 To 200
85
        If Workbooks(ИмяФайла_Раб).Sheets("Справочник").Cells(1, s0) = "Стали КПК" Then Exit For
86
    Next
87
    For i = 4 To 500
88
        q0 = Workbooks(ИмяФайла_Раб).Sheets("Справочник").Cells(i, s0)
89
        q1 = Workbooks(ИмяФайла_Раб).Sheets("Справочник").Cells(i, s0 + 1)
90
        If UCase(Марка_стали) = UCase(q0) Then
91
            Наименование_УП = q1
92
            Exit For
93
        End If
94
    Next
95
    
96
End Sub
97

98
Sub П0110_Стандарт_КПК_Колесная_заготовка()
99
    For s0 = 1 To 200
100
        If Workbooks(ИмяФайла_Раб).Sheets("Справочник").Cells(1, s0) = "Стандарты  колесной заготовки" Then Exit For
101
    Next
102
    For i = 4 To 200
103
        q0 = Workbooks(ИмяФайла_Раб).Sheets("Справочник").Cells(i, s0 + 0)
104
        q1 = Workbooks(ИмяФайла_Раб).Sheets("Справочник").Cells(i, s0 + 1)
105
        If UCase(Вес_теор) = UCase(q0) Then
106
            Стандарт_КПК = q1
107
            Exit For
108
        End If
109
    Next
110
End Sub
111

112
Sub П0110_Стандарт_КПК_Колесо()
113
    For s0 = 1 To 200
114
        If Workbooks(ИмяФайла_Раб).Sheets("Справочник").Cells(1, s0) = "Параметры по Продукту КПК" Then Exit For
115
    Next
116
    For i = 4 To 500
117
        q0 = Workbooks(ИмяФайла_Раб).Sheets("Справочник").Cells(i, s0 + 0) 'Производство
118
        q1 = Workbooks(ИмяФайла_Раб).Sheets("Справочник").Cells(i, s0 + 1) 'Продукт
119
        q2 = Workbooks(ИмяФайла_Раб).Sheets("Справочник").Cells(i, s0 + 2) 'Диаметр
120
        q3 = Workbooks(ИмяФайла_Раб).Sheets("Справочник").Cells(i, s0 + 3) 'Вес
121
        q4 = Workbooks(ИмяФайла_Раб).Sheets("Справочник").Cells(i, s0 + 4) 'Стандарт
122
        Диаметр = Replace(Диаметр, ".", ",")
123
        Вес_теор = Replace(Вес_теор, ".", ",")
124
        q2 = Replace(q2, ".", ",")
125
        q3 = Replace(q3, ".", ",")
126
        
127
        If UCase(Производство) = UCase(q0) _
128
        And UCase(Продукт) = UCase(q1) _
129
        And UCase(Диаметр) = UCase(q2) _
130
        And UCase(Вес_теор) = UCase(q3) Then
131
            Стандарт_КПК = q4
132
            Exit For
133
        End If
134
    Next
135
End Sub
136

137
Sub П0120_КПК_Вес_колес()
138
    For s0 = 1 To 200
139
        If Workbooks(ИмяФайла_Раб).Sheets("Справочник").Cells(1, s0) = "Параметры по Продукту КПК" Then Exit For
140
    Next
141
    отклонение_мин_плюс = 2000
142
    отклонение_мин_минус = 2000
143
    For i = 4 To 2000 'Перебор строк в справочной таблице УП
144
        q0 = Workbooks(ИмяФайла_Раб).Sheets("Справочник").Cells(i, s0) 'Производство
145
        q1 = Workbooks(ИмяФайла_Раб).Sheets("Справочник").Cells(i, s0 + 2) 'Диаметр мин
146
        парам_0 = Workbooks(ИмяФайла_Раб).Sheets("Справочник").Cells(i, s0 + 3) 'Вес
147
        If IsNumeric(парам_0) = True And парам_0 > "" Then
148
            отклонение_плюс = CSng(парам_0) - Вес_теор
149
            отклонение_минус = Вес_теор - CSng(парам_0)
150
            If q0 = Производство And q1 = Диаметр Then
151
                If отклонение_мин_плюс > отклонение_плюс Then _
152
                    отклонение_мин_плюс = отклонение_плюс: мин_плюс = парам_0
153
                If отклонение_мин_минус > отклонение_минус Then _
154
                    отклонение_мин_минус = отклонение_минус: мин_минус = парам_0
155
            End If
156
        End If
157
    Next
158
    If Abs(отклонение_мин_плюс) <= Abs(отклонение_мин_минус) Then Вес_теор = мин_плюс
159
    If Abs(отклонение_мин_плюс) > Abs(отклонение_мин_минус) Then Вес_теор = мин_минус
160
End Sub
161

162
Sub П0130_Диаметр_КПК()
163
    For s0 = 1 To 200
164
        If Workbooks(ИмяФайла_Раб).Sheets("Справочник").Cells(1, s0) = "Диаметры колес" Then Exit For
165
    Next
166
    If i_строк_НП Then
167
    q = q
168
    End If
169
    For i = 4 To 200
170
        q0 = Workbooks(ИмяФайла_Раб).Sheets("Справочник").Cells(i, s0)
171
        q1 = Workbooks(ИмяФайла_Раб).Sheets("Справочник").Cells(i, s0 + 1)
172
        q2 = Workbooks(ИмяФайла_Раб).Sheets("Справочник").Cells(i, s0 + 2)
173
        If UCase(Производство) = UCase(q0) And CSng(Диаметр) = CSng(q1) Then
174
            Диаметр = q2
175
        End If
176
    Next
177
End Sub
178

179

180

181

182

Использование cookies

Мы используем файлы cookie в соответствии с Политикой конфиденциальности и Политикой использования cookies.

Нажимая кнопку «Принимаю», Вы даете АО «СберТех» согласие на обработку Ваших персональных данных в целях совершенствования нашего веб-сайта и Сервиса GitVerse, а также повышения удобства их использования.

Запретить использование cookies Вы можете самостоятельно в настройках Вашего браузера.