Реферат: VBA Платежка

Реферат: VBA Платежка




👉🏻👉🏻👉🏻 ВСЯ ИНФОРМАЦИЯ ДОСТУПНА ЗДЕСЬ ЖМИТЕ 👈🏻👈🏻👈🏻




























































Министерство образования Республики Беларусь
МОГИЛЕВСКИЙ МАШИНОСТРОИТЕЛЬНЫЙ ИНСТИТУТ
Институт повышения квалификации и переподготовки кадров
Кафедра совершенствования профессиональных знаний
По дисциплине
:
” Прикладное програмное обеспечение “

ТЕМА ПРОЕКТА: Разработка системы “Создание Платёжных Поручений»
Руководитель проекта: Зав. каф. АСУ,. С.К.Крутолевич.
ПРОЕКТИРОВАНИЕ ПРОГРАММНОГО ПРОДУКТА
Разработка информационной модели системы
Определение требований к техническим средствам
РАЗРАБОТКА ПРОГРАМНОГО ОБЕСПЕЧЕНИЯ.
Определение формы представления входных и выходных данных.
Разработка и тестирование программного модуля.
Список использованных литературных источников.
ПЕРЕЧЕНЬ ГРАФИЧЕСКОГО МАТЕРИАЛА НАИМЕНОВА-
Алгоритмы основных программных модулей
Печать платёжных поручений осуществяет практически любая организация.
Поэтому автоматизация этой задачи имеет большое значение .
Автоматизация этой проблеммы сводит эти работы к несложным операциям на компьютере.
Для решения этой задачи необходимо создать приложение с помощью которого можно было бы хранить данные «Плательщиков». Это будет база данных содержащая:
Кроме этого необходимо создать базу данных в которой хранить данные «Получателей» платежей. Это будет база данных содержащая:
Кроме этого необходимо создать «Базу данных» в которой хранить данные Произведённых платежей. Это будет «База данных» содержащая:
8 Дата получения товара, оказания услуг
В расчете участвуют «Сумма платежа». Для этого необходимо обеспечить ввод числовой информации по этому пункту.
Для ускорения последующей работы пользователю необходимо будет залолнять соответствующие поля «Базы данных» «Получателей платежей». И сохранять эти нанные. Это намного ускорит последуюющее создание платёжных поручений. Соответственно необходимо предусмотреть программые функции контролирующие индивидуальность каждой записи.
Для последующего быстрого формирования отчётов целесообразно звязать поля «Базы данных» «Получателей» и поля «Базы данных» «Платежей» с помощью индексов.
Очень удобным элементом для пользователя было бы организация навигации по базе «Платежей» , а также по базе «Получателей» и базе «Плательщиков». Кроме этого удаление и изменение информации позволило бы устранять из расчета те записи которые не нужны .
Для организации доступа к базам их корректировки , дополнения , удаления и.т.д. нужно организовать несколько диалогов с удобным и быстрым для пользователя доступом к нужным ему записям.
Для обьединения всего выше перечисленного необходима система
которая позволит пользователю переходя от одного элемента меню к другому выполнять те или иные програмные действия. При помощи ее пользователь может выбирать и вызывать диалог , осуществлять навигацию по базе данных (т.е. перемещаться между записями ), удалять либо востанавливать запись, запускать процедуру создания отчётов и вывод на печать итогов и.т.д.
2. ПРОЕКТИРОВАНИЕ ПРОГРАММНОГО ПРОДУКТА
2.1. Разработка информационной модели
Информационные системы ориентированы на хранение и модификацию постоянно существующей информации. В нашем случае нужно создать такую систему которая удовлетворяла следующим свойствам:
2. Поддерживала для каждого отдельного Плательщика его личные базы данных (Список Получателе платежей, Список Произведённых платежей )
3. Поддерживала процедуру добавления в базу новых Получателе платежей и модификацию уже имеющиеся записи, а так же поддерживала удаление из базы данных существующих записей.
4. Поддерживала переход на сдедующий год (начало нумерации платёжных поручений с 1)
5. Возможность формирования отчётов по заданным временным рараметрам с последующим выводом на печать.
2.2 Разработка математической модели .
В базе данных в которой содержится произведённые платежи, значение суммы платежа и есть те данные участвующие в отчёте за расчитываемый заданный временной период. Т.к. формирование отчёта может быть как по всем получателям так и по отдельно взятому получателю платежа то математические формулы должны выглядель следующим образом.
Формула по всем получателям платежа:
Сумма за выбранный временной период = сумме всех произведённых платежей за выбранный период.
Формула по выбранному получателю платежа:
Сумма за выбранный временной период = сумме всех произведённых платежей за выбранный период.
2.3 Определение требований к техническим средствам.
Минимальные требования для эффективной работы разработанной ИС являются:
Монитор VGA поддерживающий режимы работы 800х600
Для более комфортной и быстрой работы необходимо использовать:
Монитор SVGA поддерживающий режимы работы 800х600 и
Для печати можно использовать любые матричные, струйные, или лазерные принтеры.
3. РАЗРАБОТКА ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ
3.1. Разработка структуры программы
Программа представляет собой файл надстройки Excel97 имеющий
встроенный код Visual Basic for Application. Так же имеется четырифайла Excel97 представляющие собой:
1. Файл базы данных Плательщиков . состоит из двух листов. Где один лист содержит информацию о годах в течении которых использовалать программа. А другой информацию о Получателях платежей.
2. Файл базы данных Получателей платежей. Первоначально содержит один лист. Добавление и удатение листов в книге происходит динамически в зависимости от кол-ва Плательщиков. Другими словами на каждого Плательщика отводится один лист являющейся базой данных Получателей данного Плательщика.
3. Файл базы данных Платежных Поручений. Первоначально содержит два листа. Добавление и удатение листов в книге происходит динамически в зависимости от кол-ва Плательщиков. Другими словами на каждого Плательщика отводится один лист являющейся базой данных Платежных Поручений данного Плательщика. Другой лист является чистым бланком отчёта.
4. Файл платежного поручения. Собственно этот файл содержит один лист являющейся бланком платёжного поручения.
Встроенный код VBA содержит процедуры и функции поддерживающие элементы управления ,а также процедуры вормирования отчёта, процедуры добавления и удатения листов в книгах, добавтения и уданления файловучаствующич в отчётах, процедуры контроля вводимой пользователем информации, и т.д.
Данная программма является полностью открытой для дальнейшего изменения и модификации. Информация набранная в этой системе может быть использована в других приложениях использующих средства
3.2.Определение формы представления входных и выходных данных.
2. Кнопка перехода в форму ПЛАТЕЛЬЩИКИ
4. Выпадающего списка ВЫБОР ПОЛУЧАТЕЛЯ
7. Поле НАИМЕНОВАНИЕ БАНКА ПОЛУЧАТЕЛЯ
8. Группы кнопок для работы с датой СЕГОДНЯ, ПЛЮС ДЕНЬ, МИНУС ДЕНЬ
12. Поле ДАТА ПОЛУЧЕНИЯ ТОВАРА, ОКАЗАНИЯ УСЛУГ
16. Группы кнопок-переключателей М/П-место печати, Б/П-без печати, ПУСТО-нет никаких надписей в пл. поручении на месте для печати.
17. Поле ВВЕДИТЕ НАЗНАЧЕНИЕ ПЛАТЕЖА
18. Радиокнопка для перехода формы в режим просмотра базы данных старых пл. поручений ПОСМОТРЕТЬ СТАРЫЕ ПЛАТЁЖКИ
19. Кнопка СОХРАНИТЬ НОВОЕ ПОРУЧЕНИЕ
21. Кнопка ВНЕСТИ ИЗМЕНЕНИЯ В ДАННЫЕ О ПОЛУЧАТЕЛЕ
24. Скрытой кнопки ПЕЧАТЬ НОВОГО ПЛАТЁЖНОЕ ПОРУЧЕНИЯ
При помощи радиокнопки вид информационной части может менятся.
Для внесения новых данных о получателях платежей и формирования новых пл. поручений она имеет вид приведенный выше, для навигации и редактирования старых пл. поручений она принимает следующий вид.
2. Кнопка перехода в форму ПЛАТЕЛЬЩИКИ
7. Поле НАИМЕНОВАНИЕ БАНКА ПОЛУЧАТЕЛЯ
8. Группы кнопок для работы с датой СЕГОДНЯ, ПЛЮС ДЕНЬ, МИНУС ДЕНЬ
12. Поле ДАТА ПОЛУЧЕНИЯ ТОВАРА, ОКАЗАНИЯ УСЛУГ
16. Группы кнопок-переключателей М/П-место печати, Б/П-без печати, ПУСТО-нет никаких надписей в пл. поручении на месте для печати.
17. Поле ВВЕДИТЕ НАЗНАЧЕНИЕ ПЛАТЕЖА
18. Радиокнопка для перехода формы в первоначальный режим ВЕРНУТЬСЯ К СОЗДАНИЮ ПЛАТЁЖКИ
19. Кнопка ВНЕСТИ ИЗМЕНЕНИЯ В СТАРУЮ ПЛАТЁЖКУ
20. Кнопка для просмотра прошлогодних пл. поручений ЗА ПРОШЛЫЙ ГОД
21. Кнопка ПЕЧАТЬ СТАРОГО ПЛАТЁЖНОГО ПОРУЧЕНИЯ
22. Кнопка для перехода по старым пл. поручениям
23. Кнопка для перехода в конец списка пл. поручений К КОНЦУ СПИСКА ПЛАТЁЖЕК
24. Поле для ввода номера пл. поручения к которому следует сделать переход
25. Кнопка для введённого номера пл. поручения к которому следует сделать переход ПЕРЕЙТИ ПО НОМЕРУ
28. Выпадающий список для выбора кол-ва копий для печати
При помощи кнопки Отчёты происходит переход в форму отчётов. Форма отчётов имеет следующий вид:
1. Кнопка перехода в главную форму НАЗАД К ПЛАТЁЖКАМ
2. Двенадцать флажков на каждый месяцгода соответственно
3. Кнопка перехода в форму ПЛАТЕЛЬЩИКИ
4. Выпадающий список СПИСОК ПОЛУЧАТЕЛЕЙ
5. Выпадающий список СПИСОК ПЛАТЕЛЬЩИКОВ
6. Кнопка ЗА I-Й КВАРТАЛ для быстрого выделения флажков I-го квартала
7. Кнопка ЗА II -Й КВАРТАЛ Л для быстрого выделения флажков II-го квартала
8. Кнопка ЗА III-Й КВАРТАЛ для быстрого выделения флажков III-го квартала
9. Кнопка ЗА IV-Й КВАРТАЛ для быстрого выделения флажков IV-го квартала
10. Кнопка ЗА ГОД для быстрого выделения всех флажков года
14. Кнопка сброс для снятия активизации со всех флажков месяцев
15. Скрытая кнопка удаления файлов отчёта. Кнопка появляется если имеется хоть бы один файл со старыми отчётами.
16. Справочное поле выдаёт информацию о выбранном для отчёта получателе и сформированном отчёте
17. Справочное поле выдаёт информацию о выбранном для отчёта плательщике
18. Поле РЕЗУЛЬТАТ. Сдесь выводятся итоговые данные.
22. Кнопка СФОРМИРОВАТЬ ОТЧЁТ ПО ВСЕМ ПОЛУЧАТЕЛЯМ
23. Выпадающий список для выбора копий при печать отчёта
При переходе в главную форму с помощью кнопки НАЗАД К ПЛЯТЁЖКАМ. Пользователь может перейти к форме плательщики. Эта форма содержит следующие элементы:
1. Кнопка перехода в главную форму НАЗАД К ПЛАТЁЖКАМ
2. Выпадающий список для выбора ПЛАТЕЛЬЩИКА
4. Поле НАИМЕНОВАНИЕ БАНКА ПЛАТЕЛЬЩИКА
8. Кнопка для активизации выбранного плательщика СДЕЛАТЬ ЭТОГО ПЛАТЕЛЬЩИКА ТЕКУЩИМ В П/П
11. Кнопка ВНЕСТИ ИЗМЕНЕНИЯ В ДАННЫЕ О ПЛАТЕЛЬЩИКЕ
Расмотрим алгоритм процедуры расчета суммы прогизведённых платежей по выбранному для отчёта получателю.
SS = Worksheets(PP).Range("L" & Список.ListIndex + 1)"
3.4 Разработка и тестирование программного модуля.
Возмём в качестве тестового примера несколько получателей платежей . Заполним некоторое кол-во плю поручений. На пример:
Результаты полученные ьвне программы совершенно идентичны результатам полученным программым путём.
Так же программый продукт подвергся тестированию на собственном производстве. Ошибок выявлено не было.
Из этого можно сделать вывод что созданное программное обеспечение работает правильно и вполне готово к эксплуатации.
Представленный программный продукт создан в среде Excel -97 .
Преимуществом данного продукта является его простота, достаточный комфорт при эксплуатации, что дает возможность пользователю эффективно работать с этой программой. Кроме этого обеспечивается неплохая надежность работы программного средства, и хорошая информационная навигация.
Изменяемость программы можно осуществить только модернизируя ее , что не предоставляет достаточной гибкости.
1. “Microsoft OFFICE97 разработка приложений” К.Соломон издательство “БХВ “ г.Санкт-Петербург 1998 год.
2. Кен Гетц. Майк Джилберт ” Программирование в Microsoft Office “ - издательство “ Печатный двор“ Государственного комитета РФ по печати г.Санкт-Петербург 1999 год.
3. М.МакКелви и др. “ Visual Basic 5 “ издательство “ BHV-Санкт-Петербург“ 1998 год.
4. Р.Персон. “Excel для Windows 95 “ издательство “ BHV-Санкт-Петербург“ 1998 год.
5. Р.Винтер. “Microsoft Office для Windows 95 “ издательство “ BHV-Санкт-Петербург“ 1998 год.
6. Фигурнов В.Э.” IBM PC для пользователя.” - М: Финансы и статистика, 1991.
7.Ч.Петзолд “Программирование для Windows 95 ” издательство “ BHV-Санкт-Петербург“ 1998 год.
8 . Ф. Новиков,А.Яценко. “Microsoft Office в целом” издательство “ BHV-Санкт-Петербург“ 1998 год.
Исходный текст основного программного модуля.

Windows("Клиенты" & Year(Date)).Activate
If Len(Worksheets(№ПЛ).Range("A1")) = 0 Then
Windows("Клиенты" & Year(Date)).Activate
Клиент = Worksheets(№ПЛ).Range("A1")
КодБанка = Worksheets(№ПЛ).Range("D1")
ВидОперации = Worksheets(№ПЛ).Range("f1")
НазначПлатежа1 = Worksheets(№ПЛ).Range("g1")
НомНазПл = Worksheets(№ПЛ).Range("H1")
Windows("Клиенты" & Year(Date)).Activate
Счёт = (Worksheets(№ПЛ).Range("C" & (ComboBox1.ListIndex + 1)))
Банк = (Worksheets(№ПЛ).Range("B" & (ComboBox1.ListIndex + 1)))
Клиент = (Worksheets(№ПЛ).Range("A" & (ComboBox1.ListIndex + 1)))
КодБанка = (Worksheets(№ПЛ).Range("D" & (ComboBox1.ListIndex + 1)))
УНН = (Worksheets(№ПЛ).Range("E" & (ComboBox1.ListIndex + 1)))
ВидОперации = Worksheets(№ПЛ).Range("f" & (ComboBox1.ListIndex + 1))
НазначПлатежа1 = Worksheets(№ПЛ).Range("g" & (ComboBox1.ListIndex + 1))
НомНазПл = Worksheets(№ПЛ).Range("H" & (ComboBox1.ListIndex + 1))
Windows("Клиенты" & Year(Date)).Activate
Счёт = (Worksheets(№ПЛ).Range("C" & (ComboBox1.ListIndex + 1)))
Банк = (Worksheets(№ПЛ).Range("B" & (ComboBox1.ListIndex + 1)))
Клиент = (Worksheets(№ПЛ).Range("A" & (ComboBox1.ListIndex + 1)))
КодБанка = (Worksheets(№ПЛ).Range("D" & (ComboBox1.ListIndex + 1)))
УНН = (Worksheets(№ПЛ).Range("E" & (ComboBox1.ListIndex + 1)))
ВидОперации = Worksheets(№ПЛ).Range("f" & (ComboBox1.ListIndex + 1))
НазначПлатежа1 = Worksheets(№ПЛ).Range("g" & (ComboBox1.ListIndex + 1))
НомНазПл = Worksheets(№ПЛ).Range("H" & (ComboBox1.ListIndex + 1))
Windows("Платёжки" & Year(Date)).Activate
Windows("Клиенты" & Year(Date)).Activate
'ActiveWorkbook.RunAutoMacros Which:=xlAutoClose
Платящий = "Текущий Плательщик : " & Worksheets("Лист1").Range("E7") & _
" УНН : " & Worksheets("Лист1").Range("C7") & _
" P/c : " & Worksheets("Лист1").Range("Q8") & _
" Банк : " & Worksheets("Лист1").Range("D8") & _
" Код Банка : " & Worksheets("Лист1").Range("P9")
№ПЛ = Worksheets("Лист1").Range("A1")
Windows("Клиенты" & Year(Date)).Activate
While Len(Worksheets(№ПЛ).Range("A" & X)) <> 0
ComboBox1.AddItem (Worksheets(№ПЛ).Range("A" & X))
If Dir("C:\Program Files\Платёжка\Платёжки" & (Year(Date) - 1) & ".xls") = _
"Платёжки" & (Year(Date) - 1) & ".xls" Then
Workbooks.Open FileName:="C:\Program Files\Платёжка\Платёжки" & (Year(Date) - 1)
Windows("Платёжки" & (Year(Date) - 1)).Activate
БОКС = MsgBox("За прошлый год файл отчёта не найден", , BOX)
Private Sub Минус_Click() ' отнимает 1 день от даты
Private Sub Плюс_Click() ' прибавляет один день к дате
Private Sub Предосмотр_Click() ' активизирует окно просмотра Excel
ActiveWindow.SelectedSheets.PrintPreview
If Dir("C:\Program Files\Платёжка\Клиенты" & Year(Date) & ".xls") <> _
"Клиенты" & Year(Date) & ".xls" Then
Workbooks.Open FileName:="C:\Program Files\Платёжка\Клиенты" & (Year(Date) - 1)
Windows("Клиенты" & (Year(Date) - 1)).Activate
ActiveWorkbook.SaveAs FileName:="C:\Program Files\Платёжка\Клиенты" & Year(Date)
Workbooks.Open FileName:="C:\Program Files\Платёжка\Платёжки" & (Year(Date) - 1)
Windows("Платёжки" & (Year(Date) - 1)).Activate
ActiveWorkbook.SaveAs FileName:="C:\Program Files\Платёжка\Платёжки" & Year(Date)
Workbooks.Open FileName:="C:\Program Files\Платёжка\Плательщики.xls"
Windows("Плательщики.xls").Activate
Do While Len(Worksheets("Лист1").Range("A" & X)) <> 0
Windows("Клиенты" & Year(Date)).Activate
Worksheets(CStr(X)).Range("L1:L65535").Select
Windows("Платёжки" & Year(Date)).Activate
Worksheets(CStr(X)).Columns("A:AG").Select
Windows("Клиенты" & Year(Date)).Activate
Windows("Платёжки" & Year(Date)).Activate
Workbooks.Open FileName:="C:\Program Files\Платёжка\Платёжка.xls"
Windows("Плательщики.xls").Activate
While Len(Worksheets("Года").Range("A" & X)) <> 0
'Worksheets("Года").Range("A" & X) = CStr((Year(Date) - 1))
Worksheets("Года").Range("A" & X) = CStr(Year(Date))
Workbooks.Open FileName:="C:\Program Files\Платёжка\Клиенты" & Year(Date)
Workbooks.Open FileName:="C:\Program Files\Платёжка\Платёжки" & Year(Date)
Workbooks.Open FileName:="C:\Program Files\Платёжка\Платёжка.xls"
Workbooks.Open FileName:="C:\Program Files\Платёжка\Плательщики.xls"
Сегодня.Caption = "Сегодня : " & Date
№ПЛ = Worksheets("Лист1").Range("a1")
Windows("Клиенты" & Year(Date)).Activate
While Len(Worksheets(№ПЛ).Range("A" & X)) <> 0
ComboBox1.AddItem (Worksheets(№ПЛ).Range("A" & X))
Private Sub UserForm_QueryClose(Cancel As Integer, CloseMode As Integer)
Windows("Платёжки" & Year(Date)).Activate
Windows("Клиенты" & Year(Date)).Activate
'ActiveWorkbook.RunAutoMacros Which:=xlAutoClose
Windows("Клиенты" & Year(Date)).Activate
If Проверка = False Then ' Проверка на правильность ' функция находится в конце программы
Else ' функция находится в конце программы
Do While X < ComboBox1.ListCount + 1
If Клиент = Worksheets(№ПЛ).Range("A" & X) _
And Банк = Worksheets(№ПЛ).Range("b" & X) _
And Счёт = Worksheets(№ПЛ).Range("c" & X) _
And КодБанка = Worksheets(№ПЛ).Range("d" & X) _
And УНН = Worksheets(№ПЛ).Range("e" & X) _
And ВидОперации = Worksheets(№ПЛ).Range("f" & X) _
And НомНазПл = Worksheets(№ПЛ).Range("H" & X) _
And НазначПлатежа1 = Worksheets(№ПЛ).Range("g" & ComboBox1.ListIndex + 1) _
БОКС = MsgBox("Извените но : " & Клиент & " уже есть в списке Получателей." _
& Chr(10) & "Попробуйте выбрать Получателя из списка.", , BOX)
Worksheets(№ПЛ).Range("A" & (ComboBox1.ListIndex + 1)) = Клиент
Worksheets(№ПЛ).Range("b" & (ComboBox1.ListIndex + 1)) = Банк
Worksheets(№ПЛ).Range("c" & (ComboBox1.ListIndex + 1)) = Счёт
Worksheets(№ПЛ).Range("d" & (ComboBox1.ListIndex + 1)) = КодБанка
Worksheets(№ПЛ).Range("e" & (ComboBox1.ListIndex + 1)) = УНН
Worksheets(№ПЛ).Range("f" & (ComboBox1.ListIndex + 1)) = ВидОперации
Worksheets(№ПЛ).Range("g" & (ComboBox1.ListIndex + 1)) = НазначПлатежа1
Worksheets(№ПЛ).Range("H" & (ComboBox1.ListIndex + 1)) = НомНазПл
БОКС = MsgBox("Изменения в данные о Клиенте : " & Клиент & " успешно внесёны в список клиентов", , BOX)
Windows("Клиенты" & Year(Date)).Activate
If Проверка = False Then ' Проверка на правильность ' функция находится в конце программы
Else ' функция находится в конце программы
Do While X < ComboBox1.ListCount + 1
If Клиент = Worksheets(№ПЛ).Range("A" & X) _
And Банк = Worksheets(№ПЛ).Range("b" & X) _
And Счёт = Worksheets(№ПЛ).Range("c" & X) _
And КодБанка = Worksheets(№ПЛ).Range("d" & X) _
And УНН = Worksheets(№ПЛ).Range("e" & X) _
And ВидОперации = Worksheets(№ПЛ).Range("f" & X) _
And НомНазПл = Worksheets(№ПЛ).Range("H" & X) _
БОКС = MsgBox("Извените но : " & Клиент & " уже есть в списке Получателей." _
& Chr(10) & "Попробуйте выбрать Получателя из списка.", , BOX)
While Len(Worksheets(№ПЛ).Range("A" & X)) <> 0
Worksheets(№ПЛ).Range("A" & X) = Клиент
Worksheets(№ПЛ).Range("b" & X) = Банк
Worksheets(№ПЛ).Range("c" & X) = Счёт
Worksheets(№ПЛ).Range("d" & X) = КодБанка
Worksheets(№ПЛ).Range("e" & X) = УНН
Worksheets(№ПЛ).Range("f" & X) = ВидОперации
Worksheets(№ПЛ).Range("g" & X) = НазначПлатежа1
Worksheets(№ПЛ).Range("H" & X) = НомНазПл
ComboBox1.AddItem (Worksheets(№ПЛ).Range("A" & (ComboBox1.ListCount + 1)))
БОКС = MsgBox("Новый Клиент : " & Клиент & " внесён в список клиентов", , BOX)
БОКС = MsgBox("Вы не выбрали платёжку...", , BOX)
If ПроверкаПЛ = False Then ' Проверка на правильность
Else ' функция находится в конце программы
Вплатёжку 'функция сохраняющая данные в платёжке
Windows("Платёжки" & Year(Date)).Activate
Worksheets(№ПЛ).Range("A" & НомерПл) = НомерПл
Worksheets(№ПЛ).Range("c" & НомерПл) = Банк
Worksheets(№ПЛ).Range("d" & НомерПл) = Счёт
Worksheets(№ПЛ).Range("b" & НомерПл) = Клиент
Worksheets(№ПЛ).Range("e" & НомерПл) = КодБанка
Worksheets(№ПЛ).Range("f" & НомерПл) = УНН
Worksheets(№ПЛ).Range("g" & НомерПл) = Деньги
Worksheets(№ПЛ).Range("h" & НомерПл) = Дата
Worksheets(№ПЛ).Range("I" & НомерПл) = ДатаУслуг
Worksheets(№ПЛ).Range("J" & НомерПл) = ВидОперации
Worksheets(№ПЛ).Range("K" & НомерПл) = НазначПлатежа1
Worksheets(№ПЛ).Range("L" & НомерПл) = НомНазПл
Worksheets(№ПЛ).Range("M" & НомерПл) = МП1
БОКС = MsgBox("В дате должен стоять " & Год & " год", , BOX)
БОКС = MsgBox("Вы не выбрали платёжку...", , BOX)
If ПроверкаПЛ = False Then ' Проверка на правильность
Else ' функция находится в конце программы
Вплатёжку 'функция сохраняющая данные в платёжке
Worksheets(№ПЛ).Range("A" & НомерПл) = НомерПл
Worksheets(№ПЛ).Range("c" & НомерПл) = Банк
Worksheets(№ПЛ).Range("d" & НомерПл) = Счёт
Worksheets(№ПЛ).Range("b" & НомерПл) = Клиент
Worksheets(№ПЛ).Range("e" & НомерПл) = КодБанка
Worksheets(№ПЛ).Range("f" & НомерПл) = УНН
Worksheets(№ПЛ).Range("g" & НомерПл) = CDbl(Деньги)
Worksheets(№ПЛ).Range("h" & НомерПл) = Дата
Worksheets(№ПЛ).Range("I" & НомерПл) = ДатаУслуг
Worksheets(№ПЛ).Range("J" & НомерПл) = ВидОперации
Worksheets(№ПЛ).Range("K" & НомерПл) = НазначПлатежа1
Worksheets(№ПЛ).Range("L" & НомерПл) = НомНазПл
Worksheets(№ПЛ).Range("M" & НомерПл) = МП1
БОКС = MsgBox("Изменения в платёжку №: " & НомерПл & " успешно внесёны ", , BOX)
Private Sub СтарыеПл_MouseMove(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
Label16.Caption = " Нажав на эту кнопку Вы можете посмотреть все Ваши старом платёжки" _
& " а так-же что-то подправить и сохранить эти изменения"
Label16.Caption = " Нажав на эту кнопку Вы перейдёте к форме формирования платёжек"
Private Sub Отчёты_MouseMove(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
Label16.Caption = "Кнопка 'Отчёты' для перехода в форму ОТЧЁТЫ. Там Вы сможете узнать куда же делись Ваши деньги !!!"
Private Sub Выход_MouseMove(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
Label16.Caption = "Кнопка 'Выход' для выхода из программы. Если решили выйти смело жмите, программа сохранит результаты вашей работы."
Private Sub УбитьКлиента_MouseMove(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
Label16.Caption = " Нажав на эту кнопку Вы можете удалить выбранного Получателя из списка Получателей "
Private Sub ПоНомеру_MouseMove(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
Label16.Caption = " Введите номер платёжки в расположенное рядом с этой кнопкой небольшое поле. Затем нажмите на эту кнопку и вы перейдёте к платёжке с введённым вами номером. "
Private Sub Вконец_MouseMove(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
Label16.Caption = " Нажав на эту кнопку Вы осуществите переход к концу списка платёжек "
Private Sub Измениния_MouseMove(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
Label16.Caption = " Нажав на эту кнопку Вы внесёте изменения в список Получателей "
Private Sub ДобавитьПол_MouseMove(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
Label16.Caption = " Нажав на эту кнопку Вы внесёте в список Получателей Ваших денег данные о новом Получателе "
Private Sub ИзмененияСТ_MouseMove(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
Label16.Caption = " Нажав на эту кнопку Вы можете сохранить изменения в старом платёжном поручении"
Private Sub КСтарПл_MouseMove(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
Label16.Caption = " Нажав на эту кнопку Вы можете распечатать Ваше старое платёжное поручения" _
& " Не забудьте выбрать кол-во копий в выпадающем списке рядом с кнопкой"
Private Sub СохранитьНов_MouseMove(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
Label16.Caption = "Эта кнопка предназначена для сохранения созданного платёжного поручения"
Private Sub Создать_MouseMove(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
Label16.Caption = "Нажав на эту кнопку Вы можете распечатать Ваше платёжное поручения" _
& " Не забудьте выбрать кол-во копий в выпадающем списке рядом с кнопкой"
Private Sub UserForm_MouseMove(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
Private Sub Плательщики_MouseMove(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
Label16.Caption = "Нажав эту кнопка Вы можете поменять текущего Плательщика или внести изменения в существующие данные о Плательщике"
Private Sub Сегодня_MouseMove(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
Label16.Caption = "Кнопка для вставки текущей даты в формируемую платёжку"
Private Sub КодБанка_MouseMove(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
Label16.Caption = "Обязательное поле. В это поле вносят код банка Получателя. Допускаются только цифровые значения."
Private Sub ComboBox1_MouseMove(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
Label16.Caption = "Что бы вставить данные Получателя платежа востользуйтесь этим выпадающем списком. Если данные отсутствуют, значит придётся добавить нового Получателя."
Private Sub Label14_MouseMove(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
Label16.Caption = "Номер текущей платёжки"
Private Sub Дата_MouseMove(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
Label16.Caption = "Обязательное поле. В это поле вносят дату формируемой платёжки. Допускаются такие форматы дат. Пример : 01,01,200 или 01/01/2000 или 01.01/00"
Private Sub УНН_MouseMove(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
Label16.Caption = "НЕ обязательное поле. В это поле вносят УНН Получателя. Допускаются только цифровые значения."
Private Sub НазначПлатежа1_MouseMove(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
Label16.Caption = "Обязательное поле. В это поле вносят сведения за что Вы собственно платите." _
& "СОВЕТ если Вы знаете,что будете здесь писать почти всегда одно и тоже " _
& "то нажмите кнопку Внести изменения в данные о Получателе."
Private Sub Клиент_MouseMove(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
Label16.Caption = "Обязательное поле. В это поле вносят Наименование Получателя. На пример: ""ООО Приятные Мелочи"""
Private Sub Банк_MouseMove(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
Label16.Caption = "Обязательное поле. В это поле вносят Наименование Банка Получателя. На пример: ""ОАО Белбизнесбанк г. Могилёв"""
Private Sub Счёт_MouseMove(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
Label16.Caption = "Обязательное поле. В это поле вносят № расчётного счёта Получателя. Допускаются только цифровые значения."
Private Sub ДатаУслуг_MouseMove(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
Label16.Caption = "НЕ обязательное поле. В это поле вносят дату получения товара или оказания услуг. Пример: Предоплата или 28 марта 2000г."
Private Sub ВидОперации_MouseMove(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
Label16.Caption = "НЕ обязательное поле. В это поле вносят число отражающее вид операции. Допускаются только цифровые значения."
Private Sub НомНазПл_MouseMove(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
Label16.Caption = "НЕ обязательное поле. В это поле вносят число отражающее код назначения платежа. Допускаются только цифровые значения."
Private Sub Деньги_MouseMove(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
Label16.Caption = "Обязательное поле. В это поле вносят сумму платежа. Допускаются только цифровые значения."
Private Sub Минус_MouseMove(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
Label16.Caption = "Отнимает один день от текущей даты."
Private Sub Плюс_MouseMove(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
Label16.Caption = "Добавляет один день к текущей дате."
БОКС = MsgBox("Извините но в строке 'Дата' ошибка. Укажите текущий Год", , BOX)
If ПроверкаПЛ = False Then ' Проверка на правильность
Else ' функция находится в конце программы
БОКС = MsgBox("Извините но Вы забыли внести Получателя : " & Клиент & " в список Получателей ", , BOX)
Windows("Клиенты" & Year(Date)).Activate
Or Счёт <> Worksheets(№ПЛ).Range("c" & ComboBox1.ListIndex + 1) _
Or Банк <> Worksheets(№ПЛ).Range("b" & ComboBox1.ListIndex + 1) _
Or КодБанка <> Worksheets(№ПЛ).Range("d" & ComboBox1.ListIndex + 1) _
Or УНН <> Worksheets(№ПЛ).Range("e" & ComboBox1.ListIndex + 1) _
Or ВидОперации <> Worksheets(№ПЛ).Range("f" & ComboBox1.ListIndex + 1) _
Or НомНазПл <> Worksheets(№ПЛ).Range("H" & ComboBox1.ListIndex + 1) _
БОКС = MsgBox("Извините но Вы забыли внести Получателя : " & Клиент & " в список Получателей ", , BOX)
Вплатёжку 'функция сохраняющая данные в платёжке
Windows("Платёжки" & Year(Date)).Activate
While Len(Worksheets(№ПЛ).Range("A" & X)) <> 0
Worksheets(№ПЛ).Range("g" & X) = CDbl(Деньги)
Worksheets(№ПЛ).Range("c" & X) = Банк
Worksheets(№ПЛ).Range("d" & X) = Счёт
Worksheets(№ПЛ).Range("b" & X) = Клиент
Worksheets(№ПЛ).Range("e" & X) = КодБанка
Worksheets(№ПЛ).Range("f" & X) = УНН
Worksheets(№ПЛ).Range("h" & X) = Дата
Worksheets(№ПЛ).Range("I" & X) = ДатаУслуг
Worksheets(№ПЛ).Range("J" & X) = ВидОперации
Worksheets(№ПЛ).Range("K" & X) = НазначПлатежа1
Worksheets(№ПЛ).Range("L" & X) = НомНазПл
Worksheets(№ПЛ).Range("M" & X) = МП1
Worksheets("Лист1").Range("O2") = X
Windows("Клиенты" & Year(Date)).Activate
Worksheets(№ПЛ).Range("L" & ComboBox1.ListIndex + 1).NumberFormat = "@"
Worksheets(№ПЛ).Range("L" & ComboBox1.ListIndex + 1) = _
Worksheets(№ПЛ).Range("L" & ComboBox1.ListIndex + 1) + "" & X & "."
Windows("Платёжки" & Year(Date)).Activate
СтарыеПл.Caption = "Вернуться к созданию платёжек"
СтарыеПл.Caption = "Посмотреть старые платёжки"
Клиент = Worksheets(№ПЛ).Range("B" & Счётчик)
Счёт = Worksheets(№ПЛ).Range("D" & (Счётчик))
Банк = Worksheets(№ПЛ).Range("C" & (Счётчик))
НомерПл = Worksheets(№ПЛ).Range("A" & (Счётчик))
КодБанка = Worksheets(№ПЛ).Range("E" & (Счётчик))
УНН = Worksheets(№ПЛ).Range("F" & (Счётчик))
Деньги = Worksheets(№ПЛ).Range("g" & Счётчик)
ДатаУслуг = Worksheets(№ПЛ).Range("I" & Счётчик)
ВидОперации = Worksheets(№ПЛ).Range("J" & Счётчик)
НазначПлатежа1 = Worksheets(№ПЛ).Range("K" & Счётчик)
НомНазПл = Worksheets(№ПЛ).Range("L" & Счётчик)
Дата = Worksheets(№ПЛ).Range("h" & Счётчик)
МестоПечати1 'функция работающая с МП,БП, БезПечати
Вплатёжку 'функция сохраняющая данные в платёжке
Windows("Клиенты" & Year(Date)).Activate
БОКС = MsgBox("Вы не выбрали не одного Получателя для удаления...", , BOX)
'ElseIf ComboBox1.ListIndex = -1 Then
БОКС = MsgBox("Вы действительно хотите удалить Получателя : " & a, vbYesNo, BOX)
ElseIf Len(Worksheets(№ПЛ).Range("L" & ComboBox1.ListIndex + 1)) <> 0 Then
БОКС = MsgBox("Извините, но Вы не можете удалить Получателя : " & a _
& Chr(10) & "так-как по нему производились платежи. " _
& Chr(10) & "Удалить этого Получателя Будет можно лишь УДАЛИВ ПЛАТЕЛЬЩИКА !!! " _
& Chr(10) & "В форме ПЛАТЕЛЬЩИКИ !!!" & Chr(10) & Chr(10) & _
Windows("Клиенты" & Year(Date)).Activate
Rows(ComboBox1.ListIndex + 1).Select
Selection.Delete Shift:=xlUp 'Удаляем запись о клиенте
ComboBox1.RemoveItem (ComboBox1.ListIndex)
БОКС = MsgBox("Вы удалили Получателя : " & a, , BOX)
While Len(Worksheets(№ПЛ).Range("A" & (X))) <> 0
БОКС = MsgBox("Вы забыли ввести номер платёжки", , BOX)
ElseIf номерСТПЛ > 0 And номерСТПЛ < 65501 Then
БОКС = MsgBox("Был введён № несуществующей платёжки... Поэтому выполнен переход к концу списка платёжек ", , BOX)
БОКС = MsgBox("Был введён № несуществующей платёжки... Поэтому выполнен переход к концу списка платёжек ", , BOX)
НазначПлатежа1 = TRIM(НазначПлатежа1)
Private Function Проверка() As String
Private Function ПроверкаПЛ() As String
MsgBox "Извините но в 'Строке Введите Назначение Платежа' пусто"
MsgBox "Извините но в 'Строке Дата' ошибка или Вы забыли её ввести"
ElseIf Len(Деньги) = 0 Or Деньги = "0" Then
БОКС = MsgBox("Извините но в 'Строке Введите Сумму' пусто", , BOX)
Private Function ПроверкаОБЩ() As String
БОКС = MsgBox("Извините но в Строке Наименование Клиента пусто", , BOX)
БОКС = MsgBox("Извините но в Строке Банк Клиента пусто", , BOX)
БОКС = MsgBox("Извините но в Строке Р/с Клиента пусто", , BOX)
БОКС = MsgBox("Извините но в Строке Код Банка Клиента пусто", , BOX)
Private Sub Счёт_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
If (Not (Chr(KeyAscii) Like "[0-9]")) Then KeyAscii = 0
Private Sub Деньги_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
If (Not (Chr(KeyAscii) Like "[0-9]")) Then KeyAscii = 0
Private Sub КодБанка_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
If (Not (Chr(KeyAscii) Like "[0-9]")) Then KeyAscii = 0
Private Sub УНН_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
If (Not (Chr(KeyAscii) Like "[0-9]")) Then KeyAscii = 0
Private Sub ВидОперации_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
If (Not (Chr(KeyAscii) Like "[0-9]")) Then KeyAscii = 0
Private Sub НомНазПл_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
If (Not (Chr(KeyAscii) Like "[0-9]")) Then KeyAscii = 0
Private Sub НомерСТПЛ_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
If (Not (Chr(KeyAscii) Like "[0-9]")) Then KeyAscii = 0
Private Function Впечать() As String
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True
Private Function Вплатёжку() As String
Worksheets("Лист1").Range("D13") = Банк
Worksheets("Лист1").Range("Q11") = Счёт
Worksheets("Лист1").Range("E12") = Клиент
Worksheets("Лист1").Range("P14") = КодБанка
Worksheets("Лист1").Range("C12") = УНН
Worksheets("Лист1").Range("T7") = (Деньги & "=")
Worksheets("Лист1").Range("G4") = Format(Дата, "d mmmm yyyy")
Worksheets("Лист1").Range("L19") = ДатаУслуг
Worksheets("Лист1").Range("V19") = ВидОперации
Worksheets("Лист1").Range("B22") = НазначПлатежа1
Worksheets("Лист1").Range("O2") = НомерПл
Worksheets("Лист1").Range("V20") = НомНазПл
МестоПечати 'Функция работающая с параметрами места печати в платёжке
Worksheets("Лист1").Range("C27") = МП1
Private Function МестоПечати() As String
Private Function МестоПечати1() As String
If Worksheets(№ПЛ).Range("M" & Счётчик) = "М/П" Then
ElseIf Worksheets(№ПЛ).Range("M" & Счётчик) = "Б/П" Then
ElseIf Worksheets(№ПЛ).Range("M" & Счётчик) = "" Then

Название: VBA Платежка
Раздел: Рефераты по экономико-математическому моделированию
Тип: реферат
Добавлен 23:46:14 13 сентября 2005 Похожие работы
Просмотров: 410
Комментариев: 16
Оценило: 4 человек
Средний балл: 5
Оценка: неизвестно   Скачать

Срочная помощь учащимся в написании различных работ. Бесплатные корректировки! Круглосуточная поддержка! Узнай стоимость твоей работы на сайте 64362.ru
Если Вам нужна помощь с учебными работами, ну или будет нужна в будущем (курсовая, дипломная, отчет по практике, контрольная, РГР, решение задач, онлайн-помощь на экзамене или "любая другая" учебная работа...) - обращайтесь: https://clck.ru/P8YFs - (просто скопируйте этот адрес и вставьте в браузер) Сделаем все качественно и в самые короткие сроки + бесплатные доработки до самой сдачи/защиты! Предоставим все необходимые гарантии.
Привет студентам) если возникают трудности с любой работой (от реферата и контрольных до диплома), можете обратиться на FAST-REFERAT.RU , я там обычно заказываю, все качественно и в срок) в любом случае попробуйте, за спрос денег не берут)
Да, но только в случае крайней необходимости.

Реферат: VBA Платежка
Сочинение По Картине На Странице 102
Сочинение: Гражданская война в произведениях русских писателей ХХ века
Президентский Контроль За Деятельностью Полиции Курсовая
Сочинение Золотая Осень В Березовой Роще
Реферат: Titanic Essay Research Paper TitanicThe Titanic is
Реферат: Интерференция и дифракция
Реферат Про Осанку Кратко
Реферат: HH Richardson Essay Research Paper Henry Hobson
Реферат: Adobe Systems Inc Essay Research Paper Adobe
Реферат На Тему Психолого-Педагогическая Помощь Семьям, Имеющих Детей С Нарушениеми В Развитии
Сочинение Зачем Нужно Изучать Правила Правописания
Сочинение Дубровский 6 Класс По Литературе Заключение
Сочинение По Творчеству Гоголя 10 Класс Кратко
Сочинение По Картине Левитана Март
Историческое Сочинение Первые Русские Князья
Реферат по теме The history of railways (История железных дорог)
Дипломная Работа Источники Международного Гуманитарного Права
Курсовая работа по теме Джамбаттіста Маріно. Його мала поезія
Психическое Развитие Человека Реферат
Дипломная Работа Открытая Горная Работа
Курсовая работа: Экономико-географическая характеристика Московского региона
Реферат: Стратегический менеджмент поможет захватить лидерство в конкурентной борьбе
Реферат: Правовое регулирование свободы слова в РФ

Report Page