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 se reproduce un sonido si se cumple una condición en Excel?

En Excel, podemos aplicar el formato condicional para formatear y resaltar las celdas para cumplir con la condición que necesite, pero, a veces, es posible que desee reproducir un sonido si se cumple una condición. Por ejemplo, si el valor de celda en A1 es mayor que 300, quiero que se reproduzca un sonido. Excel no es compatible con esta característica, este artículo, voy a presentar algunos códigos VBA para resolver esta tarea.

Reproduzca un pitido predeterminado del sistema basado en el valor de la celda con el código VBA

Reproduzca un sonido personalizado según el valor de la celda con el código VBA

Reproducir un sonido si el valor de la celda cambia en una columna específica con código VBA


flecha azul burbuja derecha Reproduzca un pitido predeterminado del sistema basado en el valor de la celda con el código VBA

Aquí hay un código útil para que reproduzca un pitido predeterminado del sistema cuando se cumple una condición específica, por favor haga lo siguiente:

1. Mantenga pulsado el botón ALT + F11 teclas, luego se abre el Microsoft Visual Basic para aplicaciones ventana.

2. Hacer clic recuadro > Móduloy pegue el siguiente código en Módulo Ventana.

Código VBA: reproduce un sonido de pitido predeterminado del sistema basado en un valor de celda:

Function BeepMe() As String
    Beep
    BeepMe = ""
End Function

3. Luego guarde y cierre esta ventana de código, vuelva a la hoja de trabajo e ingrese esta fórmula: = IF (A1> 300, BeepMe (), "") en una celda en blanco al lado de la celda contiene el valor sobre el que desea reproducir un sonido, y luego presione entrar clave, nada se mostrará en la celda de fórmula, ver captura de pantalla:

doc reproducir sonido si la condición es verdadera 1

4. Y ahora, si el valor ingresado en la celda A1 es mayor que 300, se reproducirá un pitido de sistema predeterminado.


flecha azul burbuja derecha Reproduzca un sonido personalizado según el valor de la celda con el código VBA

Si desea reproducir otro sonido que no sea el sonido del sistema predeterminado, aquí también un código de VBA puede hacer un favor.

1. Mantenga presionado el ALT + F11 teclas, luego se abre el Microsoft Visual Basic para aplicaciones ventana.

2. Haz click recuadro > Móduloy pegue el siguiente código en Módulo Ventana.

Código VBA: reproduce un sonido específico basado en un valor de celda:

#If Win64 Then
    Private Declare PtrSafe Function PlaySound Lib "winmm.dll" _
        Alias "PlaySoundA" (ByVal lpszName As String, _
        ByVal hModule As LongPtr, ByVal dwFlags As Long) As Boolean
#Else
    Private Declare Function PlaySound Lib "winmm.dll" _
        Alias "PlaySoundA" (ByVal lpszName As String, _
        ByVal hModule As Long, ByVal dwFlags As Long) As Boolean
#End If
Const SND_SYNC = &H0
Const SND_ASYNC = &H1
Const SND_FILENAME = &H20000
Function SoundMe() As String
'Updateby Extendoffice 20161223
    Call PlaySound("c:\windows\media\Speech On.wav", _
      0, SND_ASYNC Or SND_FILENAME)
    SoundMe = ""
End Function

3. A continuación, guarde y cierre esta ventana de código, regrese a la hoja de trabajo e ingrese esta fórmula: = IF (A1> 300, SoundMe (), "")en una celda en blanco al lado de la celda contiene el valor sobre el que desea reproducir un sonido, y luego presione entrar clave, nada se mostrará en la celda de fórmula, ver captura de pantalla:

doc reproducir sonido si la condición es verdadera 2

4. A partir de ahora, si se ingresa un valor mayor a 300 en la celda A1, se reproducirá un sonido específico a la vez.

Notas: En el código anterior, puede cambiar el archivo de sonido wav a su necesidad de c: \ windows \ media \ ruta de archivo. Ver captura de pantalla:

doc reproducir sonido si la condición es verdadera 3


flecha azul burbuja derecha Reproducir un sonido si el valor de la celda cambia en una columna específica con código VBA

Si desea reproducir un sonido si el valor de la celda cambia en una columna específica, puede aplicar el siguiente código VBA.

1. Haga clic con el botón derecho en la pestaña de la hoja en la que desea reproducir un sonido cuando el valor cambie en una columna, luego elija Ver código desde el menú contextual, y en el menú abierto Microsoft Visual Basic para aplicaciones ventana, copie y pegue el siguiente código en el Módulo en blanco:

Código de VBA: reproduce un sonido si el valor de la celda cambia en una columna:

Private Sub Worksheet_Change(ByVal Target As Range)
'Updateby Extendoffice 20161223
Dim xCell As Range
On Error Resume Next
If Target.Columns.Count = 1 Then
  If Intersect(Target, Columns(3)) Is Nothing Then
    Exit Sub
  Else
    For Each xCell In Columns(3)
        On Error Resume Next
        If (xCell.Value = Target.Value) And (xCell.Value <> "") Then
          Beep
          Exit For
        End If
     Next
  End If
End If
End Sub

doc reproducir sonido si la condición es verdadera 4

Nota: En el código anterior, el número 3 en el guion Columnas (3) es el número de columna que desea reproducir cuando cambia el valor en esta columna.

2. Y luego guarde y cierre esta ventana de código, ahora, si el valor de una celda cambia en la tercera columna, se reproducirá un sonido de pitido predeterminado del sistema.


Kutools for Excel: la mejor herramienta de productividad de Office aumenta su productividad en un 80%

  • 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 y mantener datos; Contenido de celdas divididas; Combinar filas duplicadas y suma / promedio... 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 ...
  • Fórmulas favoritas e insertadas rápidamente, Gamas, cuadros y cuadros; Cifrar celdas con contraseña Crear una lista de correo y enviar correos electrónicos ...
  • 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...
  • Funciona con Office 2007-2019 y 365, y es compatible con todos los idiomas. Es fácil de implementar en su empresa. Funciones completas de prueba gratuita de 60-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.
    devraj · 1 months ago
    code is not working what i can do
  • To post as a guest, your comment is unpublished.
    Shehzad · 6 months ago
    Hey admin, please tell , if i want to save sound file in excel file and i will open my excel file in any computer , can i hear that sound ???
    • To post as a guest, your comment is unpublished.
      skyyang · 6 months ago
      Hello, Shehzad,
      If you apply the first and third VBA code to play a default system beep sound, the sound can be hear from any other computer. But, with the second vba code, you should set the custom sound to your need.

      Note: You should save the workbook as Excel Macro-Enabled Workbook format.
  • To post as a guest, your comment is unpublished.
    Excelakos · 2 years ago
    Hi there
    I try to use the Play a custom sound based on cell value with VBA code but i have a problem. Here is an example:
    I have a time countdown in cell A1 which means value changes per second.
    Then in cell B1 i have inserted =8/(24*60) in a 0:08:00 format
    So the if i use to trigger the sound is if B1>A1,SoundMe(),""
    But the sound will never be heard. I can hear a sound like something is looping and i guess it has something to do with the fact that the value is dynamically changing.
    Then i tried to alter the code in the part Call PlaySound("c:\windows\media\Speech On.wav", _
    0, SND_ASYNC Or SND_FILENAME)
    I changed SND_ASYNC with SND_SYNC.

    This way i managed to play the sound, but it gets repeating forever.

    Is there any solution like to trigger the sound only once meaning just the very first time the criteria is met and then stop ??
    Thank you a lot