Створення програми vba в access нарахування заробітної плати за посадами

За допомогою даного коду можна створити гістограму зарплати по різних посадах. Дана гістограма збережеться як картинка і експортується в Picturebox-е. Код цих операцій наведено на лістингу 2.6. Результат наведено на малюнку 2.3.

Рис.2.3 Результат лістингу 2.5

Дані ввели і гістограма з'явилася на формі.

Висновок. В результаті можна сказати, що макроси полегшують здійснення операцій в Excel-е. Також за допомогою коду VB.Net не створюючи лист Excel можна створити гістограму на аркуші або ввести дані на ньому. На інших відомих нам платформах, наприклад, як Access неможливо створити гістограму для БД. На гістограмі показується зарплата працівників за посадами. Проект наводиться в папці Yusupova Z_den2.

3. СТВОРЕННЯ І ОБРОБКА ЕЛЕКТРОННИХ ТАБЛИЦЬ MS EXCEL

3.1 Складні об'єкти VBA MS Excel

В Excel-е була створена робоча книга. На аркуші вводили дані відповідно предметної області (Відділ кадрів). Створена табель зарплати співробітників. Також в модулі була створена форма, за допомогою якої можна вводити дані в цей табель. Код даної операції наведено на лістингу 3.1.

Лістинг 3.1. Код введення даних за допомогою форми

Private Sub CommandButton1_Click ()

Dim r As Integer

r = Application.CountA (ActiveSheet.Columns (1)) + 1

Вищенаведений код дозволяє вводити дані в окремих стовпцях.

Лістинг 3.12 Присвоєння значень до текстових полів

ActiveSheet.Cells (r, 1) .Value = TextBox1.Text

ActiveSheet.Cells (r, 2) .Value = TextBox2.Text

ActiveSheet.Cells (r, 3) .Value = TextBox3.Text

Можна вводити дані в текстових полях

Дана форма наведена на малюнку 3.1.

Рис.3.1 Форма для введення даних

Дані цього співробітника ввелись в таблицю.

Також можна захистити лист для збереження інформації з вкладки «Рецензування», «Захист листа». Також дозволити зміни на аркуші. Все це можна зробити з паролем або без пароля. Також було поставлено пароль для приховування коду в модулі.

3.2 Створення звітів і офіційних документів

У середовищі VBA MS Excel можна створювати призначені для користувача функції для обробки даних, в нашому випадку для обчислення заробітної плати за посадами. Код наведено на лістингу 3.2.

Лістинг 3.2 Код обчислення зарплати

Function zp (chasi As Double, ch_plata As Double) As Double

zp = chasi * ch_plata

Для обчислення спочатку потрібно знайти суму робочих годин співробітників, потім в окремій таблиці вводимо погодинну плату за кожним посадам. Результат наведено на малюнку 3.2.

Рис.3.2 Результат лістингу 3.1

Як вже видно з малюнка зарплата обчислюється з двох таблиць по різних посадах. На основі даних зарплати співробітників за допомогою макросу була створена гістограма Також на проекті є функції обчислюють прибутковий податок і суму робочих годин.

Висновок. Мета роботи у тому, що можна застосовувати ці функції при створенні табелі про зарплату. Щоб кожного разу не вводити одні і ті ж дані можна використовувати шаблон цієї відомості і поставити захист у потрібних полях. А також скласти рейтинг працівників за допомогою гістограм.

4. Об'єктна модель VBA MS ACCESS

4.1 Мова програмування VBA MS Access

Програмування на VBA в СУБД Access використовують в основному розробники (програмісти) в процесі створення додатків (різних баз даних, БД), з якими працюють користувачі.

Програмні модулі в VBA MS Access

Спочатку з вкладки «Проекти». «Додати посилання» підключимо середу Microsoft ActiveX Data Objects. Після цього можна буде працювати з Ms Access. Тепер можна з допомогою коду створити таблиці в Ms Access, а також вказати зв'язку між ними. Була створена 5 таблиць і зв'язку між ними. Код наведено на лістингу 4.1.

Лістинг 4.1 Код створення таблиці і зв'язку

Dim cn = New OleDbConnection ( "Provider = microsoft.ACE.oledb.12.0; Data Source = E: \ sotrudniki.accdb")

Dim sql As New OleDbCommand ( "CREATE TABLE sotrudniki (id_sotr char (6), fio char (55), staj char (6), data_roj char (10), id_sotr_dolzhn char (6), id_kafed char (6), id_otpuska char ( 6), primary key (id_sotr), foreign key (id_sotr_dolzhn) references dolzhnosti (id_dolzhn), foreign key (id_kafed) references kafedri (id_kaf), foreign key (id_otpuska) references otpusk (id_otp) ON DELETE CASCADE ON UPDATE CASCADE) ", cn)

Для цього використовували провідник і вказали джерело - існуючу базу. За допомогою оператора Try Catch перевірено помилка при виконанні коду.

Лістинг 4.2 Код перевірки на помилку

Catch ex As Exception

MsgBox ( "На жаль таблиці не створилася")

Використовуючи вищенаведені команди були створені ще 4 допоміжних таблиць. Схема даних в Ms Access наведено на малюнку 4.1.

Рис.4.1 Схема даних БД «Відділ кадрів».

Висновок. З вищенаведених операцій можна зробити такий висновок, що за допомогою коду можна створити таблиці, додавати стовпці в них, а також провести зв'язків в них. Це в основному потрібно розробникам для створення різних БД, з якими працюють користувачі. Проект наводиться в папці Yusupova Z_den_4

5. СТВОРЕННЯ БАЗИ ДАНИХ MS ACCESS: МОДЕЛЬ ADO.NET

5.1 Застосування ADO з даними MS Access

Об'єкт - представник класу Connection представляє з'єднання з джерелом (базою) даних і забезпечує підключення до бази даних. Visual Studio .NET підтримує клас OleDbConnection (забезпечує підключення до інших варіантів БД). Усередині цього класу потрібно вказати відповідний провайдер і джерело потрібної БД.

Об'єкт Recordset представляє будь-який набір записів. Цей набір записів можна уявляти собі як звичайну тимчасову таблицю, що має рядки і стовпці. За допомогою цього об'єкта ви зможете маніпулювати даними, отриманими від встановленого провайдера. Кожен об'єкт Recordset характеризується певним типом курсору, тобто типом об'єкта, обслуговуючого даний набір.

5.2 Управління БД MS Access

Для вибірки даних з таблиці з використанням об'єкта OleDbConnection на лістингу 5.1 приведений код.

Лістинг 5.1 Код вибірки з таблиці

Dim cn = New OleDbConnection ( "Provider = microsoft.ace.oledb.12.0; Data Source = E: \ sotrudniki.accdb")

Dim sql As New OleDbCommand ( "SELECT * FROM dolzhnosti", cn)

Dim rs As OleDbDataReader = sql.ExecuteReader

Dim tabl As New DataTable

Як вже видно з коду, всередині об'єкта OleDbConnection вказано провайдер і джерело бази. Далі читається потік інформації.

Далі потрібно вибрати потрібні поля і рядки для читання таблиці на формі. Код наведено на лістингу 5.2.

Лістинг 5.1 Вибір полів і рядків для читання

While rs.Read = True

Після введення даного коду на формі читається таблиця «посади», наведена на малюнку 5.2.

Рис.5.2. Читання таблиці «Посади»

Висновок. Часто для створення комерційних БД програмісти створюють таблиці і використовують команди Select в платформах VB Net. І за допомогою коду можна виконувати операції, які виконують в Ms Access-е. Проект наводиться в папці Yusupova Z_den_4

6. РОБОТА З таблицями MS ACCESS: Об'єкт DATASET

6.1 Доступ до даних таблиці

Об'єкт DataSet представляє собою буфер для зберігання даних з бази. Цей буфер призначений для зберігання структурованої інформації, представленої у вигляді таблиць, тому першим, найочевиднішим вкладеним об'єктом DataSet є DataTable. Всередині одного об'єкта DataSet може зберігатися кілька завантажених таблиць з бази даних, поміщених у відповідні об'єкти DataTable. Використовуючи об'єкти DataTable була здійснена операція читання таблиці (глава 5).

6.2 Управління даними таблиці через інтерфейс

Через інтерфейс форми можна управляти даними в таблицях. Можна додати, видалити або оновити інформацію. Код додавання в головну таблицю приведена на лістингу 6.1.

Лістинг 6.1 Код додавання інформацію через форми

Dim darhost, id_sotr, fio, staj, data_roj As String

Dim cn = New OleDbConnection ( "Provider = MicroSoft.ACE.OLEDB.12.0; Data Source = E: \ sotrudniki.accdb")

Dim sql2 As New OleDbCommand ( "SELECT max (id_sotr) +1 as max_id_sotr FROM sotrudniki", cn)

Dim rs As OleDbDataReader = sql2.ExecuteReader

Для введення Id вище написаний код, де вказано, що він вводиться автоматично послідовно після існуючої в таблиці. Далі потрібно присвоювати значення до текстових полів і додамо значення всередині команди Insert. Код наведено на лістингу 6.2.

Лістинг 6.2. Додавання даних в таблицю «Співробітники»

darhost = "INSERT INTO sotrudniki (id_sotr, fio, staj, data_roj) VALUES ( '" id_sotr " ','" fio " ','" staj " ','" data_roj " ')"

Dim sql As New OleDbCommand (darhost)

Тепер можна запустити форму і вводити дані в одну таблицю. Форма наведена на малюнку 6.1.

Рис.6.1 Форма для введення інформації

Дані, які вводимо автоматично з'являються в таблиці в Access-е.

Також можна оновити (змінити) дані а таблицях. Приклад наведено на лістингу 6.3.

Лістинг 6.3. Код зміни даних в таблиці

sqlupdate = "update otpusk set nazv_otp = @nazv_otp, data_uh = @ data_uh, data_vih = @data_vih where id_otp = '" Val (Trim (Txtidotp.Text)) " '"

В результаті виконання даного лістингу можна вводити нові дані замість існуючих даних.

Тепер потрібно видалити дані в таблиці. Код наведено на лістингу 6.4.

Лістинг 6.4. Код видалення даних з таблиці

"Delete * from otpusk where id_otp = '" Val (Trim (Txtidotp.Text)) " '"

В результаті даного коду можна видалити певну рядок з таблиці.

Висновок. Отже, використовуючи ті ж команди insert, update, delete можна управляти даними в таблицях. Чи не відкриваючи Access можна за допомогою коду змінити дані в таблицях. Це додаткові можливості в середовищі VB Net. Проект наводиться в папці Yusupova Z_den_6

7. ОБРОБКА ДАНИХ MS ACCESS: Об'єкт DATAADAPTER

7.1 Управління даними таблиці

Клас DbDataAdapter має чотири властивості, які служать для отримання даних з джерела даних і оновлення даних в ньому: властивість SelectCommand повертає дані з джерела даних, а властивості InsertCommand UpdateComman і DeleteCommand використовуються для управління змінами в джерелі даних. Властивість SelectCommand має бути встановлено до виклику методу Fill об'єкта DataAdapter. Властивості InsertCommand, UpdateCommand або DeleteCommand повинні бути встановлені до виклику методу Update об'єкта DataAdapter в залежності від того, які зміни були зроблені в даних в DataTable. Якщо метод Update обробляє вставлену, оновлену або віддалену рядок, DataAdapter використовує відповідне властивість Command для обробки дії. Поточні дані про змінену рядку передаються в об'єкт Command через колекцію Parameters.

7.2 Вибірка і уявлення даних

додаток даний звіт таблиця

Для виконання видалення, додавання або зміни даних в таблицях, як вже приведено на чолі 6 були використані Insert, Update і Delete. Ці команди можна використовувати для вибірки з декількох таблиць і представити за допомогою елемента управління Combobox. Приклад наведено на лістингу 7.1.

Лістинг 7.1 Код вибірки з декількох таблиць

Dim sql4 As New OleDbCommand ( "SELECT * FROM fakulteti nazv_fak", cn)

Dim rs4 As OleDbDataReader = sql4.ExecuteReader

While rs4.Read = True

rs1.Close (): cn.Close (): cn.Open ()

Як вже видно з коду, в Combobox.-е з'являється список назв факультетів - потрібно вибрати один з них, щоб додати в потрібну таблицю. Далі на лістингу 7.2 приведений код додавання з іншої таблиці.

Лістинг 7.2 Вибір даних з таблиці

Dim sql6 As New OleDbCommand ( "SELECT * FROM kafedri order by nazv_kaf, kol_rab", cn)

Dim rs6 As OleDbDataReader = sql6.ExecuteReader

While rs6.Read = True

ComboBox7.Items.Add (Trim (rs6.GetValue (0)) "--->" Trim (rs6.GetValue (1)) "" Trim (rs6.GetValue (2)) "" Trim (rs6.GetValue (3)))

З цієї таблиці обрані інші дані. Результат виконання даних кодів наведено на малюнку 7.1.

Рис.7.1. Вибірка з декількох таблиць

Як вже видно ці дані можна буде додати в таблицю. Таким же чином можна отримати дані і з інших таблиць теж.

Висновок. Дані операції дозволяють розробникам за допомогою одного потоку кодів додавати потрібні дані з кількох таблиць в головну таблицю «Співробітники». Це набагато полегшить їм роботу. Для цього можна використовувати і інші елементи управління. Проект наводиться в папці Yusupova Z_den_6

Список використаних джерел

Розміщено на Allbest.ru

подібні документи

Сутність і застосування додатка Excel як бази даних: створення таблиці, фільтрація і структурування даних, підведення підсумків, консолідація, додавання діаграми і гіперпосилання. Застосування додатка Access для вирішення завдань в різних областях.

Сканери, їх призначення. Мережеве програмне забезпечення. Таблиці в Microsoft Access і створення міжтабличних зв'язків. Документ в пакеті Microsoft Excel, що включає в себе таблицю з вихідними даними, розрахунковими формулами, результатами розрахунку, графіком.

Визначення (завдання структури) даних. Обробка даних. Управління даними. Microsoft Access - щось більше, ніж СУБД. Проектування, створення і управління базою даних на прикладі палітурній майстерні в пакеті MS Access.

Створення програм, що дозволяють створювати бази даних. Створення таблиці бази даних. Створення схеми даних. Створення форм, звітів, запитів. Збільшення обсягу та структурної складності збережених даних. Характеристика системи управління базою даних Access.

Багато табличні бази даних. Види зв'язків між таблицями. Створення запитів, форм і звітів. Робота з текстовим процесором MS Excel, створення таблиць і заповнення їх відповідними розрахунками. Створення в MS Access бази даних заданої структури.

Інформаційна система: поняття, завдання. Створення зв'язків між таблицями. Робота з даними за допомогою запитів. Включення полів в запит. Побудова і застосування форм. Робота з текстовим процесором MS Excel, побудова діаграми. Робота з СУБД MS Access.

Вивчення роботи з реляційною СУБД "Access", основні етапи проектування бази даних: створення таблиці в режимі конструктора, заповнення її даними, проектування зв'язків між ними. Створення форм і запитів, вибір сортування, заповнення звітів.

Проектування баз даних з надання туристичних послуг в різних містах і їх вартості. Особливості реалізації БД в додатку Excel, що управляє електронними таблицями і програмою управліннями базами даних Access. Створення таблиць, запитів та звітів.

Запуск MS Excel. Технологія створення робочої книги. Введення і редагування даних. Технологія створення шаблону таблиці. Форматування вмісту осередків. Система управління базами даних СУБД MS Access. Технологія створення бази даних, форм і звітів.

Мова програмування як система позначень, що застосовується в описі алгоритмів для ЕОМ. Розробка програми на мові програмування Бейсік. Освоєння прийомів роботи з електронними таблицями MS Excel. Створення бази даних за допомогою СУБД MS Access.

Схожі статті