Sering kita dihadapkan pada masalah mencari jumlah nilai data pada suatu tabel atau array.
Misalnya dalam satu tabel terdapat 20 data berupa angka acak dalam rentang [1,10). Jika ada pertanyaan berapa jumlah angka 9 yang ada dalam tabel tersebut?
Pada ilustrasi 1. menggambarkan bilangan acak dalam rentang [1,10). Kita diminta mencari jumlah angka 9 yang muncul.
Untuk menyelesaikan masalah tersebut dalam Visual Basic 6.0 dapat dibuat satu fungsi berikut;
------------------------------------------------------------------------------------------------
Function COUNTIF(Data(), strOperator As String, Nilai As Integer)
Dim i, j, N As Integer
N = UBound(Data)
i = 0
For j = 1 To N
Select Case strOperator
Case "<" If Data(j) < i =" i">"
If Data(j) > Nilai Then
i = i + 1
End If
Case "<=" If Data(j) <= Nilai Then i = i + 1 End If Case ">="
If Data(j) >= Nilai Then
i = i + 1
End If
Case "="
If Data(j) = Nilai Then
i = i + 1
End If
Case "<>"
If Data(j) <> Nilai Then
i = i + 1
End If
Case Else
MsgBox "Invalid operator"
Exit Function
End Select
Next j
COUNTIF = i
End Function
------------------------------------------------------------------------------------------------
Function COUNTIF diatas dibuat lebih flexible, misalkan kita diminta untuk mencari data seperti kasus diatas cara penyelesainnya adalah:
Masukkan Data pada Ilustrasi 1 kedalam ARRAY, atau kita bisa membuat array sendiri dengan data acak.
Membuat array untuk 20 data dengan nilai data dalam rentang [1,10)
-----------------------------------------------------------------------------------------------
Dim Data()
Dim Hasil as Integer
Redim Data(20)
For i=1 to 20
Data(i)=Round(Rnd()*10),0)
next i
'Panggil Fungsi
Hasil=COUNTIF(Data, "=", 9) 'artinya mencari jumlah data yang nilainya sama dengan 9
-----------------------------------------------------------------------------------------------
Operatornya dapat kita sesuaikan dengan kebutuhan, misalnya mencari data yang kurang dari 9 (COUNTIF(DATA, "<",9)), lebih besar dari 9 (COUNTIF(DATA, ">",9)), dst.
mudahkan,... selamat mencoba.
Misalnya dalam satu tabel terdapat 20 data berupa angka acak dalam rentang [1,10). Jika ada pertanyaan berapa jumlah angka 9 yang ada dalam tabel tersebut?
Pada ilustrasi 1. menggambarkan bilangan acak dalam rentang [1,10). Kita diminta mencari jumlah angka 9 yang muncul.
Untuk menyelesaikan masalah tersebut dalam Visual Basic 6.0 dapat dibuat satu fungsi berikut;
------------------------------------------------------------------------------------------------
Function COUNTIF(Data(), strOperator As String, Nilai As Integer)
Dim i, j, N As Integer
N = UBound(Data)
i = 0
For j = 1 To N
Select Case strOperator
Case "<" If Data(j) < i =" i">"
If Data(j) > Nilai Then
i = i + 1
End If
Case "<=" If Data(j) <= Nilai Then i = i + 1 End If Case ">="
If Data(j) >= Nilai Then
i = i + 1
End If
Case "="
If Data(j) = Nilai Then
i = i + 1
End If
Case "<>"
If Data(j) <> Nilai Then
i = i + 1
End If
Case Else
MsgBox "Invalid operator"
Exit Function
End Select
Next j
COUNTIF = i
End Function
------------------------------------------------------------------------------------------------
Function COUNTIF diatas dibuat lebih flexible, misalkan kita diminta untuk mencari data seperti kasus diatas cara penyelesainnya adalah:
Masukkan Data pada Ilustrasi 1 kedalam ARRAY, atau kita bisa membuat array sendiri dengan data acak.
Membuat array untuk 20 data dengan nilai data dalam rentang [1,10)
-----------------------------------------------------------------------------------------------
Dim Data()
Dim Hasil as Integer
Redim Data(20)
For i=1 to 20
Data(i)=Round(Rnd()*10),0)
next i
'Panggil Fungsi
Hasil=COUNTIF(Data, "=", 9) 'artinya mencari jumlah data yang nilainya sama dengan 9
-----------------------------------------------------------------------------------------------
Operatornya dapat kita sesuaikan dengan kebutuhan, misalnya mencari data yang kurang dari 9 (COUNTIF(DATA, "<",9)), lebih besar dari 9 (COUNTIF(DATA, ">",9)), dst.
mudahkan,... selamat mencoba.
wahhh ini yang saya cari,
BalasHapustapi saya masi kurang jelas , bisa ngga menampilkan gambar form nya di vb, jadi bisa tau cara kerjanya, trimakasih :)
salam kenal yaaa