Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 28.05.2013, 22:28   #1
aigula
Пользователь
 
Регистрация: 28.05.2013
Сообщений: 13
По умолчанию создание ведомости в VBA

Курсовая. есть 2 таблицы: Прейскурант и продажи. надо создать ведомость о проданных товарах на указанную дату, и получить отчет популярных показаний за месяц. выдает ошибки в формулах, помогите пожалуйста.
Private Sub CommandButton1_Click()
Application.ScreenUpdating = False
Dim h As Byte
If ComboBox1 = "" Then
h = MsgBox("Для вывода ведомости необходимо выделить из списка Количество", vbYes + vbQuestion, "Ведомость")
If h = vbYes Then GoTo 12 Else GoTo e
End If
Dim pr As Object, nx As Object
Dim prez As Object, nex As Object
Dim cur As Object, fol As Object
Dim nam As String, schet As String
Dim y As Integer, r As Integer, j As Integer
nam = ComboBox1.Text
ActiveWorkbook.Sheets("Ведомость продаж").Activate
ActiveWorkbook.Sheets("Ведомость"). Range("d3") = 0
For i = 3 To 15
ActiveWorkbook.Sheets("Ведомость"). Cells(i, 2) = ""
ActiveWorkbook.Sheets("Ведомость"). Cells(i, 3) = ""
ActiveWorkbook.Sheets("Ведомость"). Cells(i, 4) = ""
ActiveWorkbook.Sheets("Ведомость"). Cells(i, 5) = ""
ActiveWorkbook.Sheets("Ведомость"). Cells(i, 6) = ""
Next i
Sheets("Ведомость продаж").Select
Set prez = Sheets("Ведомость продаж").Range("B3")
Do Until IsEmpty(prez)
If prez = nam Then
kod = prez.Offset(0, 1)
kol = prez.Offset(0, 2)
Else: GoTo 1
End If
Sheets("Регистрация наличия лекарств").Select
Set cur = Sheets("Регистрация наличия лекарств").Range("a2")
Do Until IsEmpty(cur)
If cur = kod Then
namt = cur.Offset(0, 1)
Z = cur.Offset(0, 2)
Exit Do
End If
Set fol = cur.Offset(1, 0)
Set cur = fol
Loop
Sheets("Ведомость").Select
Set pr = Sheets("Ведомость").Range("b3")
Do Until IsEmpty(pr)
Set nx = pr.Offset(1, 0)
Set pr = nx
Loop
Sheets("Ведомость").Range("a3") = nam
pr.Value = kod
pr.Offset(0, 1) = namt
pr.Offset(0, 2).Value = Z
pr.Offset(0, 3).Value = kol
summ = Z * kol
pr.Offset(0, 4).Value = summ
1: Set nex = prez.Offset(1, 0)
Set prez = nex
Loop
Sheets("Ведомость").Range("g3").Act ivate
ActiveCell.FormulaR1C1 = "=SUM(RC[-1]:R[196]C[-1])"
12 ComboBox1 = ""
UserForm4.Hide
e: End Sub


Private Sub Frame1_Click()

End Sub

Private Sub UserForm_activate()
Dim pr As Object, x As Object
UserForm4.ComboBox1.Clear
ActiveWorkbook.Sheets("Ведомость продаж").Select
Set pr = ActiveSheet.Range("C2")
Do While Not IsEmpty(pr)
Set x = pr.Offset(1, 0)
ComboBox1.AddItem pr
Set pr = x
Loop
End Sub


где желтым выделено, выдает ошибку: метод из класса ранг завершен неверно

Последний раз редактировалось aigula; 28.05.2013 в 22:33.
aigula вне форума Ответить с цитированием
Старый 29.05.2013, 09:38   #2
DiemonStar
Старожил
 
Регистрация: 08.02.2012
Сообщений: 2,173
По умолчанию

кросс

http://programmersforum.ru/showthread.php?t=237508
Правильно поставленная задача - три четверти решения.
DiemonStar вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
формирование оборотно сальдовой ведомости hors БД в Delphi 3 22.09.2012 19:20
Нужно сравнить переучетные ведомости deni1982 Microsoft Office Excel 2 02.03.2010 11:57
программа обработки ведомости на зарплату на Паскаль Анжелика Помощь студентам 6 16.12.2008 16:55
программа обработки ведомости на зарплату Анжелика Помощь студентам 3 06.12.2008 21:30