Bagaimana cara menemukan nilai dalam array menggunakan vba?
Saat Anda menyimpan nilai dalam array, mungkin ada saatnya Anda perlu melakukan pencarian array. Dalam hal ini, Anda perlu mengetahui metode yang dapat Anda gunakan. Sekarang lihat kode di bawah ini yang dapat membantu Anda memahami cara mencari nilai dalam array.
- Di bagian pertama kode Anda memiliki variabel yang perlu Anda gunakan nanti dalam kode.
- Setelah itu, bagian selanjutnya menghasilkan angka acak menggunakan RND untuk mendapatkan sepuluh nilai dari array.
- Selanjutnya, kotak masukan memungkinkan Anda memasukkan nilai yang ingin Anda cari di tabel.
- Setelah itu, Anda memiliki baris yang menggunakan pernyataan IF untuk memeriksa apakah nilai yang Anda masukkan di kotak input adalah angka atau bukan.
- Di bagian ini Anda memiliki kode string yang akan digunakan di kotak pesan jika nilai yang Anda masukkan tidak ditemukan.
- Bagian kode ini menggunakan perulangan For (For Each) untuk mengulang setiap elemen dalam array dan memeriksa apakah nilai yang Anda masukkan ada dalam array atau tidak.
- Bagian terakhir dari kode menampilkan pesan yang menunjukkan apakah nilainya ditemukan atau tidak.
Option Base 1 Sub vba_array_search() 'this section declares an array and variables 'that you need to search within the array. Dim myArray(10) As Integer Dim i As Integer Dim varUserNumber As Variant Dim strMsg As String 'This part of the code adds 10 random numbers to 'the array and shows the result in the 'immediate window as well. For i = 1 To 10 myArray(i) = Int(Rnd * 10) Debug.Print myArray(i) Next i 'it is an input box that asks 'you the number that you want to find Loopback: varUserNumber = InputBox _ ("Enter a number between 1 and 10 to search for:", _ "Linear Search Demonstrator") 'it's an if statement that checks for the value that you 'have entered in the input box. If varUserNumber = "" Then End If Not IsNumeric(varUserNumber) Then GoTo Loopback If varUserNumber < 1 Or varUserNumber > 10 Then GoTo Loopback 'message to show if the value doesn't found. strMsg = "Your value, " & varUserNumber & _ ", was not found in the array." 'loop through the array and match each value with the 'the value you have entered in the input box. For i = 1 To UBound(myArray) If myArray(i) = varUserNumber Then strMsg = "Your value, " & varUserNumber & _ ", was found at position " & i & " in the array." Exit For End If Next i 'message box in the end MsgBox _ strMsg, vbOKOnly + vbInformation, _ "Linear Search Result" End Sub
Apa itu VBA