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

Bagaimana cara membuat sel tertentu wajib masuk sebelum menutup buku kerja?

Saat Anda membagikan buku kerja kepada pengguna lain untuk melakukan survei yang memerlukan pendaftaran nama asli, misalnya, setiap pengguna yang diselidiki perlu memasukkan nama mereka di B1. Namun dalam beberapa waktu, beberapa pengguna mungkin menutup buku kerja setelah penyelidikan tanpa memasukkan nama mereka. Pada artikel ini, saya memperkenalkan VBA untuk membuat sel tertentu wajib sebelum menutup buku kerja.

Buat sel wajib masuk dengan VBA


panah gelembung kanan biru Buat sel wajib masuk dengan VBA

1. Aktifkan buku kerja yang berisi sel wajib, dan tekan Alt + F11 kunci untuk membuka Microsoft Visual Basic untuk Aplikasi jendela.

2. Dalam Project panel, klik dua kali Buku Kerja Ini, dan pergi untuk memilih Buku catatan serta SebelumTutup dari daftar bagian kanan, lalu tempel kode di bawah ini ke skrip. Lihat tangkapan layar:

VBA: Buat sel wajib

    If Cells(1, 2).Value = "" Then
        MsgBox "Cell B1 requires user input", vbInformation, "Kutools for Excel"
        Cancel = True
    End If

doc wajib masukkan 1

3. Kemudian simpan kode ini dan tutup jendela yang muncul ini. Sekarang, jika sel B1 kosong saat Anda menutup buku kerja, dialog di bawah ini akan muncul untuk mengingatkan Anda untuk memasukkan sesuatu di B1. Lihat tangkapan layar:
doc wajib masukkan 2

jenis: Anda dapat mengubah sel B1 ke sel lain yang Anda inginkan.


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 (30)
Belum ada peringkat. Jadilah yang pertama memberi peringkat!
Komentar ini diminimalkan oleh moderator di situs
bagaimana cara membuat kolom D16-D300 menjadi wajib jika kolom B16-300 memiliki nilai? Saya menggunakan kode di bawah ini untuk baris 16 dan mencoba variasi tetapi tidak berfungsi. bantuan apa pun sangat dihargai! 'bisnis kami sebagai bidang wajib- perlu diperbaiki jika tidak ada di sana dan jendela muncul Private Sub Workbook_BeforeClose(Cancel As Boolean) 'Langkah 1: Periksa untuk melihat apakah Sel A1 kosong If Sheets("Sensitive Leave Tracker"). Rentang ("B16").Nilai "" And Sheets("Sensitive Leave Tracker").Range("D16").Value = "" Kemudian 'Langkah 2: Kosongkan: batalkan Tutup dan beri tahu pengguna Batal = Benar MsgBox "Tidak Bisa tutup bidang diperlukan" 'Langkah 3: Tidak Kosong; Simpan dan Tutup Else ActiveWorkbook.Close SaveChanges:=True End If End Sub
Komentar ini diminimalkan oleh moderator di situs
Halo, maaf terlambat membalas. Berikut adalah kode makro yang mungkin Anda perlukan. Jika berhasil, beri tahu saya. Terima kasih!

If Application.WorksheetFunction.CountA(Range("B16:B300")) > 0 Kemudian

If Application.WorksheetFunction.CountA(Range("D16:D300")) <> Range("D16:D300").Count Then

MsgBox "Sel D16:D300 membutuhkan input pengguna", vbInformation, "Kutools for Excel"

Batal = Benar

End If

End If
Komentar ini diminimalkan oleh moderator di situs
bagaimana cara membuat kolom Q7-Q500 wajib jika kolom B7-B500 memiliki nilai

Saya tidak ingin menyimpan file sebelum menyelesaikan wajib yang diajukan.

misalnya.
Jika saya memasukkan nilai / Teks apa pun di kolom D7 hingga D500 maka Kolom Q7 hingga Q500 harus menjadi Wajib. (jendela munculan)
Jika saya tidak memasukkan nilai/teks apa pun di kolom D7 hingga D500 maka Q7 hingga Q500 harus kosong
Komentar ini diminimalkan oleh moderator di situs
Hai, coba VBA di atas dan ubah referensi sesuai kebutuhan Anda sendiri.
Komentar ini diminimalkan oleh moderator di situs
Apakah Anda pernah didenda jawaban untuk ini?
Komentar ini diminimalkan oleh moderator di situs
Maaf, pertanyaan yang Anda maksud?
Komentar ini diminimalkan oleh moderator di situs
Halo, terima kasih untuk formula ini, ini berhasil!

Namun, sekarang saya telah membuat template di mana beberapa sel wajib diisi. Tapi setelah buat template dan masuk makro, saya tidak bisa menutupnya, karena saya harus mengisi sel :) Jadi, saya tidak bisa mengirimkan template...(di mana sel wajib masih harus kosong)


Bisakah kamu membantuku?

Terima kasih!
Komentar ini diminimalkan oleh moderator di situs
Ada pembaruan tentang ini?
Komentar ini diminimalkan oleh moderator di situs
Saya tertarik dengan ini juga, terima kasih!
Komentar ini diminimalkan oleh moderator di situs
Saya mempunyai isu yang sama. Apakah ada cara untuk membuat sel wajib tetapi kosong untuk templat?
Komentar ini diminimalkan oleh moderator di situs
Hai semuanya, saya menemukan solusinya adalah menjeda makro di layar alt+f11. Itu kemudian dapat disimpan dan akan dimulai ulang ketika dibuka berikutnya. Untuk melakukan ini tekan alt + f11 kemudian di deretan ikon di atas jendela (sama dengan di mana ikon disk file biru kecil berada) Anda akan melihat ikon Putar, Jeda, Berhenti berwarna hijau dan biru (harus di bawah Debug dan Jalankan pilihan). Klik tombol jeda tengah maka Anda dapat menyimpan.
Komentar ini diminimalkan oleh moderator di situs
Hai semuanya, saya menemukan solusinya adalah menjeda makro di layar alt+f11. Itu kemudian dapat disimpan dan akan dimulai ulang ketika dibuka berikutnya. Untuk melakukan ini tekan alt + f11 kemudian di deretan ikon di atas jendela (sama dengan di mana ikon disk file biru kecil berada) Anda akan melihat ikon Putar, Jeda, Berhenti berwarna hijau dan biru (harus di bawah Debug dan Jalankan pilihan). Klik tombol jeda tengah maka Anda dapat menyimpan.
Komentar ini diminimalkan oleh moderator di situs
Hai, coba kode di bawah ini, yang akan memaksa pengguna lain untuk memasukkan nilai dalam rentang A7:M7 sebelum menutup buku kerja, tetapi biarkan diri Anda menutup buku kerja tanpa mengisi.
Perhatikan: ubah bunga matahari menjadi nama pengguna Anda sendiri. Untuk menemukan dan mengedit nama pengguna Anda, klik File > Opsi > Umum > Nama Pengguna.
Private Sub Workbook_BeforeClose(Cancel As Boolean)
Dim rg As Range
Dim rgs As Range
Set rgs = Application.Range("A7:M7")
If Application.UserName = "sunflower" Then
Exit Sub
End If
    For Each rg In rgs
        If rg.Value = "" Then
        MsgBox "Range A7:M7 requires user input", vbInformation, "Kutools for Excel"
        Cancel = True
        Exit Sub
       End If
    Next
End Sub

Semoga kode ini dapat membantu Anda.
Komentar ini diminimalkan oleh moderator di situs
Apakah ada cara agar sel yang diperlukan f4 dan F5 memiliki data sebelum menutup atau menyimpan?
Komentar ini diminimalkan oleh moderator di situs
Cukup ubah B1 ke F4 dan F5 di kotak teks untuk mengingatkan pengguna.
Komentar ini diminimalkan oleh moderator di situs
Saya ingin membuat baris C2 ke C7 wajib dan C13 ke C19 wajib?

Ada bantuan

2 set rentang ada di sini tetapi di bawah kolom yang sama.
Komentar ini diminimalkan oleh moderator di situs
saya ingin membuat tanda centang wajib di sheet
Komentar ini diminimalkan oleh moderator di situs
Apakah ada cara untuk membuat input sel wajib sebelum tombol perintah Active X dapat digunakan? Saya memiliki pengaturan tombol perintah untuk mengirimkan formulir melalui email tetapi ingin membuat sel-sel tertentu wajib sebelum tombol mengirimkan email.
Komentar ini diminimalkan oleh moderator di situs
Hai, Craig, maaf masalah ini tidak dapat diselesaikan di sini, mungkin orang lain dapat membantu Anda.
Komentar ini diminimalkan oleh moderator di situs
Pertanyaan, kodenya berfungsi, tetapi bagaimana cara memilih rentang dari A7:M7 hingga baris terakhir?

dan setiap kali pengguna akan menyimpan atau menutup buku kerja, bidang wajib harus diisi
Komentar ini diminimalkan oleh moderator di situs
Hai, Lester, berikut adalah kode yang kami modifikasi dapat membantu Anda, ubah rentang A2:F2 ke rentang yang Anda butuhkan.
Private Sub Workbook_BeforeClose(Cancel As Boolean)
'UpdatebyExtend20220916
Dim xRgCount As Integer

Dim xURg As Range

Dim xStr As String

Dim xWSh As Worksheet

Dim xRg, xRg1, xRg2, xRg3 As Range

xStr = "A2:F2"

 

Set xWSh = Application.ActiveSheet

Set xRg = xWSh.Range(xStr)

Set xURg = xWSh.UsedRange

Set xRg1 = xWSh.Cells.Item(xRg.Row + xRg.Rows.Count, 1)

Set xRg2 = xURg.Item(xURg.Count)

Set xRg3 = xWSh.Range(xRg1, xRg2)

Debug.Print xRg3.Address

If (xURg.Row + xURg.Rows.Count - 1) > (xRg.Row + xRg.Rows.Count - 1) Then

   If Application.WorksheetFunction.CountA(xRg3) <> xRg3.Count Then

    MsgBox "There are blank cells under range A2:F2", vbInformation, "Kutools for Excel"

Cancel = True

   End If

End If

End Sub


Komentar ini diminimalkan oleh moderator di situs
Apakah mungkin membuat kode di buku kerja baru yang dihasilkan? skenarionya adalah, saya akan menghasilkan buku kerja baru, dan buku kerja yang dihasilkan harus memiliki bidang wajib yang harus diisi, pengguna tidak dapat menyimpan kecuali jika tidak mengisi bidang wajib. Saya sudah membuat, membuat buku kerja baru. masalah saya adalah, buku kerja baru yang dihasilkan tidak memiliki kode.
Komentar ini diminimalkan oleh moderator di situs
Apakah het mogelijk om als regel erin te zetten dat als C1 een bepaalde tekst bevat dan D1 ook ingevuld moet worden. Dit moet gelden voor sekitar 2.000 reg. Het bestand wordt elke keer aangevuld dus het moet alleen gelden voor het aantal regels die nu zijn ingevuld.

Wanneer ik volgende functie erin zet werkt het niet zoals ik wil omdat ik dan meldingen krijg van cellen die nog aangevuld moeten worden en ik wil een text als waarde en geen cijfer.

Als Application.WorksheetFunction.CountA(Range("B16:B300")) > 0 maka

If Application.WorksheetFunction.CountA(Range("D16:D300")) <> Range("D16:D300").Count Then

MsgBox "Sel D16:D300 vereist gebruikersinvoer", vbInformation, "Kutools for Excel"

Annuleren = Waar

End If

End If

gr emma
Komentar ini diminimalkan oleh moderator di situs
Dapatkah saya mengirimi Anda dokumen melalui email sehingga Anda dapat memberi tahu saya cara menerapkan kode VBA sehingga file tidak dapat disimpan jika setiap baris tidak terisi penuh? Punyaku agak rumit. Akan menghargai bantuannya, sudah lama mencoba.
Komentar ini diminimalkan oleh moderator di situs
Hai, ini kode, akan muncul dialog untuk mengingatkan pengguna sel mana yang perlu dimasukkan, dan buku kerja tidak dapat ditutup dan disimpan hingga semua sel dalam rentang a1:c3 terisi semua konten.
Harap ubah skrip dalam kode:
1. ubah rentang yang Anda butuhkan,
2. ubah nama pengguna "Kutools for Excel" pada kode menjadi nama pengguna Anda sendiri (pastikan pengguna lain tidak memiliki nama pengguna yang sama dengan Anda)

Private Sub Workbook_BeforeClose(Cancel As Boolean)
    
    If Application.UserName <> "Kutools for Excel" Then

        Set Rg = Sheets("Sheet2").Range("a1:c3")

        If WorksheetFunction.CountBlank(Rg) > 0 Then

            MsgBox Rg.Parent.Name & " " & Rg.Address & " requires user input", vbInformation, "Kutools for Excel"
            Cancel = True
        End If
    End If

End Sub
Komentar ini diminimalkan oleh moderator di situs
Maaf pak,

Untuk seseorang yang menggunakan VBA untuk pertama kalinya, dapatkah Anda memberikan panduan tentang cara memulai ini? Saya ingin setiap baris memiliki fitur IE yang sama (sampai seseorang menyelesaikan semua info di baris)
Komentar ini diminimalkan oleh moderator di situs
Hai PM, ikuti saja langkah-langkah di artikel ini, lalu ganti kodenya dengan kode yang saya berikan untuk Anda, lalu simpan. Dan ketika Anda membagikan buku kerja kepada orang lain yang nama penggunanya berbeda dengan Anda, mereka akan diminta untuk mengisi setiap sel dalam rentang (a1:c3, Anda dapat mengubahnya di kode) hingga mereka mengisi semua.
Komentar ini diminimalkan oleh moderator di situs
Terima kasih banyak, maaf saya tidak membalas.
Komentar ini diminimalkan oleh moderator di situs
Bagaimana saya melakukan ini jika saya ingin menerapkan ke seluruh buku kerja dengan pengecualian beberapa kolom. Saya memiliki kolom A:AA dan saat ini memiliki 4,527 baris tetapi lebih banyak akan ditambahkan dan saya perlu memastikan baris baru memiliki persyaratan yang sama. Saya membutuhkan semua bidang untuk diminta kecuali yang di bawah ini.

• Artemis (Kolom A)
• Lokasi Akses Tuan Rumah (Kolom H)
• Alat Penciptaan (Synthesia) (Kolom R)
• Istilah Penelusuran (Kolom U)
• Catatan (Kolom V)
• Tinjauan UKM (kolom Z)
• Pengisi Suara (kolom AA)

Bisakah Anda membantu bagaimana saya dapat mengatur ini dan menyertakan baris yang akan datang yang ditambahkan?
Komentar ini diminimalkan oleh moderator di situs
Bagaimana saya melakukan ini jika saya ingin menerapkan ke seluruh buku kerja dengan pengecualian beberapa kolom. Saya memiliki kolom A:AA dan saat ini memiliki 4,527 baris tetapi lebih banyak akan ditambahkan dan saya perlu memastikan baris baru memiliki persyaratan yang sama. Saya membutuhkan semua bidang untuk diminta kecuali yang di bawah ini.

• Artemis (Kolom A)
• Lokasi Akses Tuan Rumah (Kolom H)
• Alat Penciptaan (Synthesia) (Kolom R)
• Istilah Penelusuran (Kolom U)
• Catatan (Kolom V)
• Tinjauan UKM (kolom Z)
• Pengisi Suara (kolom AA)

Bisakah Anda membantu bagaimana saya dapat mengatur ini dan menyertakan baris yang akan datang yang ditambahkan?
Belum ada komentar yang diposting di sini
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