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

Bagaimana cara membuat daftar drop-down dependen di dokumen Word?


Seperti screenshot kiri yang ditampilkan, Anda perlu membatasi pilihan di daftar drop-down kedua berdasarkan opsi di drop-down pertama, bagaimana Anda bisa melakukannya? Artikel ini akan menunjukkan metode untuk membuat daftar drop-down dependen dalam dokumen Word.

Buat daftar drop-down dependen di Word dengan kode VBA


Buat daftar drop-down dependen di Word dengan kode VBA

Kode VBA di bawah ini dapat membantu Anda membuat daftar drop-down dependen dalam dokumen Word. Silakan ikuti petunjuk langkah demi langkah.

1. Pertama, Anda perlu memasukkan dua daftar drop-down ke dalam dokumen Word Anda. Klik Pengembang > Formulir Warisan > Bidang Formulir Drop-Down. Lihat tangkapan layar:

2. Klik kanan daftar drop-down pertama (daftar drop-down ini harus menjadi yang induk), dan klik Properties. Lihat tangkapan layar:

3. Dalam pembukaan Opsi Bidang Formulir Drop-down kotak dialog, Anda perlu:

3.1 Masukkan kategori ke dalam Item drop-down kotak dan kemudian klik Add , ulangi operasi hingga semua kategori ditambahkan ke item dalam kotak daftar turun bawah.

3.2 Masuk ddfood.dll ke dalam Bookmark kotak.

3.3 Klik tombol OK tombol. Lihat tangkapan layar:

4. Klik kanan daftar buka-bawah kedua, klik Properties untuk membuka nya Opsi Bidang Formulir Drop-down kotak dialog, dan di dalam dialog, enter ddKategori ke dalam Bookmark kotak dan klik OK tombol. Lihat tangkapan layar:

5. tekan lain + F11 kunci untuk membuka Microsoft Visual Basic untuk Aplikasi jendela.

6. Dalam Microsoft Visual Basic untuk Aplikasi window, klik Menyisipkan > Modul, lalu salin kode VBA di bawah ini ke jendela Modul.

Kode VBA: Buat daftar drop-down dependen di Word

Sub Populateddfood()
'Update by Extendoffice 2018/10/25
    Dim xDirection As FormField
    Dim xState As FormField
    On Error Resume Next
    Set xDirection = ActiveDocument.FormFields("ddfood")
    Set xState = ActiveDocument.FormFields("ddCategory")
    If ((xDirection Is Nothing) Or (xState Is Nothing)) Then Exit Sub
    With xState.DropDown.ListEntries
        .Clear
        Select Case xDirection.Result
            Case "Fruit"
                .Add "Apple"
                .Add "Banana"
                .Add "Peach"
                .Add "Lychee"
                .Add "Watermelon"
            Case "Vegetable"
                .Add "Cabbage"
                .Add "Onion"
            Case "Meat"
                .Add "Pork"
                .Add "Beef"
                .Add "Mutton"
        End Select
    End With
End Sub

Catatan:

1. Dalam kode, harap ubah item di bawah setiap kasus sesuai kebutuhan Anda.

2. ddfood.dll serta ddKategori harus cocok dengan opsi Bookmark yang Anda masukkan di atas dua Opsi Bidang Formulir Drop-down kotak dialog.

7. Simpan kode dan kembali ke dokumen.

8. Klik kanan daftar drop-down pertama dan klik Properties untuk membuka Opsi Bidang Formulir Drop-down kotak dialog. Pada kotak dialog, pilih nama Makro di atas (di sini adalah Popolateddfood) dari Exit daftar drop-down, dan kemudian klik OK .

9. Sekarang klik Pengembang > Batasi Pengeditan seperti gambar di bawah ini.

10. Dalam Batasi Pengeditan panel, Anda perlu:

10.1) Periksa Izinkan hanya jenis pengeditan ini di dalam dokumen kotak;

10.2) Pilih Mengisi formulir opsi dari daftar drop-down;

10.3) Klik Ya, Start Enforcing Protection tombol;

10.4) Di Mulai Menerapkan Perlindungan dialog, masukkan kata sandi dan klik OK tombol. Lihat tangkapan layar:

Sekarang daftar drop-down dependen dibuat. Saat memilih Buah di daftar drop-down pertama, hanya kategori buah yang bisa dipilih di daftar kedua.


Alat Produktivitas Kata yang Direkomendasikan

 

Kutools For Word - Lebih dari 100 Fitur Canggih Untuk Word, Hemat 50% Waktu Anda

  • Pengoperasian yang rumit dan berulang dapat dilakukan satu kali pemrosesan dalam hitungan detik.
  • Sisipkan beberapa gambar di seluruh folder ke dalam dokumen Word sekaligus.
  • Gabungkan dan gabungkan beberapa file Word di seluruh folder menjadi satu dengan urutan yang Anda inginkan.
  • Pisahkan dokumen saat ini menjadi dokumen terpisah sesuai dengan judul, hentian bagian, atau kriteria lainnya.
  • Konversikan file antara Doc dan Docx, Docx dan PDF, kumpulan alat untuk konversi dan pemilihan umum, dan seterusnya ...
Urutkan komentar berdasarkan
komentar (27)
Belum ada peringkat. Jadilah yang pertama memberi peringkat!
Komentar ini diminimalkan oleh moderator di situs
Apakah ada kode serupa untuk melakukan hal yang hampir sama persis kecuali memiliki bidang formulir teks yang secara otomatis terisi tergantung pada pilihan dropdown? Misalnya, memilih perusahaan tertentu di dropdown dan memiliki bidang formulir teks yang secara otomatis diisi dengan kota tempat perusahaan itu berada?
Komentar ini diminimalkan oleh moderator di situs
Hari baik,
Maaf dapat membantu Anda dengan itu. Terima kasih atas komentarmu.
Komentar ini diminimalkan oleh moderator di situs
Bisakah Anda menambahkan ini ke beberapa area pada satu halaman yang terdiri dari beberapa bagian? Saya berhasil menyelesaikan proses di satu bagian dokumen saya, tetapi ketika saya mencoba untuk menyelesaikan proses yang sama saat berada di halaman yang sama, tetapi di bagian yang berbeda dari dokumen saya dan dengan opsi tarik-turun baru, hanya kotak pertama saya yang ditambahkan sedang bekerja, bukan yang di bagian kedua ..
Komentar ini diminimalkan oleh moderator di situs
Hai ingrid,
Misalkan Anda memiliki tiga kelompok daftar drop-down dependen dalam dokumen Anda. Jika Anda ingin semua daftar drop-down dependen berlaku, harap terapkan kode VBA di bawah ini dan lakukan pengaturan di bawah ini:

Pada langkah 4 dan 5 yang kami sebutkan di artikel, sekarang Anda perlu melakukan perubahan berikut:
1. Untuk grup pertama dari daftar drop-down dependen, silakan masuk ke jendela Properties setiap daftar drop-down dan tentukan Bookmark sebagai ddfood1 dan ddCategory1 secara terpisah;
2. Untuk grup kedua dari daftar drop-down dependen, silakan masuk ke jendela Properties setiap daftar drop-down dan tentukan Bookmark sebagai ddfood2 dan ddCategory2 secara terpisah;
2. Untuk grup ketiga dari daftar drop-down dependen, silakan masuk ke jendela Properties setiap daftar drop-down dan tentukan Bookmark sebagai ddfood3 dan ddCategory3 secara terpisah;

Kemudian lanjutkan persis seperti yang kami sediakan di artikel untuk menyelesaikan seluruh pengaturan.

kode VBA:
Sub Diisidfood()
'Perbarui oleh Extendoffice 2019 / 03 / 18
Redupkan xDirection Sebagai FormField
Redupkan xState Sebagai FormField
Redupkan xRng Sebagai Rentang
Redupkan xFoodBM, xCategoryBM Sebagai String
Tetapkan xRng = Seleksi.Rentang
On Error Resume Next
Untuk i = 1 Untuk ActiveDocument.FormFields.Count
xFoodBM = "ddfood" & i
xCategoryBM = "ddCategory" & i
Setel xDirection = ActiveDocument.FormFields(xFoodBM)
Setel xState = ActiveDocument.FormFields(xCategoryBM)
Jika (Tidak (xState Tidak Ada)) Dan (Tidak (xDirection Tidak Ada)) Kemudian
Dengan xState.DropDown.ListEntries
.Bersih
Pilih Kasus xDirection.Result
Kasus "Buah"
.Tambahkan "Apel"
.Tambahkan "Pisang"
.Tambahkan "Persik"
.Tambahkan "Leci"
.Tambahkan "Semangka"
Kasus "Sayuran"
.Tambahkan "Kubis"
.Tambahkan "Bawang"
Kasus "Daging"
.Tambahkan "Babi"
.Tambahkan "Daging Sapi"
.Tambahkan "Daging kambing"
End Select
Berakhir dengan
End If
Setel xDirection = Tidak Ada
Tetapkan xState = Tidak ada
Next
xRng.Pilih
End Sub
Komentar ini diminimalkan oleh moderator di situs
dapatkah ini dilakukan di versi Word yang lebih lama atau harus disimpan sebagai jenis dokumen tertentu?
Komentar ini diminimalkan oleh moderator di situs
Hai mari,
Versi mana yang Anda maksud?
Komentar ini diminimalkan oleh moderator di situs
Halo,
apakah ada batasan dengan nama di kolom (misalnya 2 kata, atau penggunaan karakter khusus)?
Seperti Bidang A (Nama Perusahaan) Bidang B (Nama Direktur, seperti Jack Black).
Terima kasih!
Komentar ini diminimalkan oleh moderator di situs
Hai Marc,
Ya, ada batasan dengan nama di lapangan.
Untuk beberapa kata dengan spasi, Anda perlu mengganti spasi dengan garis bawah seperti Company_Name.
Dan nama bookmark tidak boleh berisi karakter khusus seperti / \ : * ? " < > |
Terima kasih atas komentar Anda.
Komentar ini diminimalkan oleh moderator di situs
Hai,

Bagaimana kita membungkus teks? Saya mengikuti langkahnya dan itu berfungsi dengan baik kecuali bahwa ketika daftar kedua terlalu panjang, itu melampaui halaman. Apakah ada cara untuk membungkusnya secara otomatis?
Komentar ini diminimalkan oleh moderator di situs
Hi Paul,
Maaf belum bisa membantu Anda. Terima kasih atas komentar Anda.
Komentar ini diminimalkan oleh moderator di situs
HI Saya mendapatkan drop down untuk bekerja. Saya punya pertanyaan
Ketika saya membuat pilihan untuk drop down pertama, Apakah ada cara untuk mengotomatisasi koordinasi dan pilihan terkait untuk drop down berikutnya? Sebagai contoh. Saya memiliki Pengacara drop-down orang tua, dua drop-down anak masing-masing adalah Judul dan Nomor Telepon. Ketika saya memilih nama pengacara, saya ingin drop down anak terkait untuk secara otomatis mengisi judul dan nomor telepon. Bagaimana saya bisa melakukan itu?

Terima kasih sebelumnya.

Sylvia
Komentar ini diminimalkan oleh moderator di situs
Hari baik,
Maaf belum bisa membantu Anda. Terima kasih atas komentar Anda.
Komentar ini diminimalkan oleh moderator di situs
Apakah ada cara untuk menambahkan beberapa bidang kategori berdasarkan satu pilihan? misalnya saya perlu mengatakan Pilih "Anggur" tetapi saya harus dapat memilih 5 opsi (buah, merah, kuat, dll ...) dari 10 opsi yang mungkin dalam daftar bidang drop-down kedua. Saya mengikuti instruksi di atas dan bekerja dengan baik pada satu bidang dengan satu bidang bergantung lainnya saja. Tetapi saya membutuhkan 5 bidang dependen, semuanya dipicu oleh satu bidang dalam hal ini "anggur". Saya menduplikasi bidang tarik-turun tidak berfungsi, saya mencoba menambahkan bidang kedua ke kode, tetapi tidak yakin caranya: ActiveDocument.FormFields("ddCategory") dan ("ddCategory2")
Komentar ini diminimalkan oleh moderator di situs
Hai Ed,
Maaf tidak dapat membantu Anda dengan itu. Terima kasih atas komentarmu.
Komentar ini diminimalkan oleh moderator di situs
Halo, Bagaimana saya bisa menduplikasi kotak kategori? Saya telah menggunakan kode di atas dan berfungsi dengan baik, tetapi hanya untuk satu kotak. Apa yang harus saya lakukan dalam kode jika misalnya saya harus memilih hingga 3 buah setelah saya memilih grup Buah? Saya menduplikasi bidang yang saya buat tetapi hanya satu yang berfungsi.
---------------------
Pilih
BUAH: pisang
apel
"pilih barang"


----------------------------------
Pilih
Sayuran: Kubis
bawang
"pilih barang"
Komentar ini diminimalkan oleh moderator di situs
Terima kasih atas sumber daya yang sangat berguna ini.

Apakah mungkin untuk mengulangi drop-down dependen yang sama beberapa kali dalam formulir?

Saya memerlukan pengisi formulir untuk menetapkan kategori ke setiap baris baru (tetapi dengan opsi yang sama setiap kali). Saya telah berhasil membuat drop-down tetapi ketika saya membatasi pengeditan untuk menguji mereka tampaknya mengatur ulang sendiri saat saya mengerjakan baris.

Terima kasih
amy
Komentar ini diminimalkan oleh moderator di situs
Saya menggunakan kode yang sama namun teks yang saya ganti dengan ddcategory memiliki 100 kata plus. Apakah ada cara untuk membungkus teks agar tidak keluar dari halaman dan menghilang?
Komentar ini diminimalkan oleh moderator di situs
Saya memiliki masalah yang sama!! :0
Komentar ini diminimalkan oleh moderator di situs
لام احل لی از لیست اول استان ااب ا
ار اید
Komentar ini diminimalkan oleh moderator di situs
Halo, untuk beberapa alasan saya tidak dapat mengubah apa pun di file Word jika daftar drop-down aktif. Apakah ada cara untuk menghindari itu?

Terima kasih
Komentar ini diminimalkan oleh moderator di situs
Saya memiliki masalah yang sama, adakah yang bisa membantu untuk yang ini?
Komentar ini diminimalkan oleh moderator di situs
Ini sangat membantu, terima kasih.
Saya punya pertanyaan, apakah ada cara untuk mengubah kode sehingga ketika saya memilih item baru dari daftar drop-down pertama, yang tergantung akan dihapus?
Komentar ini diminimalkan oleh moderator di situs
Maaf atas keterlambatan balasan, hanya menemukan halaman ini hari ini :-)
Itu sudah melakukan itu. Pernyataan pertama di dalam Select case ... End select konstruksi menghapus daftar kedua. Jika tidak ada kriteria yang terpenuhi, tidak ada yang ditambahkan.
Komentar ini diminimalkan oleh moderator di situs
Hai, thx untuk tutorial detailnya, tapi saya punya pertanyaan karena templat kata ini untuk digunakan orang lain, 
Komentar ini diminimalkan oleh moderator di situs
Hai, thx banyak untuk tutorial rinci, tapi saya punya pertanyaan karena template kata untuk penggunaan orang lain. Anda menyebutkan mode perlindungan dan kata sandi adalah suatu keharusan, ini dapat dilakukan jika saya memberi tahu mereka kata sandi, maka ada konflik: ada beberapa bagian lain yang perlu diisi, ini tidak dapat dilakukan hanya jika mode perlindungannya mati. Apa yang harus saya lakukan? Apakah ada metode untuk memenuhi kedua 2 kebutuhan tersebut?
Komentar ini diminimalkan oleh moderator di situs
Halo,

ist das ganze auch di Outlook möglich. Leider bekomme ich das so nicht hin da die Eigenschaften des Dropdown Menus ganz anders aussehen.

Ich wollte unter Aufgaben einen Reparaturauftrag erstellen wo man Gebäude,Bereich und dan Zimmernummer oder Bezeichnung auwählen kann.

Apakah das möglich di Outlook/Aufgaben?



Terima kasih
Komentar ini diminimalkan oleh moderator di situs
Hai,
Anda dapat membuat daftar turun bawah dengan bidang kustom di jendela Tugas Outlook dengan mengikuti langkah-langkah dalam artikel ini:
Bagaimana Cara Menambahkan Daftar Drop Down Dengan File Kustom Di Jendela Tugas Outlook?
https://www.extendoffice.com/documents/outlook/4453-outlook-custom-fields-tasks-drop-down.html
Atau buat daftar drop-down di Word lalu salin dan tempel ke jendela Tugas sesuai kebutuhan.
Tetapi jika Anda ingin membuat daftar drop-down dependen di Outlook Task, belum ada metode yang ditemukan.
Maaf soal itu.
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