Note: The other languages of the website are Google-translated. Back to English

Bagaimana cara mengunci atau melindungi sel setelah entri data atau input di Excel?

Misalkan Anda memiliki lembar kerja dan hanya rentang sel kosong tertentu yang memerlukan entri data, dan setelah selesai memasukkan data, Anda memerlukan sel untuk dikunci secara otomatis untuk mencegah perubahan lagi. Bagaimana Anda bisa mencapainya? Artikel ini dapat membantu Anda.

Kunci atau lindungi sel setelah entri data atau input dengan kode VBA


Kunci atau lindungi sel setelah entri data atau input dengan kode VBA

Misalnya, rentang sel kosong tertentu adalah A1: F8. Harap lakukan hal berikut untuk mengunci sel-sel ini setelah entri data di Excel.

1. Harap buka kunci rentang ini terlebih dahulu, pilih sel dan klik kanan, lalu pilih Format Cells di menu klik kanan, dan di Format Cells kotak dialog, hapus centang pada Terkunci kotak di bawah perlindungan tab, dan terakhir mengklik OK tombol. Lihat tangkapan layar:

2. klik ULASAN > Lindungi Lembar. Dan tentukan kata sandi untuk melindungi lembar kerja ini.

3. Klik kanan tab lembar, pilih Lihat kode dari menu klik kanan. Kemudian salin dan tempel kode VBA di bawah ini ke jendela Kode. Lihat tangkapan layar:

Kode VBA: Mengunci atau melindungi sel setelah entri atau input data

Dim mRg As Range
Dim mStr As String

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
If Not Intersect(Range("A1:F8"), Target) Is Nothing Then
    Set mRg = Target.Item(1)
    mStr = mRg.Value
End If
End Sub
Private Sub Worksheet_Change(ByVal Target As Range)
    Dim xRg As Range
    On Error Resume Next
    Set xRg = Intersect(Range("A1:F8"), Target)
    If xRg Is Nothing Then Exit Sub
    Target.Worksheet.Unprotect Password:="123"
    If xRg.Value <> mStr Then xRg.Locked = True
    Target.Worksheet.Protect Password:="123" 
End Sub
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Not Intersect(Range("A1:F8"), Target) Is Nothing Then
    Set mRg = Target.Item(1)
     mStr = mRg.Value
End If
End Sub

Note: Dalam kode, "A1: F8" adalah kisaran yang Anda butuhkan untuk memasukkan data; dan "123" adalah kata sandi dari lembar kerja yang dilindungi ini. Harap ubah sesuai kebutuhan Anda.

4. tekan lain + Q tombol secara bersamaan untuk menutup Microsoft Visual Basic untuk Aplikasi jendela.

Setelah selesai memasukkan data ke sel rentang A1: F8, mereka akan terkunci secara otomatis. Dan Anda akan mendapatkan kotak dialog prompt jika Anda mencoba mengubah konten sel apa pun dari kisaran ini. Lihat tangkapan layar:


Terkait artikel:


Alat Produktivitas Kantor Terbaik

Kutools for Excel Memecahkan Sebagian Besar Masalah Anda, dan Meningkatkan Produktivitas Anda hingga 80%

  • Reuse: Masukkan dengan cepat rumus, bagan yang kompleks dan apa pun yang pernah Anda gunakan sebelumnya; Enkripsi Sel dengan kata sandi; Buat Milis dan mengirim email ...
  • Bilah Formula Super (dengan mudah mengedit beberapa baris teks dan rumus); Membaca Tata Letak (membaca dan mengedit sel dalam jumlah besar dengan mudah); Tempel ke Rentang yang Difilter...
  • Gabungkan Sel / Baris / Kolom tanpa kehilangan Data; Pisahkan Konten Sel; Gabungkan Baris / Kolom Duplikat... Mencegah Sel Duplikat; Bandingkan Rentang...
  • Pilih Duplikat atau Unik Baris; Pilih Baris Kosong (semua sel kosong); Temukan Super dan Temukan Fuzzy di Banyak Buku Kerja; Pilih Acak ...
  • Salinan Tepat Beberapa Sel tanpa mengubah referensi rumus; Buat Referensi Otomatis ke Beberapa Lembar; Sisipkan Poin, Kotak Centang, dan lainnya ...
  • Ekstrak Teks, Tambahkan Teks, Hapus berdasarkan Posisi, Hapus Space; Membuat dan Mencetak Subtotal Paging; Konversi Konten Antar Sel dan Komentar...
  • Filter Super (simpan dan terapkan skema filter ke sheet lain); Penyortiran Lanjutan menurut bulan / minggu / hari, frekuensi dan lainnya; Filter Khusus dengan huruf tebal, miring ...
  • Gabungkan Workbooks dan WorkSheets; Gabungkan Tabel berdasarkan kolom kunci; Pisahkan Data menjadi Beberapa Lembar; Konversi Batch xls, xlsx dan PDF...
  • Lebih dari 300 fitur canggih. Mendukung Office / Excel 2007-2021 dan 365. Mendukung semua bahasa. Penerapan yang mudah di perusahaan atau organisasi Anda. Fitur lengkap Uji coba gratis 30 hari. Jaminan uang kembali 60 hari.
tab kte 201905

Tab Office Membawa antarmuka Tab ke Office, dan Membuat Pekerjaan Anda Jauh Lebih Mudah

  • Aktifkan pengeditan dan pembacaan tab di Word, Excel, PowerPoint, Publisher, Access, Visio, dan Project.
  • Buka dan buat banyak dokumen di tab baru di jendela yang sama, bukan di jendela baru.
  • Meningkatkan produktivitas Anda sebesar 50%, dan mengurangi ratusan klik mouse untuk Anda setiap hari!
officetab bawah
Urutkan komentar berdasarkan
komentar (74)
Rated 5 dari 5 · peringkat 1
Komentar ini diminimalkan oleh moderator di situs
Halo, Saya memiliki spreadsheet dengan rentang A3:AN219, saya ingin melindungi rentang ini saat dan saat input selesai. Tolong bantu saya dalam hal ini. Saya mencoba kode di atas tetapi tidak berfungsi untuk saya
Komentar ini diminimalkan oleh moderator di situs
Ini tidak berfungsi ketika membuka kembali file excel tolong bantu
Komentar ini diminimalkan oleh moderator di situs
Coba kode ini sebagai gantinya: Private Sub Worksheet_Change(ByVal Target As Range) Dim MyRange As Range Set MyRange = Intersect(Range("A1:D100"), Target) If Not MyRange Is Nothing Then Sheets("Sheet1").Unprotect password: ="hello" MyRange.Locked = True Sheets("Sheet1"). Protect password:="hello" End If End Sub Dan ingat untuk mengubah range (A1:D100), password (hello) dan nama/nomor sheet (Sheet1) jika tidak sesuai dengan yang di atas :)
Komentar ini diminimalkan oleh moderator di situs
Terima kasih untuk kodenya. Tolong beri tahu saya cara mengunci sel secara otomatis (mirip dengan yang Anda daftarkan) HANYA SETELAH menyimpan file
Komentar ini diminimalkan oleh moderator di situs
Halo Pak, saya menghadapi satu masalah dengan kode yang sama saat menggunakan kode ini dengan cobe lain di VBA. Tolong sarankan saya beberapa solusi Terima kasih dan Salam Gourav
Komentar ini diminimalkan oleh moderator di situs
Gourav yang terhormat,
Maaf tidak bisa menyelesaikan masalah ini.
Komentar ini diminimalkan oleh moderator di situs
Saya mencoba kodenya dan sepertinya berhasil. Namun itu memungkinkan saya untuk menghapus tanggal yang dimasukkan ke dalam sel tetapi hanya menghentikan saya ketika saya mencoba memasukkan sesuatu yang lain. Apakah ada cara agar data tidak terhapus?
Komentar ini diminimalkan oleh moderator di situs
Stacy yang terhormat,
Masalah yang sama tidak muncul dalam kasus saya. Kode mencegah pengguna memasukkan serta menghapus data dari rentang yang ditentukan. Apakah Anda akan memberikan versi Office Anda untuk pengujian lebih lanjut?
Komentar ini diminimalkan oleh moderator di situs
Bagi siapa saja yang mungkin tersandung di sini sejak komentar ini. Jika Anda harus membuka kunci lembar kerja SETIAP SAAT Anda mengisi sel maka Anda harus terlebih dahulu, - Buka kunci lembar kerja - Sorot area lembar kerja kode yang berlaku - Klik kanan dan buka 'format sel' - Pergi ke tab paling kanan yang disebut 'Perlindungan' dan UNCHECK bagian 'Terkunci' (Bahkan jika Itu muncul sebagai isian padat alih-alih centang) Setelah itu Anda akan dapat memasukkan data dalam banyak sel tanpa harus membuka kunci setiap saat. Ingatlah jika Anda perlu mengunjungi kembali sel yang terkunci untuk menghapus atau mengedit informasi, Anda mungkin perlu mengulangi langkah-langkah di atas. Semoga ini membantu.
Komentar ini diminimalkan oleh moderator di situs
saya suka mengunci hanya sel yang diedit. setelah saya memasukkan data apa pun ke sel kosong, saya perlu mengunci sel yang diedit untuk dikunci secara otomatis tetapi bukan sel kosong.
Komentar ini diminimalkan oleh moderator di situs
Subhash yang terhormat,
Setelah menggunakan kode, hanya sel yang diedit yang dikunci dalam rentang yang ditentukan. Dan Anda masih dapat memasukkan data ke dalam sel kosong dalam rentang yang ditentukan sesuai kebutuhan. Setelah mengisi sel kosong, itu akan dikunci secara otomatis.
Komentar ini diminimalkan oleh moderator di situs
Tidak, itu mengunci seluruh rentang sekaligus setelah input data ke dalam sel dalam rentang
Komentar ini diminimalkan oleh moderator di situs
Pradip yang terhormat,
Versi Office mana yang Anda gunakan?
Komentar ini diminimalkan oleh moderator di situs
Thanx untuk codingnya, tapi saya punya masalah untuk memasukkan 2 coding dalam 1 lembar, mohon bantuannya.
Komentar ini diminimalkan oleh moderator di situs
Adil yang terhormat,
Maaf tidak bisa menyelesaikan masalah ini.
Komentar ini diminimalkan oleh moderator di situs
Hai,
Pak saya ingin mengunci setelah satu kali input data!
Seperti saya mengikuti satu pelanggan dan menulis status, maka karyawan lainnya tidak dapat mengedit atau memodifikasi itu!
Komentar ini diminimalkan oleh moderator di situs
Selamat siang,
Metode dalam posting ini juga dapat membantu Anda mengatasi masalah ini.
Komentar ini diminimalkan oleh moderator di situs
sel bahkan tidak dapat diedit ... apa yang salah tidak mengerti tolong bantu
Komentar ini diminimalkan oleh moderator di situs
Selamat siang,
Pada awalnya, Anda perlu mengatur sel tertentu ke Tidak Terkunci untuk diedit, lalu lindungi lembar kerja. Dan terakhir terapkan skrip VBA.
Komentar ini diminimalkan oleh moderator di situs
apakah harus coding?
Komentar ini diminimalkan oleh moderator di situs
Hi


saya ingin mengunci rentang setelah masuk ke satu sel dalam rentang, bisakah Anda memberi tahu saya bagaimana saya perlu mengedit ini untuk melakukan ini, terima kasih
Komentar ini diminimalkan oleh moderator di situs
Hi
mengedit kode apakah ada cara saya bisa mengunci semua sel dalam rentang setelah data dimasukkan ke dalam satu sel dalam rentang itu? jadi mereka hanya bisa memasukkan data ke dalam satu sel dalam rentang bukan kelipatan.


Terima kasih
Komentar ini diminimalkan oleh moderator di situs
Jackie yang terhormat,
Kode VBA di bawah ini dapat membantu Anda memecahkan masalah.

Sub Lembar Kerja Pribadi_Rubah (Rentang Target As ByVal)
Redupkan xRg Sebagai Rentang
Redupkan xSRg Sebagai Rentang
On Error Resume Next
Tetapkan xSRg = Range("A1:F8")
Tetapkan xRg = Intersect(xSRg, Target)
Jika xRg Bukan Apa-apa Kemudian Keluar Sub
Target.Worksheet.Unprotect Password:="123"
xSRg.Terkunci = Benar
Target.Lembar Kerja.Lindungi Kata Sandi:="123"
End Sub
Komentar ini diminimalkan oleh moderator di situs
Halo,
Apakah ada cara untuk mengunci hanya sel daripada seluruh lembar? Misalnya, jika pengguna memasukkan "Ya" di A2, maka A2 akan segera mengunci untuk tidak mengizinkan perubahan apa pun. Saya masih ingin jika orang lain masih bisa mengedit sel lain juga. Terima kasih!
Komentar ini diminimalkan oleh moderator di situs
Hai Smith,
Kode VBA di bawah ini dapat membantu Anda memecahkan masalah. Silahkan dicoba dan terima kasih atas komentarnya.

Sub Lembar Kerja Pribadi_Rubah (Rentang Target As ByVal)
On Error Resume Next
Target.Worksheet.Unprotect Password:="123"
Target.Terkunci = Benar
Target.Lembar Kerja.Lindungi Kata Sandi:="123"
End Sub
Komentar ini diminimalkan oleh moderator di situs
Selamat pagi,

Apakah ada cara untuk mencegah pengguna mengklik kanan "lihat kode" dan melihat kata sandi admin?
Komentar ini diminimalkan oleh moderator di situs
Tidak apa-apa, aku mengerti.
Komentar ini diminimalkan oleh moderator di situs
Bagaimana? saya tidak mengerti...
Komentar ini diminimalkan oleh moderator di situs
halo ada yang butuh bantuan


saya benar-benar melakukan daftar kerja untuk sekelompok besar orang, dan lembar ini dapat diakses oleh semua orang sehingga mereka dapat memasukkan permintaan mereka untuk hari libur / cuti tahunan dll. Namun saya hanya ingin membatasi jumlah orang yang cuti untuk masing-masing hari (maksimum 5 cuti) dan setelah 5 permintaan cuti dimasukkan untuk hari itu, tidak ada orang lain yang dapat memenuhi permintaan lagi untuk tanggal tersebut.


apakah ada kode/fungsi yang akan menghitung jumlah request tertentu perhari lalu ketika kuota tercapai, sel lain diblokir agar request tidak melebihi? Terima kasih sebelumnya
Komentar ini diminimalkan oleh moderator di situs
Hari baik,
Selamat datang untuk memposting pertanyaan apa pun di forum kami: https://www.extendoffice.com/forum.html.
Anda akan mendapatkan lebih banyak dukungan Excel dari profesional kami atau penggemar Excel lainnya.
Komentar ini diminimalkan oleh moderator di situs
Hai - posting ini sangat membantu dan berfungsi dengan baik. Namun, filter saya berhenti bekerja saat sel terkunci. Apakah ada cara untuk mengatasi ini? Terima kasih!
Komentar ini diminimalkan oleh moderator di situs
Hai Kim,
Maaf tidak bisa membantu dengan ini. Fitur filter dinonaktifkan di lembar kerja yang dilindungi secara default.
Komentar ini diminimalkan oleh moderator di situs
Terima kasih kawan, Ini Menyelamatkan pekerjaan saya : D
Komentar ini diminimalkan oleh moderator di situs
ketika saya keluar dari file yang sedang berfungsi dan membukanya lagi, saya menemukan bahwa sel baru tidak terkunci setelah entri data, hanya sel kunci sebelumnya yang menemukan kunci. solusi apapun
Komentar ini diminimalkan oleh moderator di situs
Hai Nazmul,
Anda perlu menyimpan buku kerja sebagai Buku Kerja Excel Macro-Enabled sebelum menutupnya.
Belum ada komentar yang diposting di sini
Muat Lebih
Tinggalkan komentar anda
Posting sebagai Tamu
×
Beri peringkat pos ini:
0   Karakter
Lokasi yang Disarankan

Ikuti kami

Hak Cipta © 2009 - www.extendoffice.com. | Seluruh hak cipta. Dipersembahkan oleh ExtendOffice. | Peta Situs
Microsoft dan logo Office adalah merek dagang atau merek dagang terdaftar dari Microsoft Corporation di Amerika Serikat dan / atau negara lain.
Dilindungi oleh Sectigo SSL