Macro que envié correo automaticamente

Discute sobre la aplicación de hojas de cálculo

Macro que envié correo automaticamente

Notapor jhonnymn3 » Jue Ene 17, 2019 6:04 pm

Hola buenas tardes o buenos días a tod@s.

Tengo un problema con esta macro que estoy tratando de hacer, básicamente la función que debe realizar la macro es la siguiente, de un grupo de archivos cargarlos en una plantilla que ya tengo establecida, los clasifique por tipo, es decir que según el nombre del archivo me lo clasifique como tipo (físico o compensado). el programa que me arroja la base de datos tiene la misma estructura, es decir misma columnas, misma descripción de los títulos, pero la diferencia esta en que al momento de darme el archivo me los guarda con nombre distintos, y lo que quiero hacer es que según ese nombre de archivo me los clasifique como tipo Físico o Compensado.

Estas son las estructuras de codigos que tengo.
esta es para cargar los archivos a a mi base de datos, me dijeron que dentro de este mismo código tenia que dar la instrucción pero yo lo dividí en dos.

Código: Seleccionar todo   Expandir vistaContraer vista
Sub Importar()

Dim file As String
Dim xlLibro As Workbook
Dim i As Integer
   
Application.ScreenUpdating = False
   
Worksheets("base").Range("A2:AB65000").ClearContents
   
    fileToopen = Application _
    .GetOpenFilename("Todos los archivos (*.*), *.*")
   
If fileToopen <> False Then
   
    Set xlLibro = Workbooks.Open _
    (fileToopen, True, True, , "")
   
    file = ActiveWorkbook.Name
   
    ActiveSheet.Range("A1:AB65000").Copy
   
    Windows("prueba 5.xlsm").Activate
    Sheets("base").Select
    ActiveSheet.Range("A1").Select
    ActiveSheet.Paste
   
    Application.Workbooks(file).Activate
    ActiveSheet.Range("A1").Select
   
    Application.CutCopyMode = False
   
    ActiveWorkbook.Close (False)
   
    Windows("prueba 5.xlsm").Activate
   
    Sheets("inicio").Select
    Range("A1").Select

ActiveWorkbook.RefreshAll

End If
   
    Sheets("inicio").Activate
    ActiveSheet.Range("A1").Select
   
MsgBox "Datos Importados Correctamente"
End Sub



Esta otra parte me carga los datos a la plantilla, les da formato numérico a las filas especificas que necesito y copia los datos que solemnemente necesito
Código: Seleccionar todo   Expandir vistaContraer vista
Sub CyPv()

Worksheets("base").Activate

    Columns("D:D").Select
    Selection.Copy
    Range("D1").Select
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
    Application.CutCopyMode = False
    Range("A1").Select

End Sub
Sub EliminarIntermediario()

Dim i As Integer
i = 2
Dim j As Integer

Do While Worksheets("base").Cells(i, 1) <> ""
i = i + 1
Loop
Ultimo = i - 1

For j = Ultimo To 2 Step -1

If Worksheets("base").Cells(j, 4) = "No" Then

    Worksheets("base").Cells(j, 1).EntireRow.Delete

End If

Next j

End Sub

Sub CopiarDatos()

Dim i As Integer
i = 2

Do While Worksheets("base").Cells(i, 1) <> ""
i = i + 1
Loop
Ultimo = i - 1

x = 3
For j = 2 To Ultimo

If Worksheets("base").Cells(j, 1) <> "" Then


    Worksheets("inicio").Cells(x, 3) = Worksheets("base").Cells(j, 4)
    Worksheets("inicio").Cells(x, 4) = Worksheets("base").Cells(j, 6)
    Worksheets("inicio").Cells(x, 5) = Worksheets("base").Cells(j, 8)
    Worksheets("inicio").Cells(x, 6) = Worksheets("base").Cells(j, 9)
    Worksheets("inicio").Cells(x, 7) = Worksheets("base").Cells(j, 10)

    x = x + 1

End If

Next j

End Sub

Sub FormatoNumeros()

Worksheets("inicio").Activate

    Range("E3:E21,G3:G21").Select
    Range("G3").Activate
    Selection.NumberFormat = "#,##0.00"
    Range("B2").Select

End Sub


esta parte del código que dice EliminarIntermediario no la puedo hacer funcionar, ya que me copia todos los valores de esa y no copia los específicos (nombres de bancos) que necesito.
ojala me puedan ayudar.
en caso de que haga falta subir el archivo me lo hacen saber.
que tengan un buen días

Saludos.
OpenOffice 3.1
jhonnymn3
 
Mensajes: 1
Registrado: Jue Ene 17, 2019 5:38 pm

Re: Macro que envié correo automaticamente

Notapor PepeOooSevilla » Vie Ene 18, 2019 9:00 am

Hola.

Te damos la bienvenida al Foro de OpenOffice/LibreOffice y, por favor, no dejes de leer la Guía de supervivencia.

En este Foro solamente damos soporte a las aplicaciones de software libre de OpenOffice y/o LibreOffice.

La macro que adjuntas es de tipo "VBA de Microsoft Excel (.xlsm)". Citando a nuestros administradores:
este Foro no es de Excel; podremos ayudarte si utilizas en su lugar Apache OpenOffice Calc, o LibreOffice Calc. Ambas son suites libres y su uso es completamente gratuito, y están creadas por una gran comunidad de voluntarios ...

Tendrás que redirigir tu consulta al foro adecuado.

Saludos cordiales.
LibreOffice 6.1.5 en Windows 7 / 10
Por favor, utiliza el Foro para tus consultas, no los mensajes privados
Avatar de Usuario
PepeOooSevilla
 
Mensajes: 1065
Registrado: Sab Abr 04, 2009 6:10 pm
Ubicación: Sevilla (España)


Volver a Calc

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 24 invitados