Siapkan Validasi Data
Anda akan ingin menggunakan fitur Validasi Data di Excel untuk membatasi sel ke teks tertentu. Dalam kasus Anda: "Test1", "Test2", dan "Test3"
- Pilih sel yang seharusnya hanya menerima nilai "Test1", "Test2", dan "Test3"
Di Data di tab Alat Data grup, klik Validasi data tombol.
Dalam Mengizinkan: tarik-turun, pilih Daftar
Dalam Sumber: bidang, masukkan Test1, Test2, Test3
Klik baik untuk menerapkan perubahan.
Pada titik ini, setiap sel yang Anda pilih pada Langkah 1 akan memiliki daftar drop-down yang terkait dengannya. Pengguna spreadsheet hanya akan bisa masuk Test1 , Test2 , atau Test3 . Jika mereka mencoba memasukkan hal lain, mereka akan mendapatkan pesan kesalahan berikut:
Anda dapat menyesuaikan teks pesan kesalahan, jika diinginkan, dengan mengklik Peringatan Kesalahan tab pada Langkah 4 dari atas.
Cegah Salin / Tempelkan Data Sel yang divalidasi
Ini akan bekerja dengan baik, KECUALI dalam kasus di mana seseorang menempelkan konten di atas sel. Satu-satunya cara untuk mencegah hal itu terjadi adalah dengan menulis makro yang mendeteksi pembaruan ke sel, menentukan apakah validasi data diaktifkan pada sel, dan kemudian menolak tempel jika benar.
- Pilih semua sel yang memiliki validasi data dan beri nama Rentang DataValidation . Anda bisa memberi nama rentang sel dengan mengetikkan nama di sebelah kiri bilah rumus, tempat alamat Cell berada.
- Dalam modul kode untuk lembar kerja (Sheet1, misalnya), tambahkan kode berikut:
Private Sub Worksheet_Change(ByVal Target As Range)
'Does the validation range still have validation?
If HasValidation(Range("DataValidationRange")) Then
Exit Sub
Else
Application.Undo
MsgBox "Error: You cannot paste data into these cells." & _
"Please use the drop-down to enter data instead.", vbCritical
End If
End Sub
Private Function HasValidation(r) As Boolean
'Returns True if every cell in Range r uses Data Validation
On Error Resume Next
x = r.Validation.Type
If Err.Number = 0 Then HasValidation = True Else HasValidation = False
End Function
Sayangnya, VBA adalah satu-satunya cara untuk mencegah seseorang menempelkan sel. Ini telah menjadi masalah dengan Validasi Data di Excel sejak awal. Semoga ini bisa membantu.