Combinar correspondencia solo desde excel

Necesito una combinación correspondencia solo desde excel que me deje enviar varios tipos de texto dependiendo del valor de una de las casillas. A ver si alguien me puede ayudar

Respuesta
2

H o l a:

Te anexo una macro

Sub PonerValores()
'Por.Dante Amor
    For i = 1 To Range("A" & Rows.Count).End(xlUp).Row
        Select Case UCase(Cells(i, "A"))
            Case "SI": Cells(i, "B") = "Texto 1"
            Case "NO": Cells(i, "B") = "Segundo texto"
            Case Else: Cells(i, "B") = "Otro texto"
        End Select
    Next
    MsgBox "Fin"
End Sub

Cambia en la macro "A" por la columna donde tienes tus valores.

Cambia en la macro "B" por la columna donde quieres los textos.

También cambia los textos por los que desees.


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

Envíame tu archivo con ejemplos, explicando cada uno de los ejemplos con comentarios

Mi correo [email protected]

En el asunto del correo escribe tu nombre de usuario “Ave Fenix” y el título de esta pregunta.

Te envío el fichero de excel allí viene lo que necesito

Buenas. También he estado mirando como puedo hacer una macro para que leer determinados campos de un pdf y pasarlos a excel automáticamente. Pero no he encontrado nada en internet al revés si pero de la otra manera no.

Un saludo

H o l a:

Tampoco tengo algo sobre leer datos de un pdf.

En cuanto tenga tu macro para la correspondencia te la envío

Te anexo la macro para enviar los correos

Sub EnviarCorreos()
'Por.Dante Amor
    Set h1 = Sheets("BUSCARV")
    Set h2 = Sheets("RESPUESTASI Y NO")
    '
    For i = 2 To h1.Range("A" & Rows.Count).End(xlUp).Row
        clave = h1.Cells(i, "K")
        If clave <> "" Then
            Set b = h2.Columns("A").Find(clave, lookat:=xlWhole)
            If Not b Is Nothing Then
                asunto = b.Offset(0, 1)
                cuerpo = b.Offset(0, 2)
                cols = Array("C", "D", "E", "J", "F")
                For r = LBound(cols) To UBound(cols)
                    campo = "<<" & h1.Cells(1, cols(r)) & ">>"
                    cuerpo = Replace(cuerpo, campo, h1.Cells(i, cols(r)))
                Next
            End If
        End If
        Set dam = CreateObject("outlook.application").createitem(0)
        dam.To = h1.Range("I" & i).Value 'Destinatarios
        dam.Subject = asunto
        dam.Body = cuerpo
        'dam.Send 'El correo se envía en automático
        dam.Display 'El correo se muestra
    Next
    MsgBox "Fin"
End Sub

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

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas