Помогите с написанием программки в VBA EXCELСоздать таблицу со последующими реквизитами:
Помогите с написанием программы в VBA EXCEL
Сделать таблицу со последующими реквизитами: фамилия, адресок, дата, цена заказа, сумма аванса, задолженность, вид заказа. В отчете учитывать итоговую информацию=задолженность+цена-аванс.
Милана Федулеева
Данные необходимо вводить с поддержкою формы либо нужен просто макрос ?
Савукина
Екатерина
Какой отчет и при этом тут вообщем VBA?
Владислав
с подмогою формы(
Табалкина
Виолетта
Зачем в Excel делать какие-то формы, когда листы таблицы еще удобнее и теснее сами по для себя готовый интерфейс, на который VBA нацелен? Вы с VB не путаете? И позже, все же, что за таковой отчет?
1 ответ
Леонид Староминский
'На первом листе внесите данные
'При прибавлении записей формулу вычисления задолженности прибавлять не надобно
'Запускаете макрос - результат (отчет) на втором листе
'На первом листе формулы пересчитывается - результаты обновляются
'Форма в этом случае -лишне
Dim i, j, s, a
Sub Othet ()
Dim info As Variant
'Clear OTHET(2 list)
Sheets(2).Select
Range("A1:I1").Select
With Selection
.HorizontalAlignment = xlGeneral: .VerticalAlignment = xlBottom
.AddIndent = False: .IndentLevel = 0: .ShrinkToFit = False: .MergeCells = True
End With
Selection.Font.Bold = True
With Selection
End With
Sheets(2).Cells(1, 1) = "ОТЧЕТ"
'Shapka 1 list
Sheets(1).Select
info = Array("", "фамилия", "адресок", "дата", "цена заказа", "сумма аванса", "задолженность", "вид заказа")
For i = 1 To UBound(info)
Cells(1, i) = info(i)
Next
i = 2
'Расчет долга
While Cells(i, 1) lt;gt; ""
Cells(i, 5) = "=D" + Chr(48 + i) + "-E" + Chr(48 + i)
i = i + 1
Wend
Rows("1:1").Select
Selection.AutoFilter
a = "" + "gt;" + InputBox("Укажите задолженность", "", 0) + ""
Selection.AutoFilter field:=5, Criteria1:=a, Operator:=xlAnd
Range("A1:G" + Chr(48 + i) + "").Copy Sheets(2).Range("a2")
Sheets(1).Select
Selection.AutoFilter
End Sub
'При прибавлении записей формулу вычисления задолженности прибавлять не надобно
'Запускаете макрос - результат (отчет) на втором листе
'На первом листе формулы пересчитывается - результаты обновляются
'Форма в этом случае -лишне
Dim i, j, s, a
Sub Othet ()
Dim info As Variant
'Clear OTHET(2 list)
Sheets(2).Select
Range("A1:I1").Select
With Selection
.HorizontalAlignment = xlGeneral: .VerticalAlignment = xlBottom
.AddIndent = False: .IndentLevel = 0: .ShrinkToFit = False: .MergeCells = True
End With
Selection.Font.Bold = True
With Selection
End With
Sheets(2).Cells(1, 1) = "ОТЧЕТ"
'Shapka 1 list
Sheets(1).Select
info = Array("", "фамилия", "адресок", "дата", "цена заказа", "сумма аванса", "задолженность", "вид заказа")
For i = 1 To UBound(info)
Cells(1, i) = info(i)
Next
i = 2
'Расчет долга
While Cells(i, 1) lt;gt; ""
Cells(i, 5) = "=D" + Chr(48 + i) + "-E" + Chr(48 + i)
i = i + 1
Wend
Rows("1:1").Select
Selection.AutoFilter
a = "" + "gt;" + InputBox("Укажите задолженность", "", 0) + ""
Selection.AutoFilter field:=5, Criteria1:=a, Operator:=xlAnd
Range("A1:G" + Chr(48 + i) + "").Copy Sheets(2).Range("a2")
Sheets(1).Select
Selection.AutoFilter
End Sub
, оставишь ответ?
Похожие вопросы
-
Вопросы ответы
Новое
NEW
Статьи
Информатика
Статьи
Последние вопросы
Предприятие по производству с/хоз продукции на производство затратило 3527000 руб Валовый
Разные вопросы.
Математика, задано на каникулы. ВАРИАНТ 1004
НОМЕР 1,2,3,4,5,6,7,8.
Математика.
Имеются три конденсатора емкостью С1=1мкФ, С2=2мкФ и С3=3мкФ. Какую наименьшую емкость
Физика.
Из точки м выходят 3 луча MP MN и MK причём
Геометрия.
выпиши в свою тетрадь те правила этикета которые тебе не были
Разные вопросы.
Анна хорошо учится у неё много подруг свободное от учёбы время
Обществознание.
10) Килограмм конфет дороже килограмма печенья на 52 р. За 8
Математика.
Во сколько раз число атомов кислорода в земной коре больше числа
Химия.
Составить монолог от имени дневника двоечника 7-10 предложений
Русский язык.
Рассматривая литературный язык как сложное взаимодействие книжного языка и разговорного,В.И.Чернышёв горячо
Разные вопросы.
Облако тегов