Consejo: Otros idiomas son traducidos por Google. Puedes visitar el English versión de este enlace.
Iniciar sesión
x
or
x
x
Suscríbete
x

or

¿Cómo ocultar u ocultar una determinada forma en función del valor de celda especificado en Excel?

En realidad, una determinada forma puede ocultarse o mostrarse según el valor de una celda especificada. El siguiente método puede ayudarte.

Ocultar o mostrar una determinada forma en función del valor de celda especificado con el código VBA

Ficha Office Habilite la edición y navegación con pestañas en Office y haga su trabajo mucho más fácil ...
Kutools for Excel resuelve la mayoría de sus problemas y aumenta su productividad en un 80%
  • Reutilizar cualquier cosa: Agregue las fórmulas más utilizadas o complejas, gráficos y cualquier otra cosa a sus favoritos, y reutilícelos rápidamente en el futuro.
  • Más de características de texto 20: Extraer número de la cadena de texto; Extraer o eliminar parte de los textos; Convierta números y monedas a palabras en inglés.
  • Herramientas de fusión: Múltiples libros de trabajo y hojas en uno; Fusionar múltiples celdas / filas / columnas sin perder datos; Fusionar filas duplicadas y suma.
  • Herramientas divididas: Dividir datos en varias hojas en función del valor; Un libro de trabajo para múltiples archivos Excel, PDF o CSV; Una columna a varias columnas.
  • Saltar pasta Filas ocultas / filtradas; Cuenta y suma por color de fondo; Enviar correos electrónicos personalizados a múltiples destinatarios a granel.
  • Súper filtro: Cree esquemas de filtro avanzados y aplique a cualquier hoja; Tipo de Propiedad por semana, día, frecuencia y más; Filtrar por negrita, fórmulas, comentario ...
  • Más de potentes funciones de 300; Funciona con Office 2007-2019 y 365; Soporta todos los idiomas; Fácil implementación en su empresa u organización.

flecha azul burbuja derecha Ocultar o mostrar una determinada forma en función del valor de celda especificado con el código VBA


Por ejemplo, desea mostrar una determinada forma al ingresar el número 1 en la celda A1, u ocultar esta forma si la celda A1 tiene otros valores. Ejecute el siguiente código VBA para lograrlo.

1. Haga clic con el botón derecho en la pestaña de la hoja que contiene la forma que ocultará o mostrará, luego haga clic Ver código desde el menú contextual.

2. Entonces el Microsoft Visual Basic para aplicaciones ventana emergente. Por favor copie y pegue el siguiente código de VBA en el Código ventana.

Código de VBA: Ocultar o mostrar una determinada forma en función del valor de celda especificado

Private Sub Worksheet_Change(ByVal Target As Range)
    If Target.Row = 1 And Target.Column = 1 Then _
        Me.Shapes("Oval 6").Visible = (Cells(1, 1).Value = 1)
End Sub

Notas: En el código:

1) Row = 1 y a la Columna = 1 indique la celda específica que se encuentra en la fila uno y la columna uno, Celdas (1, 1) es la celda correspondiente A1.

2) Valor = 1, el número 1 es el valor específico en el que desea mostrar la forma en función.

3) "Oval 6"Es el nombre de la forma determinada.

Puede cambiarlos según lo necesite.

3. presione el otro + Q llaves al mismo tiempo para cerrar el Microsoft Visual Basic para aplicaciones ventana.

A partir de ahora, al ingresar el número 1 en la celda A1, la forma "Oval 6" quedará oculta. Pero si ingresa otro valor, como el número 2 en la celda A1, la forma "Oval 6" se oculta inmediatamente.


flecha azul burbuja derechaArtículos relacionados:


Kutools for Excel resuelve la mayoría de sus problemas y aumenta su productividad en un 80%

  • Reutilizar: Insertar rápidamente fórmulas complejas, gráficos y cualquier cosa que hayas usado antes; Cifrar celdas con contraseña Crear una lista de correo y enviar correos electrónicos ...
  • Super Formula Bar (edite fácilmente varias líneas de texto y fórmula); Diseño de lectura (lee y edita fácilmente un gran número de celdas); Pegar en rango filtrado...
  • Combinar celdas / filas / columnas sin perder datos; Contenido de celdas divididas; Combinar filas / columnas duplicadas... Prevenir células duplicadas; Comparar rangos...
  • Seleccione Duplicado o Único Filas; Seleccionar filas en blanco (todas las celdas están vacías); Super Find y Fuzzy Find en muchos libros de trabajo; Selección aleatoria ...
  • Copia exacta Celdas múltiples sin cambiar la referencia de fórmula; Crear referencias automáticamente a múltiples hojas; Insertar viñetas, Casillas de verificación y más ...
  • Extracto del texto, Agregar texto, Eliminar por posición, Eliminar espacio; Crear e imprimir subtotales de paginación; Convertir entre contenido de celdas y comentarios...
  • Súper filtro (guardar y aplicar esquemas de filtro a otras hojas); Clasificación avanzada por mes / semana / día, frecuencia y más; Filtro especial por negrita, cursiva ...
  • Combinar libros de trabajo y hojas de trabajo; Combinar tablas basadas en columnas clave; Dividir datos en varias hojas; Conversión por lotes xls, xlsx y PDF...
  • Más de potentes funciones de 300. Admite Office / Excel 2007-2019 y 365. Soporta todos los idiomas. Fácil implementación en su empresa u organización. Funciones completas de prueba gratuita de 30-day.
pestaña kte 201905

Office Tab lleva la interfaz con pestañas a Office y hace que su trabajo sea mucho más fácil

  • Habilitar la edición y lectura con pestañas en Word, Excel, PowerPoint, Editor, Acceso, Visio y Proyecto.
  • Abra y cree varios documentos en nuevas pestañas de la misma ventana, en lugar de en nuevas ventanas.
  • ¡Aumenta tu productividad en un 50% y reduce cientos de clics de ratón por ti todos los días!
fondo officetab
Say something here...
symbols left.
You are guest ( Sign Up? )
or post as a guest, but your post won't be published automatically.
Loading comment... The comment will be refreshed after 00:00.
  • To post as a guest, your comment is unpublished.
    Gus · 1 months ago
    2 questions:

    1. I cant seem to get this code to run and i dont understand why... copied and pasted it exactly as it is there...help!!!


    2. how do i change it for shapes like Shapes.Range(Array("Rounded Rectangle 1"))
  • To post as a guest, your comment is unpublished.
    Piaget · 1 years ago
    I am a newbie in VBA Excel. I am working with this code and I would like to optimize it. This code makes a shape visible on an active cell if value is 1 other values hide it. Range includes J13:AC161. If I will use the code below, it will take me more lines of code. Any help will be much appreciated.

    Private Sub Worksheet_Change(ByVal Target As Range)
    If ActiveSheet.Range("E13").Value = 1 Then
    ActiveSheet.Shapes("rt1").Visible = True
    Else
    ActiveSheet.Shapes("rt1").Visible = False
    End If

    If ActiveSheet.Range("F13").Value = 1 Then
    ActiveSheet.Shapes("rt2").Visible = True
    Else
    ActiveSheet.Shapes("rt2").Visible = False
    End If

    If ActiveSheet.Range("G13").Value = 1 Then
    ActiveSheet.Shapes("rt3").Visible = True
    Else
    ActiveSheet.Shapes("rt3").Visible = False
    End If

    If ActiveSheet.Range("H13").Value = 1 Then
    ActiveSheet.Shapes("rt4").Visible = True
    Else
    ActiveSheet.Shapes("rt4").Visible = False
    End If

    If ActiveSheet.Range("I13").Value = 1 Then
    ActiveSheet.Shapes("rt5").Visible = True
    Else
    ActiveSheet.Shapes("rt5").Visible = False
    End If

    If ActiveSheet.Range("J13").Value = 1 Then
    ActiveSheet.Shapes("rt6").Visible = True
    Else
    ActiveSheet.Shapes("rt6").Visible = False
    End If
    ...

    End Sub
    • To post as a guest, your comment is unpublished.
      crystal · 1 years ago
      Good day,
      Do you mean you want to display or hide lots of specified shapes based on cells in range J13:AC161 with brief code?
  • To post as a guest, your comment is unpublished.
    A Webb · 2 years ago
    This works great for me as long as the value entered is a number. I need it to work on letters like A B C etc: when i use letters it works backwards enter A and it hides i need it to be visible when i enter a letter any ideas
    • To post as a guest, your comment is unpublished.
      C Aubrey · 11 months ago
      You can use letters instead, you just need to add " to either side. E.g. Me.Shapes("Oval 6").Visible = (Cells(1, 1).Value = "A")
      • To post as a guest, your comment is unpublished.
        Muhammad Faisal Zainol · 3 months ago
        How about if i want to add two values as the input such as : E.g. Me.Shapes("Oval 6").Visible = (Cells(1, 1).Value = "A" Or "B")?