Traduce a tu idioma

Buscar contenido

Bienvenidos a Eco-Excel

Bienvenidos

Este blog está destinado a compartir conocimientos sobre VBA en Excel, SQL, Base de datos y mas.

Esperamos que sea de utilidad

miércoles, 25 de septiembre de 2019

Algoritmo de Ordenamiento por Condición

En este video mostraré como crear un ordenamiento empleado Excel con VBA (Visual Basic for Applications) en Excel. Este ordenamiento es similar al ordenamiento por cuentas pero con la diferencia que no requerimos un vector auxiliar ni contar los valores según el vector auxiliar.

lunes, 15 de octubre de 2018

Configuración de encabezado y pie de página con VBA

Configuración de encabezado y pie de página


Ejemplo en Excel por medio de VBA en Excel para configurar los encabezados y pie de página.

Es importante tener en cuenta que para que funcione, usted debe disponer informacion en la hoja para que se ejecute.

Procedimiento :

Sub Configurar()


    With Hoja1.PageSetup

        .RightHeader = "Caracas " & CDate(Date)
        .RightFooter = "Página &P de " & Hoja1.HPageBreaks.Count + 1
     
    End With

    Hoja1.PrintPreview

End Sub


Muestra :

Enlace del vídeo:

miércoles, 10 de octubre de 2018

Descomponer numero en factores primos con VBA

Descomponer numero en factores primos
El siguiente código VBA realiza la descomposición de números en factores primos en una hoja Excel en forma de lista. Mas adelante, podrán ver una imagen que muestra la forma como se muestra ejecutado y un enlace a YouTube con la programación.

Procedimiento Sub:

Sub Descomponer_Factores_Primos()
Dim D As Double
Dim C As Long
Dim L As Integer
Dim E As Integer
Dim N As Double
Dim I As Double
Dim T As Double
Dim V As Double


With Hoja1

.Cells.Clear
D = 2
C = 2
L = 3
E = 0

    N = Application.InputBox("COLOQUE EL VALOR")
 
    For I = 2 To N
     
        T = I
        L = 3
        D = 2
        E = 0
        C = I
     
     
        Do Until T = 1
        If T Mod D = 0 Then
         
         
            .Cells(I, 1) = I
         
            V = T / D
            T = V
            E = E + 1
            C = C + 1
        Else
     
            If E > 0 Then
         
                    .Cells(I, L) = D & "^" & E & "  ."
         
            E = 0
            L = L + 1
        End If
         
     
            D = D + 1
         
        End If
        Loop
     
                    .Cells(I, L) = D & "^" & E


    Next I
 
 
        .Columns("A:XFD").AutoFit

End With


End Sub

Factorial de numero con VBA

El factorial de un entero positivo n
El factorial de n o n factorial se define en principio como el producto de todos los números enteros positivos desde 1 (es decir, los números naturales) hasta n. Por ejemplo:

5!=1x2x3x4x5=120

La operación de factorial aparece en muchas áreas de las matemáticas, particularmente en combinatoria y análisis matemático. De manera fundamental el factorial de n representa el número de formas distintas de ordenar n objetos distintos (elementos sin repetición). Este hecho ha sido conocido desde hace varios siglos, en el siglo XII por los estudiosos hindúes.

La definición de la función factorial también se puede extender a números no naturales manteniendo sus propiedades fundamentales, pero se requieren matemáticas avanzadas, particularmente del análisis matemático.

La notación matemática actual n! fue usada por primera vez en 18081​ por Christian Kramp (1760–1826), un matemático francés que trabajó en especial sobre los factoriales toda su vida.
Fuente : Wikipedia

Código para generar numero factoriales con VBA (Visual Basic for Applications):

Sub Factoriales()
Dim I As Double
Dim J As Double
Dim N As Double
Dim A As Double
Dim B As Double
Dim Suma As Double

With Hoja1
    .Cells.Clear
    .Cells.Font.Size = 14
    .Cells(1, 1) = "NUMEROS FACTORIALES"
    .Cells(1, 1).Interior.Color = vbBlue
    .Cells(1, 1).Font.Color = vbYellow
    .Cells(1, 1).Font.Bold = True
    N = Application.InputBox("NUMEROS FACTORILES", "!")
 
 
        For I = 1 To N

                A = I
                .Cells(I + 1, 1) = I & "!"
                For J = (I - 1) To 1 Step -1

                    Suma = 0
                    B = A * J
                    A = B
                    Suma = Suma + A
                    .Cells(I + 1, 1) = .Cells(I + 1, 1) & " X " & J
         

                Next J

                If Suma = 0 Then Suma = 1
                .Cells(I + 1, 1) = .Cells(I + 1, 1) & " = " & Format(Suma, "#,##0")
        Next I

                .Columns(1).AutoFit
End With

End Sub

Enlace vídeo YouTube