Visual Basic 2010 merupakan bagian dari Microsoft Visual Studio 2010, yaitu IDE untuk mengembangkan aplikasi berbasis .NET Framework. Bahasa yang digunakan adalah VB.NET, yaitu versi modern dari bahasa Visual Basic yang sudah mendukung pemrograman berorientasi objek (OOP).
Drag and Drop GUI: Memungkinkan pengguna membuat tampilan aplikasi Windows dengan mudah menggunakan antarmuka grafis.
IntelliSense: Fitur yang membantu saat menulis kode dengan menyarankan nama variabel, fungsi, atau properti.
Debugger Terintegrasi: Memudahkan untuk melacak dan memperbaiki kesalahan (bug).
Event-driven Programming: Aplikasi dibuat berdasarkan respon terhadap event (misalnya klik tombol, input data, dll).
Kompatibel dengan .NET Framework: Mendukung pengembangan aplikasi desktop, layanan web, hingga aplikasi basis data.
Aplikasi kasir
Sistem manajemen data sekolah
Aplikasi input dan laporan nilai siswa
Kalkulator desktop
Formulir input database
Toolbox: Berisi kontrol seperti Button, TextBox, Label, dsb.
Form Designer: Tempat mendesain tampilan aplikasi.
Code Editor: Tempat menulis logika program (kode).
Solution Explorer: Menampilkan struktur proyek.
Properties Window: Mengatur properti objek pada form.
Klik ikon Microsoft Visual Studio 2010 di desktop atau menu Start.
Pilih menu File → New Project.
Pilih Visual Basic pada bagian kiri.
Pilih jenis proyek Windows Forms Application.
Beri nama proyek (misalnya: AplikasiNilai).
Klik OK.
Gunakan Toolbox (sebelah kiri) untuk menambahkan kontrol:
Label, TextBox, Button, ListBox, ComboBox, dll.
Seret dan letakkan kontrol ke Form1 (area desain).
Atur Properties (nama, warna, teks, ukuran) melalui jendela Properties.
Klik ganda pada tombol atau kontrol yang ingin diberi aksi.
Masukkan kode di jendela kode yang muncul.
Klik tombol Start Debugging (F5) di toolbar.
Aplikasi akan terbuka dan siap diuji.
Coba semua fitur.
Jika ada error, Visual Basic akan menunjukkan pesan kesalahan.
Perbaiki kode sesuai kebutuhan.
Flowchart adalah diagram atau bagan alur yang digunakan untuk menggambarkan alur logika atau proses dalam bentuk simbol-simbol grafis. Flowchart sangat berguna dalam perencanaan program, prosedur kerja, maupun sistem karena memperjelas langkah-langkah yang harus dilakukan secara visual.
Memvisualisasikan logika pemecahan masalah atau algoritma.
Membantu memahami dan menganalisis proses sebelum membuat program.
Mempermudah komunikasi antara programmer dan non-programmer.
Sebagai dokumentasi sistem/program.
| Simbol | Nama | Fungsi |
|---|---|---|
| 🔷 (jajar genjang) | Input/Output | Menunjukkan proses input atau output data. |
| ▭ (persegi panjang) | Proses | Menunjukkan langkah proses yang dilakukan (misal: perhitungan, penyimpanan). |
| 🔽 (belah ketupat) | Decision / Keputusan | Menandakan pengambilan keputusan bercabang (ya/tidak, benar/salah). |
| ⭕ (oval) | Terminator (Start/End) | Awal atau akhir dari flowchart. |
| ➝ | Panah (Arrow) | Menghubungkan antar simbol dan menunjukkan arah alur. |
Silakan tekan tombol dibawah ini jika ada pertanyaan atau saran

Public Class Form7
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
If MaskedTextBox1.Text = "" Then
MsgBox("Isi dulu Nama anda")
Else
MsgBox("Nama Saya " + MaskedTextBox1.Text + ",Usia Saya " + MaskedTextBox2.Text + " Tahun Dan saya sedang belajar Visual Basic")
End If
End Sub
End Class
Tuliskan script & buat aplikasi visual basic sesuai dengan flowchart & design dibawah ini



DataGridView di Visual Basic adalah sebuah kontrol (komponen) yang digunakan untuk menampilkan dan mengelola data dalam bentuk tabel di aplikasi Windows Forms.
Kontrol ini sangat berguna ketika kita ingin menampilkan data dari database atau daftar (list) dalam format baris dan kolom yang rapi, mirip seperti spreadsheet di Excel.
Script :
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
' Membuat kolom untuk DataGridView
DataGridView1.ColumnCount = 4
DataGridView1.Columns(0).Name = "No"
DataGridView1.Columns(1).Name = "Nama Produk"
DataGridView1.Columns(2).Name = "Jumlah Terjual"
DataGridView1.Columns(3).Name = "Harga Per Unit (Rp)"
' Menambahkan baris data ke dalam DataGridView
Dim row As String() = New String() {"1", "Komputer A", "10", "5000000"}
DataGridView1.Rows.Add(row)
row = New String() {"2", "Komputer B", "5", "4500000"}
DataGridView1.Rows.Add(row)
row = New String() {"3", "Komputer C", "8", "6000000"}
DataGridView1.Rows.Add(row)
row = New String() {"4", "Komputer D", "3", "7000000"}
DataGridView1.Rows.Add(row)
row = New String() {"5", "Komputer E", "7", "6500000"}
DataGridView1.Rows.Add(row)
' Menyesuaikan lebar kolom
DataGridView1.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.Fill
'DataGridView1.ColumnCount = 4: Menentukan jumlah kolom dalam DataGridView.
'DataGridView1.Columns(0).Name = "No": Memberi nama pada setiap kolom.
'DataGridView1.Rows.Add(row): Menambahkan baris data ke dalam DataGridView.
'DataGridView1.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.Fill: Mengatur agar lebar kolom menyesuaikan dengan lebar DataGridView.
End Sub

Imports System.Data.OleDb
Public Class Form9
Dim conn As OleDbConnection
Dim cmd As OleDbCommand
Dim sql As String
Dim db As String = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=D:\Materi Pembelajaran\2025 - 2026\Semester 1\XII-1\Integrasi Database Access\db_siswa.mdb;"
Sub koneksi()
conn = New OleDbConnection(db)
conn.Open()
End Sub
Private Sub btnSimpan_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnSimpan.Click
Call koneksi()
sql = "INSERT INTO tbl_siswa (NIS, Nama, Jurusan) VALUES (@nis, @nama, @jurusan)"
cmd = New OleDbCommand(sql, conn)
cmd.Parameters.AddWithValue("@nis", txtNIS.Text)
cmd.Parameters.AddWithValue("@nama", txtNama.Text)
cmd.Parameters.AddWithValue("@jurusan", txtJurusan.Text)
cmd.ExecuteNonQuery()
MessageBox.Show("Data berhasil disimpan")
conn.Close()
End Sub
End Class
Tambahkan DataGridView dengan nama DataGridView1.
Tambahkan Button bernama btnTampil (untuk memanggil data).
Imports System.Data.OleDb
Public Class Form10
Dim conn As OleDbConnection
Dim da As OleDbDataAdapter
Dim ds As DataSet
Dim db As String = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=D:\Materi Pembelajaran\2025 - 2026\Semester 1\XII-1\Integrasi Database Access\db_siswa.mdb;"
' Prosedur koneksi
Sub koneksi()
conn = New OleDbConnection(db)
conn.Open()
End Sub
' Tampilkan data ke DataGridView
Sub tampilData()
Call koneksi()
da = New OleDbDataAdapter("SELECT * FROM tbl_siswa", conn)
ds = New DataSet()
da.Fill(ds, "tbl_siswa")
DataGridView1.DataSource = ds.Tables("tbl_siswa")
conn.Close()
End Sub
' Event klik tombol tampil
Private Sub btnTampil_Click(ByVal sender As Object, ByVal e As EventArgs) Handles btnTampil.Click
tampilData()
End Sub
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Form9.Show()
Me.Hide()
End Sub
End Class
Try
Call koneksi()
cb = New OleDbCommandBuilder(da) ' Otomatis buat query Insert, Update, Delete
da.Update(ds, "tbl_siswa") ' Simpan perubahan dataset ke database
conn.Close()
MessageBox.Show("Data berhasil diperbarui!", "Informasi", MessageBoxButtons.OK, MessageBoxIcon.Information)
Catch ex As Exception
MessageBox.Show("Gagal update: " & ex.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error)
End Try
Try
If DataGridView1.CurrentRow IsNot Nothing Then
' Konfirmasi hapus
If MessageBox.Show("Yakin ingin menghapus data ini?", "Konfirmasi", MessageBoxButtons.YesNo, MessageBoxIcon.Question) = DialogResult.Yes Then
' Hapus baris dari DataGridView & DataSet
DataGridView1.Rows.Remove(DataGridView1.CurrentRow)
' Update perubahan ke database
Call koneksi()
cb = New OleDbCommandBuilder(da)
da.Update(ds, "tbl_siswa")
conn.Close()
MessageBox.Show("Data berhasil dihapus!", "Informasi", MessageBoxButtons.OK, MessageBoxIcon.Information)
End If
Else
MessageBox.Show("Pilih data yang ingin dihapus dulu!", "Peringatan", MessageBoxButtons.OK, MessageBoxIcon.Warning)
End If
Catch ex As Exception
MessageBox.Show("Gagal hapus: " & ex.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error)
End Try
' === Export ke Excel ===
Private Sub btnExportExcel_Click(ByVal sender As Object, ByVal e As EventArgs) Handles btnExportExcel.Click
Try
' Koneksi ke database Access
Dim connStr As String = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=D:\Materi Pembelajaran\2025 - 2026\Semester 1\XII-1\Tugas buat aplikasi input data siswa\Aplikasi VB\DataSiswa.mdb;"
Dim conn As New OleDbConnection(connStr)
conn.Open()
' Ambil data siswa
Dim da As New OleDbDataAdapter("SELECT * FROM Siswa", conn)
Dim dt As New DataTable
da.Fill(dt)
conn.Close()
' Buka aplikasi Excel
Dim excelApp As New Excel.Application
Dim workbook As Excel.Workbook = excelApp.Workbooks.Add()
Dim worksheet As Excel.Worksheet = workbook.Sheets(1)
' Judul besar
worksheet.Range("A1:L1").Merge()
worksheet.Range("A1").Value = "DATA SISWA SMA PGRI 1 KOTA BOGOR"
worksheet.Range("A1").Font.Size = 16
worksheet.Range("A1").Font.Bold = True
worksheet.Range("A1").HorizontalAlignment = Excel.XlHAlign.xlHAlignCenter
' Header kolom
Dim headers() As String = {"NIS", "NO", "Nama Lengkap", "Tempat Lahir", "Tanggal Lahir", "Jenis Kelamin", "Agama", "Alamat", "Orang Tua/Wali", "No Telepon", "Kelas", "Jurusan"}
For i As Integer = 0 To headers.Length - 1
worksheet.Cells(3, i + 1) = headers(i)
worksheet.Cells(3, i + 1).Font.Bold = True
worksheet.Cells(3, i + 1).Interior.Color = RGB(200, 200, 200) ' Background abu-abu
worksheet.Cells(3, i + 1).HorizontalAlignment = Excel.XlHAlign.xlHAlignCenter
worksheet.Columns(i + 1).ColumnWidth = 15
Next
' Isi data
For r As Integer = 0 To dt.Rows.Count - 1
For c As Integer = 0 To dt.Columns.Count - 1
worksheet.Cells(r + 4, c + 1) = "'" & dt.Rows(r)(c).ToString()
Next
Next
' Auto-fit kolom
worksheet.Columns.AutoFit()
' Simpan file Excel
Dim savePath As String = "D:\Materi Pembelajaran\2025 - 2026\Semester 1\XII-1\Tugas buat aplikasi input data siswa\DataSiswa.xlsx"
workbook.SaveAs(savePath)
workbook.Close()
excelApp.Quit()
MsgBox("Data berhasil diekspor ke Excel di: " & savePath)
Catch ex As Exception
MsgBox("Gagal ekspor: " & ex.Message)
End Try
End Sub
Imports System.Data.OleDb
Imports Microsoft.Office.Interop
Public Class Form1
Dim conn As OleDbConnection
Dim cmd As OleDbCommand
Dim da As OleDbDataAdapter
Dim ds As DataSet
Dim db As String = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=D:\Materi Pembelajaran\2025 - 2026\Semester 1\XII-1\Tugas buat aplikasi input data siswa\Aplikasi VB\DataSiswa.mdb;"
' ==== Membuka koneksi ====
Sub Koneksi()
conn = New OleDbConnection(db)
If conn.State = ConnectionState.Closed Then
conn.Open()
End If
End Sub
' ==== Tampilkan semua data ====
Sub TampilkanData()
Koneksi()
da = New OleDbDataAdapter("SELECT * FROM Siswa", conn)
ds = New DataSet
da.Fill(ds, "Siswa")
DataGridView1.DataSource = ds.Tables("Siswa")
conn.Close()
End Sub
' ==== Bersihkan TextBox ====
Sub ClearInput()
For Each ctl As Control In Me.Controls
If TypeOf ctl Is TextBox Then
ctl.Text = ""
End If
Next
dtpTanggallahir.Value = Date.Now
cmbJK.SelectedIndex = -1
cmbAgama.SelectedIndex = -1
cmbKelas.SelectedIndex = -1
cmbJurusan.SelectedIndex = -1
TextBox1.Focus()
End Sub
Private Sub Form1_Load(ByVal sender As Object, ByVal e As EventArgs) Handles MyBase.Load
' Tampilkan data awal
TampilkanData()
' Isi Jenis Kelamin
cmbJK.Items.Add("Laki-laki")
cmbJK.Items.Add("Perempuan")
' Isi Agama
cmbAgama.Items.Add("Islam")
cmbAgama.Items.Add("Kristen")
cmbAgama.Items.Add("Katolik")
cmbAgama.Items.Add("Hindu")
cmbAgama.Items.Add("Buddha")
cmbAgama.Items.Add("Konghucu")
' Isi Kelas
cmbKelas.Items.Add("X-1")
cmbKelas.Items.Add("X-2")
cmbKelas.Items.Add("X-3")
cmbKelas.Items.Add("XI-1")
cmbKelas.Items.Add("XI-2")
cmbKelas.Items.Add("XI-3")
cmbKelas.Items.Add("XI-4")
cmbKelas.Items.Add("XII-1")
cmbKelas.Items.Add("XII-2")
cmbKelas.Items.Add("XII-3")
' Isi Jurusan
cmbJurusan.Items.Add("Saintek")
cmbJurusan.Items.Add("Soshum")
'Format Tanggal Lahir
dtpTanggallahir.Format = DateTimePickerFormat.Custom
dtpTanggallahir.CustomFormat = "yyyy-MM-dd"
End Sub
' ==== CREATE (Simpan Data Baru) ====
Private Sub btnSimpan_Click(ByVal sender As Object, ByVal e As EventArgs) Handles btnSimpan.Click
Try
Koneksi()
Dim sql As String = "INSERT INTO Siswa (NIS, NamaLengkap, TempatLahir, TanggalLahir, JenisKelamin, Agama, Alamat, OrangTuaWali, NoTelepon, Kelas, Jurusan) " &
"VALUES (@NIS, @NamaLengkap, @TempatLahir, @TanggalLahir, @JenisKelamin, @Agama, @Alamat, @OrangTuaWali, @NoTelepon, @Kelas, @Jurusan)"
cmd = New OleDbCommand(sql, conn)
cmd.Parameters.AddWithValue("@NIS", TextBox1.Text)
cmd.Parameters.AddWithValue("@NamaLengkap", TextBox2.Text)
cmd.Parameters.AddWithValue("@TempatLahir", TextBox3.Text)
cmd.Parameters.AddWithValue("@TanggalLahir", dtpTanggallahir.Value.Date) ' DateTimePicker
cmd.Parameters.AddWithValue("@JenisKelamin", cmbJK.Text) ' ComboBox
cmd.Parameters.AddWithValue("@Agama", cmbAgama.Text) ' ComboBox
cmd.Parameters.AddWithValue("@Alamat", TextBox7.Text)
cmd.Parameters.AddWithValue("@OrangTuaWali", TextBox8.Text)
cmd.Parameters.AddWithValue("@NoTelepon", TextBox9.Text.Trim())
cmd.Parameters.AddWithValue("@Kelas", cmbKelas.Text) ' ComboBox
cmd.Parameters.AddWithValue("@Jurusan", cmbJurusan.Text) ' ComboBox
cmd.ExecuteNonQuery()
conn.Close()
MsgBox("Data berhasil disimpan!")
TampilkanData()
ClearInput()
Catch ex As Exception
MsgBox("Gagal menyimpan data: " & ex.Message)
End Try
End Sub
' ==== READ (Pilih Data dari Grid ke TextBox) ====
Private Sub DataGridView1_CellClick(ByVal sender As Object, ByVal e As DataGridViewCellEventArgs) Handles DataGridView1.CellClick
If e.RowIndex >= 0 Then
Dim row As DataGridViewRow = DataGridView1.Rows(e.RowIndex)
TextBox1.Text = row.Cells("NIS").Value.ToString()
TextBox2.Text = row.Cells("NamaLengkap").Value.ToString()
TextBox3.Text = row.Cells("TempatLahir").Value.ToString()
If Not IsDBNull(row.Cells("TanggalLahir").Value) AndAlso row.Cells("TanggalLahir").Value IsNot Nothing Then
dtpTanggallahir.Value = Convert.ToDateTime(row.Cells("TanggalLahir").Value).Date
Else
dtpTanggallahir.Value = Date.Today
End If
cmbJK.Text = row.Cells("JenisKelamin").Value.ToString()
cmbAgama.Text = row.Cells("Agama").Value.ToString()
TextBox7.Text = row.Cells("Alamat").Value.ToString()
TextBox8.Text = row.Cells("OrangTuaWali").Value.ToString()
TextBox9.Text = row.Cells("NoTelepon").Value.ToString()
cmbKelas.Text = row.Cells("Kelas").Value.ToString()
cmbJurusan.Text = row.Cells("Jurusan").Value.ToString()
End If
End Sub
' ==== UPDATE (Ubah Data) ====
Private Sub btnUpdate_Click(ByVal sender As Object, ByVal e As EventArgs) Handles btnUpdate.Click
Try
Koneksi()
Dim sql As String = "UPDATE Siswa SET NamaLengkap=@NamaLengkap, TempatLahir=@TempatLahir, TanggalLahir=@TanggalLahir, JenisKelamin=@JenisKelamin, Agama=@Agama, Alamat=@Alamat, OrangTuaWali=@OrangTuaWali, NoTelepon=@NoTelepon, Kelas=@Kelas, Jurusan=@Jurusan WHERE NIS=@NIS"
cmd = New OleDbCommand(sql, conn)
cmd.Parameters.AddWithValue("@NamaLengkap", TextBox2.Text)
cmd.Parameters.AddWithValue("@TempatLahir", TextBox3.Text)
cmd.Parameters.AddWithValue("@TanggalLahir", dtpTanggallahir.Value.Date)
cmd.Parameters.AddWithValue("@JenisKelamin", cmbJK.Text)
cmd.Parameters.AddWithValue("@Agama", cmbAgama.Text)
cmd.Parameters.AddWithValue("@Alamat", TextBox7.Text)
cmd.Parameters.AddWithValue("@OrangTuaWali", TextBox8.Text)
cmd.Parameters.AddWithValue("@NoTelepon", TextBox9.Text)
cmd.Parameters.AddWithValue("@Kelas", cmbKelas.Text)
cmd.Parameters.AddWithValue("@Jurusan", cmbJurusan.Text)
cmd.Parameters.AddWithValue("@NIS", TextBox1.Text)
cmd.ExecuteNonQuery()
conn.Close()
MsgBox("Data berhasil diperbarui!")
TampilkanData()
ClearInput()
Catch ex As Exception
MsgBox("Gagal memperbarui data: " & ex.Message)
End Try
End Sub
' ==== DELETE (Hapus Data) ====
Private Sub btnDelete_Click(ByVal sender As Object, ByVal e As EventArgs) Handles btnDelete.Click
Try
Koneksi()
Dim sql As String = "DELETE FROM Siswa WHERE NIS=@NIS"
cmd = New OleDbCommand(sql, conn)
cmd.Parameters.AddWithValue("@NIS", TextBox1.Text)
cmd.ExecuteNonQuery()
conn.Close()
MsgBox("Data berhasil dihapus!")
TampilkanData()
ClearInput()
Catch ex As Exception
MsgBox("Gagal menghapus data: " & ex.Message)
End Try
End Sub
' === Export ke Excel ===
Private Sub btnExportExcel_Click(ByVal sender As Object, ByVal e As EventArgs) Handles btnExportExcel.Click
Try
' Koneksi ke database Access
Dim connStr As String = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=D:\Materi Pembelajaran\2025 - 2026\Semester 1\XII-1\Tugas buat aplikasi input data siswa\Aplikasi VB\DataSiswa.mdb;"
Dim conn As New OleDbConnection(connStr)
conn.Open()
' Ambil data siswa
Dim da As New OleDbDataAdapter("SELECT * FROM Siswa", conn)
Dim dt As New DataTable
da.Fill(dt)
conn.Close()
' Buka aplikasi Excel
Dim excelApp As New Excel.Application
Dim workbook As Excel.Workbook = excelApp.Workbooks.Add()
Dim worksheet As Excel.Worksheet = workbook.Sheets(1)
' Judul besar
worksheet.Range("A1:L1").Merge()
worksheet.Range("A1").Value = "DATA SISWA SMA PGRI 1 KOTA BOGOR"
worksheet.Range("A1").Font.Size = 16
worksheet.Range("A1").Font.Bold = True
worksheet.Range("A1").HorizontalAlignment = Excel.XlHAlign.xlHAlignCenter
' Header kolom
Dim headers() As String = {"NIS", "NO", "Nama Lengkap", "Tempat Lahir", "Tanggal Lahir", "Jenis Kelamin", "Agama", "Alamat", "Orang Tua/Wali", "No Telepon", "Kelas", "Jurusan"}
For i As Integer = 0 To headers.Length - 1
worksheet.Cells(3, i + 1) = headers(i)
worksheet.Cells(3, i + 1).Font.Bold = True
worksheet.Cells(3, i + 1).Interior.Color = RGB(200, 200, 200) ' Background abu-abu
worksheet.Cells(3, i + 1).HorizontalAlignment = Excel.XlHAlign.xlHAlignCenter
worksheet.Columns(i + 1).ColumnWidth = 15
Next
' Isi data
For r As Integer = 0 To dt.Rows.Count - 1
For c As Integer = 0 To dt.Columns.Count - 1
worksheet.Cells(r + 4, c + 1) = "'" & dt.Rows(r)(c).ToString()
Next
Next
' Auto-fit kolom
worksheet.Columns.AutoFit()
' Simpan file Excel
Dim savePath As String = "D:\Materi Pembelajaran\2025 - 2026\Semester 1\XII-1\Tugas buat aplikasi input data siswa\DataSiswa.xlsx"
workbook.SaveAs(savePath)
workbook.Close()
excelApp.Quit()
MsgBox("Data berhasil diekspor ke Excel di: " & savePath)
Catch ex As Exception
MsgBox("Gagal ekspor: " & ex.Message)
End Try
End Sub
' ==== KELUAR ====
Private Sub btnTutup_Click(ByVal sender As Object, ByVal e As EventArgs) Handles btnTutup.Click
Me.Close()
End Sub
End Class