Требуется создать меню, которое позволяло бы клиенту заказать авто. На самих листах должны отображаться введённые им данные. Нужно сделать: подсчёт общей стоимости, фильтры, поиск, список и удаление из списка. Перенос введённых с одного листа на другой, можно сделать с помощью копирования и вставки или в форме заполнения листа. Id пишется на 1 листе и копируется во все остальные, там ещё небольшой баг с ним, не сразу удаляется с 1 строки, но можно сделать подругому.
Нужно перенести значения столбцов M(1) M(2) из листа 2 в лист 3.
Скрытый текст
Private Sub UserForm_Initialize() Combo1.AddItem "Автоматическая", 0 Combo1.AddItem "Ручная", 1 Combo2.AddItem "Renault Logan", 0 Combo2.AddItem "Volkswagen Polo", 1 Combo2.AddItem "Hyundai Solaris", 2 Combo2.AddItem "Lexus LS600H", 3 End Sub Private Sub CommandButton1_Click() Dim M(1 To 7) As Double Dim L(1 To 2) As String Dim i As Integer Dim N As Integer Dim O As Object Dim V As Object Set V = Worksheets("Выбор_авто").Cells(1, 1).CurrentRegion Set O = Worksheets("Выбор_авто").Cells(1, 3).CurrentRegion N = O.Rows.Count + 1 With Выбор_авто If Combo2.Value = "Renault Logan" Then M(3) = 40000 If Combo2.Value = "Volkswagen Polo" Then M(3) = 50000 If Combo2.Value = "Lexus LS600H" Then M(3) = 45000 If Combo2.Value = "Hyundai Solaris" Then M(3) = 65000 If CheckBox2.Value = True Then M(4) = 250 If CheckBox2.Value = False Then M(4) = 0 If CheckBox3.Value = True Then M(5) = 150 If CheckBox3.Value = False Then M(5) = 0 M(6) = M(3) + M(4) + M(5) L(1) = Combo2.Text L(2) = Combo1.Text
For i = 1 To 2 Worksheets("Выбор_авто").Cells(N, i).Value = L(i) Next i With Выбор_авто Combo2.Text = " " Combo1.Text = " " End With If Len(M(1)) = 0 Or Len(M(2)) = 0 Or Len(M(3)) = 0 Then MsgBox "Заполните ВСЕ поля!!!", vbExclamation, "Ошибка!" Exit Sub End If
For i = 3 To 6 Worksheets("Выбор_авто").Cells(N, i).Value = M(i) Next i With Выбор_авто CheckBox2.Value = " " CheckBox3.Value = " " End With Unload Me End With End Sub
Требуется создать меню, которое позволило бы клиенту зарегистрироваться в БД под определённым ID и заказать автомобиль со сроком от 1 дня до 100 и больше. Цена автомобиля указывается за 1 день. В последнем листе выводится полная сумма к оплате. У меня не получается подсчитать стоимость заказанного авто с различными платными услугами.
Скрытый текст
PrivateSub UserForm_Initialize() Combo1.AddItem "Автоматическая", 0 Combo1.AddItem "Ручная", 1 Combo2.AddItem "Renault Logan", 0 Combo2.AddItem "Volkswagen Polo", 1 Combo2.AddItem "Hyundai Solaris", 2 Combo2.AddItem "Lexus LS600H", 3 EndSub PrivateSub CommandButton1_Click() Dim M(1 To 7) AsString Dim i AsInteger Dim N AsInteger Dim O AsObject Set O = Worksheets("Выбор_авто").Cells(1, 1).CurrentRegion Sheets("Итог").Range("A2:A" & Cells(Rows.Count, 1).End(xlUp).Row) _ .FormulaR1C1 = "=RC2-RC11" N = O.Rows.Count + 1 With Выбор_авто M(1) = .Combo2.Text M(2) = .Combo1.Text If Combo2 = "Renault Logan"Then M(3) = 40000 If Combo2 = "Volkswagen Polo"Then M(3) = 50000 If Combo2 = "Lexus LS600H"Then M(3) = 45000 If Combo2 = "Hyundai Solaris"Then M(3) = 65000 If CheckBox2.Value = TrueThen M(4) = 250 If CheckBox2.Value = FalseThen M(4) = 0 If CheckBox3.Value = TrueThen M(5) = 150 If CheckBox3.Value = FalseThen M(5) = 0 M(6) = oRange With Application Mystring = .Trim(.Clean(Mystring)) EndWith If Len(M(1)) = 0 Or Len(M(2)) = 0 Or Len(M(3)) = 0 Then MsgBox "Заполните ВСЕ поля!!!", vbExclamation, "Ошибка!" ExitSub EndIf
For i = 1 To 6 Worksheets("Выбор_авто").Cells(N, i).Value = M(i) Next i With Расчёт_стоимости_аренды Combo2.Text = " " Combo1.Text = " " CheckBox2.Value = " " CheckBox3.Value = " " EndWith Unload Me EndWith EndSub
M(6) должна равнятся сумме M(3)+M(4)+M(5), подскажите как подсчитать. Заранее спасибо.