Poner dato en celda según la condición

Tengo números desde la columna A2 (1:1000) entonces quisiera que me ponga el texto = "vacío&"el numero que tiene la celda A2"

Aquí las condiciones

1 que la fila elegida dentro la columna A tenga un numero cualquiera (obvio menos texto)

2 . Que la fila elegida dentro de la columna DE tenga algún dato (numero o texto)

3. Que la fila elegida dentro de la columna E tenga algún dato (numero o texto)

Ahora si cumple con las tres condiciones en la fila elegida de la columna B pondrá

"vacio15"

Esto haría referencia a esto:

En la celda A10 esta el dato el numero 15, en la celda D10 existe cualquier dato y en la celda E10 también existe cualquier dato por lo tanto cumple las tres condiciones y me pone el la celda B10 el texto: vacío y el numero que esta en A10 en este caso 15 quedando así:

VACIO15, en caso de que no cumpla con alguna de esas condiciones simplemente no hacer nada.

1 respuesta

Respuesta
2

Pon la siguiente fórmula en B10

=SI(Y(ESNUMERO(A10),D10<>"",E10<>""),"VACIO"&A10,"")

sal u dos

Hola dan, esa formula funciona excelente, pero me falto mencionar que en la col. B pongo datos

por ejemplo:

hablado en la fila 20 de las columnas mencionadas

      A                                  B                                      c                   D                                       E

    25                       JAIRO RETORNO                                        43                          DEL 20 AL 26 OCTUBRE

ahora supongamos que yo borro el dato que esta en la fila 20 columna B, este debería arrojar algo similar a esto:

  A                                  B                                      c                   D                                       E

    25                       vacio25                                                     43                          DEL 20 AL 26 OCTUBRE

esto quiere decir que si tengo dato en cualquiera de las filas de B con las condiciones antes mencionadas entonces cumpla el criterio... espero me puedas ayudar gracias DAN!!

Pero no puedes tener una fórmula y un dato en la misma celda.

No te compliques la vida, Inserta otra columna, en B20 pon "Jairo retorno" y en C20 pon la fórmula.

Si no es lo que necesitas tendrás que hacerlo con una macro. Solamente pasa la fórmula a macro.

¿Si dan si me puedes ayudar con la macro? Te lo agradecería por favor

Jairo retorno es un texto cualquiera, en las filas de la B hay valores pero en caso de borrar algún valor de la COLB entonces me aplique la macro siguiendo las condiciones

Te anexo la macro para que la pongas en los eventos de tu hoja.

Private Sub Worksheet_Change(ByVal Target As Range)
'Por.Dante Amor
    If Not Intersect(Target, Columns("B")) Is Nothing Then
        For Each c In Target
            If IsNumeric(Cells(c.Row, "A")) And _
               Cells(c.Row, "D") <> "" And _
               Cells(c.Row, "E") <> "" Then
                Application.EnableEvents = False
                c.Value = "VACIO" & Cells(c.Row, "A")
                Application.EnableEvents = True
            End If
        Next
    End If
End Sub

'S aludos. Dante Amor. Recuerda valorar la respuesta. G racias

HOLA dan si me funciona cuando borra datos me pone lo que requiero, pero si quier nuevamente poner dato me sale otra vez vacío cuando debería respetar el dato, ¿y puede ser un modulo en vez de ser en el evento de la hoja?

Va la macro

Sub columna()
'Por.Dante Amor
    For i = 2 To Range("A" & Rows.Count).End(xlUp).Row
        If Cells(i, "B") = "" Then
            If IsNumeric(Cells(i, "A")) And _
               Cells(i, "D") <> "" And _
               Cells(i, "E") <> "" Then
                Cells(i, "B").Value = "VACIO" & Cells(i, "A")
            End If
        End If
    Next
End Sub

Tendrás que ejecutar la macro cada que quieras actualizar la columna b

'S aludos. Dante Amor. Recuerda valorar la respuesta. G racias

Hola dan, si ahora si funciona como necesitaba pero je je al ejecutar este me sale así:

Donde hay numero y cumple con las 3 condiciones si me puso: VACIO202 (azul) que es correcto y donde no hay numero pero tiene las otras dos condiciones me sigue colocando VACÍO sin numero cuando debería quedar en blanco ya que no cumple con las 3 condiciones, esto me servirá para efecto de búsqueda... y si le digo que busque VACÍO entonces no sera exacta su devolución, espero tu grandísima ayuda!

¿Quitaste la otra macro?

Sub columna()
'Por.Dante Amor
    For i = 2 To Range("A" & Rows.Count).End(xlUp).Row
        If Cells(i, "A") <> "" Then
            If Cells(i, "B") = "" Then
                If IsNumeric(Cells(i, "A")) And _
                   Cells(i, "D") <> "" And _
                   Cells(i, "E") <> "" Then
                    Cells(i, "B").Value = "VACIO" & Cells(i, "A")
                End If
            End If
        End If
    Next
End Sub

'S aludos. Dante Amor. Recuerda valorar la respuesta. G racias

¡Gracias! Ahora si DAN quedo perfectamente, eres grande.. siempre lo he dicho... siempre dejo el:

'Por. Dante Amor

no creas que me llevo el crédito... invito a mis conocidos a seguirte... saludos gracias por tu tiempo..

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas