Saltar al contenido principal

¿Cómo insertar una lista desplegable codificada por colores en la tabla de Word?

Supongamos que tengo una tabla en mi documento de Word y ahora quiero insertar una lista desplegable codificada por colores en una columna de la tabla. Significa que cuando selecciono una opción del menú desplegable, el color de la celda se vuelve rojo y cuando selecciono otra opción en el menú desplegable, el color de la celda se vuelve verde como se muestra en la siguiente captura de pantalla. ¿Cómo podrías resolver este trabajo en un documento de Word?

Documento desplegable codificado por colores

Inserte la lista desplegable codificada por colores en un documento de Word con código VBA


Inserte la lista desplegable codificada por colores en un documento de Word con código VBA

Los siguientes pasos pueden ayudarlo a completar esta tarea según lo necesite, primero, inserte la lista desplegable y luego aplique el color para el menú desplegable. Por favor haz lo siguiente:

1. Seleccione una celda de la tabla donde desea insertar el menú desplegable y luego haga clic en Developer > Control de contenido de lista desplegable icono, vea la captura de pantalla:

documento desplegable codificado por colores 1

2. El menú desplegable se inserta en la celda específica y luego haga clic en Developer > Propiedades, ver captura de pantalla:

documento desplegable codificado por colores 2

3. En la Propiedades de control de contenido cuadro de diálogo, realice las siguientes operaciones:

(1.) Introduzca el nombre del título en el Título caja de texto;

(2.) Haga clic en Añada botón ir al Agregar opción diálogo;

(3.) En el Agregar opción cuadro de diálogo, escriba el elemento de la lista desplegable en el Nombre que se ve en la pagina caja de texto.

documento desplegable codificado por colores 3

4. Repita el Paso 3 para insertar otros elementos de la lista desplegable que necesite.

5. Después de crear la primera lista desplegable, puede copiarla y pegarla en otras celdas que necesite. Ver captura de pantalla:

documento desplegable codificado por colores 4

6. Entonces debe aplicar un código VBA, mantenga presionado el ALT + F11 teclas para abrir el Microsoft Visual Basic para aplicaciones ventana.

7. En la Microsoft Visual Basic para aplicaciones ventana, haga doble clic Este documento del desplegable Proyecto-Proyecto panel para abrir el modo y luego copie y pegue el siguiente código en el módulo en blanco.

Código de VBA: inserte la lista desplegable codificada por colores en la tabla de un documento de Word:

Private Sub Document_ContentControlOnExit(ByVal ContentControl As ContentControl, Cancel As Boolean)
With ContentControl.Range
    If ContentControl.Title = "Status" Then
        Select Case .Text
            Case "Complete"
                .Cells(1).Shading.BackgroundPatternColor = wdColorRed
            Case "In Progress"
                .Cells(1).Shading.BackgroundPatternColor = wdColorGreen
            Case "Not Start"
                .Cells(1).Shading.BackgroundPatternColor = wdColorBlue
            Case Else
                .Cells(1).Shading.BackgroundPatternColor = wdColorAutomatic
        End Select
    End If
End With
End Sub

documento desplegable codificado por colores 5

Note: En el código anterior, Estado es el nombre del título al crear la lista desplegable, y Complete el, En curso, No comenzar son los elementos de la lista desplegable, puede cambiarlos por los suyos. Y también puede cambiar el color según sus necesidades.

8. Luego guarde y cierre la ventana de código, ahora, cuando seleccione un elemento de la lista desplegable, su color relativo se llenará con la celda, vea la captura de pantalla:

Documento desplegable codificado por colores


 

Las mejores herramientas de productividad de oficina

Kutools for Word - Mejore su experiencia con Word con Over 100 ¡Características notables!

Sumérgete en las funciones resaltadas a continuación o haga clic aquí para explorar todo el poder de Kutools para Word.

📘 Dominio del documento: Dividir páginas  /  Combinar documentos  /  Exportar selección en varios formatos (PDF/TXT/DOC/XLSX)  /  Convertir por lotes a PDF  /  Exportar páginas como imágenes  /  Imprima varios archivos a la vez ...

Edición de contenidos: Buscar y reemplazar por lotes en varios archivos   /  Cambiar el tamaño de todas las imágenes   /  Transponer filas y columnas de tabla  /  Convertir tabla en texto ...

🧹 Limpieza sin esfuerzobarrer Espacios extra  /  Saltos de sección  /   Todos los encabezados  /  Cuadros de texto  /  Los hipervínculos  /  Para obtener más herramientas de eliminación, diríjase a nuestro grupo de eliminación

Inserciones creativas: recuadro Mil Separadores  /  Casillas de verificación  /  Botones de radio  /  Código QR   /  Barcode  /  Tabla de líneas diagonales  /  Título de la ecuación  /  Captura de imagen  /  Pie de tabla  /  Varias imágenes  /  Descubra más en nuestro Grupo Insertar

🔍 Selecciones de precisión: Identificar páginas específicas  /  tablas  /  formas  /  párrafos de encabezado  /  Navega con facilidad usando nuestro Grupo Selecto

Mejoras de estrellas: Navegue rápidamente a cualquier ubicación  /  insertar automáticamente texto repetitivo  /  alternar sin problemas entre ventanas de documentos  /  11 herramientas de conversión ...

Transforma tus tareas de Word con Kutools. 👉 Descargue con prueba de 30 días ahora 🚀.

 

 

Comments (51)
Rated 5 out of 5 · 1 ratings
This comment was minimized by the moderator on the site
I have a word document that i would like some help with, in short, i have a large inspection table, items either comply, don't, further information etc. I currently use a simple drop-down option which has 5-6 options, ill like a selection option that when different options are selected, that changes the cells/row to a red or green etc, and then also (If possible) updates a Summary Table? is this possible, I'll pay someone for a general templet i can the work on....

Thank you in advance....
This comment was minimized by the moderator on the site
Hello, peter,
Did you mean to select an item from the drop down list, and a specific background color is filled for that row?
Please view the attachment to check if it is your need. If this is not your need, please give your problem more clearly.
Thank you!
This comment was minimized by the moderator on the site
Almost, by changing the drop-down tab the whole row changes color, perfect, thank you, however the magic is then coping the row (Yet only rows that don't comply or need further info etc... ) and placing it in a summary table at the top of the page in another table etc... getting them all to keep adding would be great in a summary table.

I can then alter the summary table as things change, and it updated the main parent table .... I'm not sure this is possible.

I'm happy to have a Teams Meeting to get this working, it would be apricated as it is doing my head in...

This comment was minimized by the moderator on the site
Hi, this is great, got me over a major problem with my fillable form. However, when I go to protect my fillable form, it brings up the debugger box? any idea how i can overcome this?
This comment was minimized by the moderator on the site
Thank you, i have managed to change the background colour. Is there a way i can change the text to white?
This comment was minimized by the moderator on the site
Hello, Emily,
To change the text color to white, please apply the following code:
Private Sub Document_ContentControlOnExit(ByVal ContentControl As ContentControl, Cancel As Boolean)
With ContentControl.Range
    If ContentControl.Title = "Status" Then
        Select Case .Text
            Case "Complete"
                .Cells(1).Shading.BackgroundPatternColor = wdColorRed
                .Cells(1).Range.Font.Color = wdColorWhite
            Case "In Progress"
                .Cells(1).Shading.BackgroundPatternColor = wdColorGreen
                .Cells(1).Range.Font.Color = wdColorWhite
            Case "Not Start"
                .Cells(1).Shading.BackgroundPatternColor = wdColorBlue
                .Cells(1).Range.Font.Color = wdColorWhite
            Case Else
                .Cells(1).Shading.BackgroundPatternColor = wdColorAutomatic
        End Select
    End If
End With
End Sub

Please have a try, hope it can help you!
This comment was minimized by the moderator on the site
What code do you add so it goes back to the normal colours (both background and text) when you select "Choose an item" from dropdown list after previously selecting a case
This comment was minimized by the moderator on the site
Hello, Usama,
In this case, the code in this article can help you. When uou select an item and then do back to choosing "Choose an item", the backdround color will not be filled.
Please try again. Thank you!
This comment was minimized by the moderator on the site
Well done! Is it possible to activate different cells (independent of row and column) with an item of the ContentControl... e.g. if we put the alphabet of English letters in a table with 6 rows and 5 columns and want to activate the vowels or the consonants?
This comment was minimized by the moderator on the site
Well done! Is it possible to activate different cells (independent of row and column) with an item of the ContentControl... e.g. if we put the alphabet of English letters in a table with 6 rows and 5 columns and want to activate the vowels or the consonants?
This comment was minimized by the moderator on the site
Hi I want a drop down list of colours but i do not want any text in the cells, i just want my users to be able to choose a colour as I am creating a RAG rated form.

is this possible?

thanks.
This comment was minimized by the moderator on the site
I have pasted the code and can see my drop down options (the text) but when I choose them, the background colors don't apply. Do you have any way to help me figure out what I may be doing wrong? Please and thank you! This is exactly what I'm hoping to do in my document, if I can make it work. Thanks!
This comment was minimized by the moderator on the site
Hello, Susan
You should check if the corresponding text in the VBA code has been mofified to your own contents.

Note: In the above code, Status is the title name when you creating the drop down list, and Complete, In Progress, Not Start are the items of the drop down list, you can change them to your own. And you can also change the color to your need.

If there is still problem after changing the text, you can upload the attachment word file and we will help you check it.
Thank you!
This comment was minimized by the moderator on the site
I am having the same issue.
I have changed the titles names in the code and followed the rest of the instructions.
Can you please tell me what I may have done wrong?
This comment was minimized by the moderator on the site
Hi, is there any way to color code-vba the text in a dropdown if it is not in a table or cell? Thanks!
This comment was minimized by the moderator on the site
Hello, nikki
If you just want to color coded the values from the drop down list, maybe the following code can help you:
Private Sub Document_ContentControlOnExit(ByVal ContentControl As ContentControl, Cancel As Boolean)
With ContentControl
  If .Title = "Status" Then
    Select Case .Range.Text
      Case "Complete": .Range.Font.ColorIndex = wdRed
      Case "In Progress": .Range.Font.ColorIndex = wdBlue
      Case "Not Start": .Range.Font.ColorIndex = wdGreen
      Case Else: .Range.Font.ColorIndex = wdAuto
    End Select
  End If
End With
End Sub

Please try, hope it can help you!
This comment was minimized by the moderator on the site
Hi, is there way to change the color of the text in the dropdown if it is not in a table or cell?

Thanks!
There are no comments posted here yet
Load More
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations