Saltar al contenido

configurar correo en excel a zoho mail


Recommended Posts

publicado

buena tarde  alguien sabe como configurar excel enviar correo electronico que no me ejecute outlook ,  sino que  zoho mail cuando se adjunta un archivo de excel,

se podra?

gracias saludos

imagenexcel.jpg

publicado

No he usado esa herramienta de correo pero sí he usado VBA para mandarlos por el smtp de Gmail, buscando esos datos pero de Zoho Mail en Google y editando un poco una sentencia algo como esto debería servir:

Sub EnviarCorreoZoho()
    Dim iMsg As Object
    Dim iConf As Object
    Dim Flds As Variant

    Set iMsg = CreateObject("CDO.Message")
    Set iConf = CreateObject("CDO.Configuration")

    iConf.Load -1
    Set Flds = iConf.Fields
    With Flds
        .Item("http://schemas.microsoft.com/cdo/configuration/smtpusessl") = True
        .Item("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate") = 1
        .Item("http://schemas.microsoft.com/cdo/configuration/sendusername") = "tu_correo@zoho.com"
        .Item("http://schemas.microsoft.com/cdo/configuration/sendpassword") = "tu_contraseña"
        .Item("http://schemas.microsoft.com/cdo/configuration/smtpserver") = "smtp.zoho.com"
        .Item("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2
        .Item("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = 465
        .Update
    End With

    With iMsg
        Set .Configuration = iConf
        .To = "destinatario@ejemplo.com"
        .CC = ""
        .BCC = ""
        .From = """Tu Nombre"" <tu_correo@zoho.com>"
        .Subject = "Asunto del correo"
        .TextBody = "Cuerpo del correo"
        .Send
    End With

    Set iMsg = Nothing
    Set iConf = Nothing
End Sub

Tendrías que reemplazar tu_correo@zoho.com y tu_contraseña con tus credenciales de Zoho Mail y especificar el destinatario, el asunto y el cuerpo del correo electrónico.

Es una sentencia de ejemplo por lo que deberás hacer pruebas y de ser posible compartir aquí los avances o el resultado obtenido para que en caso de ser necesario seguir con las propuestas de ayuda propias o de algún Maestro.

Saludines.

 

publicado

Ahora, esa fue una sentencia.

Pero si lo que buscas es cambiar el correo predeterminado para que cuando llames el "compartir", lo debes cambiar en tu sistema operativo. Si estás utilizando Windows  puedes hacerlo siguiendo estos pasos:

En la barra de búsqueda en la parte inferior izquierda del escritorio, escribe “Configuración de aplicaciones predeterminadas”.

Haz clic en la opción “Correo”.

Verás una lista con los diferentes programas de correo en tu sistema. Selecciona “Zoho Mail” para establecer electrónico predeterminado.

Si estás utilizando un sistema operativo diferente, los pasos cambian un poco.

 

publicado
hace 2 horas, Israel Cassales dijo:

Ahora, esa fue una sentencia.

Pero si lo que buscas es cambiar el correo predeterminado para que cuando llames el "compartir", lo debes cambiar en tu sistema operativo. Si estás utilizando Windows  puedes hacerlo siguiendo estos pasos:

En la barra de búsqueda en la parte inferior izquierda del escritorio, escribe “Configuración de aplicaciones predeterminadas”.

Haz clic en la opción “Correo”.

Verás una lista con los diferentes programas de correo en tu sistema. Selecciona “Zoho Mail” para establecer electrónico predeterminado.

Si estás utilizando un sistema operativo diferente, los pasos cambian un poco.

 

Gracias,   la sentencia  no me es funcional porque tengo que estarle capturando el correo en el código,

En la configuración predeterminada en windows ya lo hice pero no me funciona

 

imagen correo.jpg

publicado
hace 2 minutos , isidrod dijo:

 la sentencia  no me es funcional porque tengo que estarle capturando el correo en el código,

Por qué no intentas editarla y que los datos que no quieras estar entrando al código que te los pida en un msgbox o que estén en una celda y que de ahí los tome la macro.

publicado
hace 4 minutos , isidrod dijo:

En la configuración predeterminada en windows ya lo hice pero no me funciona

Eso sí es extraño, si averiguo algo regreso y lo comparto aquí en el foro, pero debería servir.

publicado
hace 3 horas, Israel Cassales dijo:

Por qué no intentas editarla y que los datos que no quieras estar entrando al código que te los pida en un msgbox o que estén en una celda y que de ahí los tome la macro.

gracia pero esto no le entiendo, porque yo abro un libro de excel y sin guardar el libro lo comparto cuando utilizamos   outlook, pero ahora que usamos zoho mail tenemos que guardar el archivo para poder adjuntarlo

gracias saludos

 

publicado
hace 3 horas, Israel Cassales dijo:

Eso sí es extraño, si averiguo algo regreso y lo comparto aquí en el foro, pero debería servir.

esto si me interesa pero a ver cual de los  dos queda

gracias saludos

publicado
hace 14 minutos , isidrod dijo:

gracia pero esto no le entiendo, porque yo abro un libro de excel y sin guardar el libro lo comparto cuando utilizamos   outlook,

Descuida, entiendo y lo que quieres hacer para que te funcione la macro tendrías que compartirla con cada quién y no sería funcional por aquello de las credenciales del log del correo. Además si se te dificulta la edición del VBA  entonces la mejor opción es cambiar el cliente de correo predeterminado como platicamos anteriormente; esa es la forma amigable de hacerlo.

Hay otra opción donde lo puedes forzar pero depende de la experiencia que tengas y que no sería adecuado de mi parte recomendar sin saber la experiencia que tienes.

Por lo que leí Zoho Mail está pensado para ser usado como cuenta empresarial así que puedo pensar que estás en un ambiente laboral y podría creer que hay personal responsable del área de TI a quien pedirle soporte, porque esto ya no sería un tema de Excel propiamente.

Lamento no ser la ayuda que necesitabas.

Por otro lado, mientras el tema esté abierto es posible recibir retroalimentación de los demás miembros del foro.

publicado
hace 54 minutos , Israel Cassales dijo:

Además si se te dificulta la edición del VBA  entonces la mejor opción es cambiar el cliente de correo predeterminado como platicamos anteriormente; esa es la forma amigable de hacerlo.

si entiendo mas o menos vba pero no e usado macro para enviar correo, esto se podrá sin guardar el archivo tu que tienes experiancia?

 

hace 58 minutos , Israel Cassales dijo:

TI a quien pedirle soporte, porque esto ya no sería un tema de Excel propiamente

ya se lo pedí y me dijeron que no se puede pero si nos ayudas para hacerlo 

 

Hace 1 hora, Israel Cassales dijo:

Hay otra opción donde lo puedes forzar pero depende de la experiencia que tengas y que no sería adecuado de mi parte recomendar sin saber la experiencia que tienes.

no tengo experiencia como dijo luis fonsi Pasito a pasito, suave suavecito

gracias por tu ayuda @Israel Cassales 

Archivado

Este tema está ahora archivado y está cerrado a más respuestas.

  • 109 ¿Te parecen útiles los tips de las funciones? (ver tema completo)

    1. 1. ¿Te parecen útiles los tips de las funciones?


      • No
      • Ni me he fijado en ellos

  • Ayúdanos a mejorar la comunidad

    • Donaciones recibidas este mes: 0.00 EUR
      Objetivo: 130.00 EUR
  • Archivos

  • Estadísticas de descargas

    • Archivos
      188
    • Comentarios
      98
    • Revisiones
      29

    Más información sobre "Cambios en el Control Horario"
    Última descarga
    Por pegones1

    4    1

  • Crear macros Excel

  • Mensajes

    • Hola, veo que tienes 365, así que esta forma funcionará   Almacen.xlsx
    • Buenos días  @LeandroA espero estes bien Tengo un caso idéntico al planteado en la siguiente pregunta: Sin embargo, a diferencia de quien planteo originalmente la pregunta al correr el código no obtengo ningún resultado podrían ayudarme a resolver este inconveniente y que al hacer click en el Botón Guardar (CommandButton3) del Formulario RCS (frmrcs) el archivo pdf quede configurado con orientación vertical, márgenes superior, inferior, derecho e izquierdo = 1 y en página tamaño carta. Si acaso influye uso Microsoft Excel LTSC MSO (versión 2209 Compilación16.0.1.15629.20200) de 64 bits Mucho le sabre agradecer la ayuda que me pueda dar  RCS PRUEBA - copia.xlsm
    • @JSDJSDCon gusto mi estimado Para la opción 1: Sub Surtirhastadondealcanse() Dim ws As Worksheet Set ws = ThisWorkbook.Sheets(1) Dim filaInicio As Integer: filaInicio = 4 Dim filaFin As Integer: filaFin = 7 Dim colInventario As Integer: colInventario = 2 Dim colSolicitudesInicio As Integer: colSolicitudesInicio = 4 ' Columna C Dim colResultadoInicio As Integer: colResultadoInicio = 9 ' Columna I Dim colTotalSurtido As Integer: colTotalSurtido = 12 ' Columna L Dim colFinalInventario As Integer: colFinalInventario = 13 ' Columna M Dim numClientes As Integer: numClientes = 3 Dim fila As Integer, i As Integer For fila = filaInicio To filaFin Dim inventario As Double inventario = Val(ws.Cells(fila, colInventario).Value) Dim solicitudes(1 To 3) As Double Dim surtido(1 To 3) As Variant Dim totalSurtido As Double: totalSurtido = 0 ' Leer solicitudes For i = 1 To numClientes If IsNumeric(ws.Cells(fila, colSolicitudesInicio + i - 1).Value) Then solicitudes(i) = CDbl(ws.Cells(fila, colSolicitudesInicio + i - 1).Value) Else solicitudes(i) = 0 End If surtido(i) = "POR FALTA STOCK" Next i ' Surtir de acuerdo al inventario disponible For i = 1 To numClientes If solicitudes(i) > 0 Then If inventario >= solicitudes(i) Then surtido(i) = solicitudes(i) inventario = inventario - solicitudes(i) totalSurtido = totalSurtido + solicitudes(i) ElseIf inventario > 0 Then surtido(i) = inventario totalSurtido = totalSurtido + inventario inventario = 0 Else surtido(i) = "POR FALTA STOCK" End If End If Next i ' Escribir resultados en las columnas correspondientes para cada cliente For i = 1 To numClientes With ws.Cells(fila, colResultadoInicio + i - 1) If surtido(i) = "POR FALTA STOCK" Then .Value = surtido(i) .Font.Color = vbRed Else .Value = surtido(i) .Font.Color = vbBlack End If End With Next i ' Escribir total surtido y existencia final ws.Cells(fila, colTotalSurtido).Value = totalSurtido ws.Cells(fila, colFinalInventario).Value = inventario Next fila MsgBox "Resultado surtido cargado con éxito...", vbInformation End Sub Para la opción 2:   Sub surtirenpartesiguales() Dim ws As Worksheet Set ws = ThisWorkbook.Sheets(1) Dim filaInicio As Integer: filaInicio = 13 Dim filaFin As Integer: filaFin = 16 Dim colInventario As Integer: colInventario = 2 Dim colSolicitudesInicio As Integer: colSolicitudesInicio = 4 ' Columna C Dim colResultadoInicio As Integer: colResultadoInicio = 9 ' Columna I Dim colTotalSurtido As Integer: colTotalSurtido = 12 ' Columna L Dim colFinalInventario As Integer: colFinalInventario = 13 ' Columna M Dim numClientes As Integer: numClientes = 3 Dim fila As Integer, i As Integer For fila = filaInicio To filaFin Dim inventario As Double inventario = Val(ws.Cells(fila, colInventario).Value) Dim solicitudes(1 To 3) As Double Dim surtido(1 To 3) As Variant Dim totalSurtido As Double: totalSurtido = 0 Dim totalPedido As Double: totalPedido = 0 ' Leer solicitudes For i = 1 To numClientes If IsNumeric(ws.Cells(fila, colSolicitudesInicio + i - 1).Value) Then solicitudes(i) = CDbl(ws.Cells(fila, colSolicitudesInicio + i - 1).Value) totalPedido = totalPedido + solicitudes(i) Else solicitudes(i) = 0 End If surtido(i) = 0 Next i ' Si hay suficiente inventario, surtir lo que el cliente pide If inventario >= totalPedido Then For i = 1 To numClientes If solicitudes(i) > 0 And inventario >= solicitudes(i) Then surtido(i) = solicitudes(i) inventario = inventario - solicitudes(i) totalSurtido = totalSurtido + solicitudes(i) End If Next i Else ' Reparto base igualitario Dim baseSurtido As Long baseSurtido = Int(inventario / numClientes) For i = 1 To numClientes If solicitudes(i) > 0 Then If solicitudes(i) <= baseSurtido Then surtido(i) = solicitudes(i) inventario = inventario - solicitudes(i) totalSurtido = totalSurtido + solicitudes(i) Else surtido(i) = baseSurtido inventario = inventario - baseSurtido totalSurtido = totalSurtido + baseSurtido End If End If Next i ' Repartir sobrante restante uno por uno, respetando lo pedido Do While inventario > 0 For i = 1 To numClientes If surtido(i) < solicitudes(i) Then surtido(i) = surtido(i) + 1 totalSurtido = totalSurtido + 1 inventario = inventario - 1 If inventario = 0 Then Exit For End If Next i Loop End If ' Escribir resultados en las columnas correspondientes para cada cliente For i = 1 To numClientes With ws.Cells(fila, colResultadoInicio + i - 1) If surtido(i) = 0 Then .Value = "POR FALTA STOCK" .Font.Color = vbRed Else .Value = surtido(i) .Font.Color = vbBlack End If End With Next i ' Escribir total surtido y existencia final ws.Cells(fila, colTotalSurtido).Value = totalSurtido ws.Cells(fila, colFinalInventario).Value = inventario Next fila MsgBox "Resultado surtido cargado con éxito...", vbInformation End Sub Saludos, Diego
    • Buenos dias.  Estoy trabajando en una hoja para poder llevar un control de un pequeño almacén.  Tengo un pedido con varias líneas y "lotes" y necesito sacar las ubicaciones que coincidan con la referencia y lote que pone en el pedido. El problema viene cuando tengo la misma referencia y mismo lote en ubicaciones diferentes y necesito sacar la información en columnas diferentes. No se si  me he explicado bien, pero creo que con el ejemplo adjunto se entiende mejor. Agradecería mucho si me pudieran ayudar  Libro1.xlsx
    • Exelente solución mil gracias 
  • Visualizado recientemente

    • No hay usuarios registrado para ver esta página.
×
×
  • Crear nuevo...

Información importante

Echa un vistazo a nuestra política de cookies para ayudarte a tener una mejor experiencia de navegación. Puedes ajustar aquí la configuración. Pulsa el botón Aceptar, si estás de acuerdo.