lunes

Lorito

Hola
Espero se tiren al suelo de la risa con este curioso y simpatico lorito jejeje yo no me paré de reir

Saludos desde Honduras

Los 10 mejores

Hola
En una consulta alguien solicitaba lo siguiente: necesito mostrar las mejores n_ventas de una BD, pero un formulario y dentro de un listbox y a la vez que se ordenen segun yo lo requiera, en este caso hacerlo por edad

Pues adjunto lo que le llame los 5 mejores... es un formulario, que lo unico que debe hacer el usuario es indicarle de que forma desea ordenarlo y de cuantos desea que sean las mejores ventas

Revisen el archivo para mayor comprension de parte de ustedes

Codigo y una breve explicacion del mismo:
Private Sub TextBox2_Change()

'Declarar la variable uf
Dim uf

'Desactivar el como la macro trabaja
Application.ScreenUpdating = False

'Saltar cualquier error
On Error Resume Next

'Seleccionar la hoja para filtrar
With Sheets("Filtro")

'Mostrar cualquier fila escondida
Cells.Rows.Hidden = False

'Limpiar el listbox
ListBox1.RowSource = Empty

'Desactivar si el filtro esta modo activo y mostrar los registros
If ActiveSheet.FilterMode Then
ActiveSheet.ShowAllData
End If

'Marcar el rango desde A32 hasta donde existan datos (hacia la derecha y hacia abajo) _
o sea el rango usado, limpiar y quitar color de celdas
With Range("A32").CurrentRegion
.Clear
.Interior.ColorIndex = xlNone
End With

'Si el textbox es menor o igual a cero, que proceda...
If Me.TextBox2.Value <= 0 Then
MsgBox "Indique el Top porfavor... debe ser mayor a 0 {cero}"
Cells.Rows.Hidden = False
ListBox1.RowSource = Empty
If ActiveSheet.FilterMode Then
ActiveSheet.ShowAllData
End If
With Range("A32").CurrentRegion
.Clear
.Interior.ColorIndex = xlNone
End With
'Limpiar el textbox y activar cursor en el mismo
Me.TextBox2 = ""
Me.TextBox2.SetFocus
Exit Sub
End If

'Si el textbox es diferente a campo vacio
If Me.TextBox2.Value <> "" Then
With Range("A1").CurrentRegion
'Filtrar por la columna C, segun el Top/Mejor numero
.AutoFilter 3, Me.TextBox2.Value, xlTop10Items
.Copy
'Pegar solo los datos visibles, desde A32
With .SpecialCells(xlCellTypeVisible)
Range("A32").Select
ActiveSheet.Paste
Application.CutCopyMode = False
'Ordenar los datos pegados, segun el orden ingresado
With Range("A32").CurrentRegion
.Sort Range("C33"), Me.TextBox1.Value, Header:=xlGuess
End With
Range("A1").Select
End With
End With
End If

'Mostrar los datos en el listbox
ListBox1.RowSource = "A32:C100"

'Crear el siclo o bucle para ocultar las filas que se muestran en listbox (para estetica)
uf = Cells(65536, 1).End(xlUp).Row
For g = 32 To uf
If Cells(g, 1) <> "" Then Rows(g).Hidden = True
Next

End With

'Anular o desactivar cualquier error inniciado
On Error GoTo 0
'Activar la pantalla
Application.ScreenUpdating = True

End Sub

Private Sub CommandButton1_Click()
'Limpiar el formulario
Application.ScreenUpdating = False
ListBox1.RowSource = Empty
Cells.Rows.Hidden = False
If ActiveSheet.FilterMode Then
ActiveSheet.ShowAllData
End If
With Range("A32").CurrentRegion
.Clear
.Interior.ColorIndex = xlNone
End With
Me.TextBox1 = ""
Me.TextBox2 = ""
Me.TextBox1.SetFocus
Exit Sub
Application.ScreenUpdating = True
End Sub

Private Sub UserForm_Activate()
'Al iniciar el fornulario, activar el cursor en el textbox
Me.TextBox1 = ""
Me.TextBox2 = ""
Me.TextBox1.SetFocus
End Sub

Private Sub TextBox1_Change()
'Si el numero para ordenar los datos es mayor a 2, que proceda...
If Me.TextBox1.Value > 2 And Me.TextBox1.Value <> "" Then
MsgBox "Ingrese solamente: el # 1 (orden ascendente) o # 2 (orden descendente)", , "Error de ingreso"
Me.TextBox1 = ""
Me.TextBox2 = ""
Me.TextBox1.SetFocus
Exit Sub
End If
End Sub


Saludos desde Honduras


Copiar y pegar datos a otra hoja

Hola
Un colega necesitaba crear una macro que copiara los datos de una BD a otra hoja del mismo libro, pero pegarlos como valores [ya que algunas celdas contendrían formulas] eso si solo tenia que copiar exactamente la BD [no filas completas, en otras palabras marcar automáticamente el rango de la BD e ir a la otra hoja y pegarlos] pero con la nota que cada vez que pegara datos estos se fueran copiando debajo de los datos ya copiados, una y otra vez...

Lo que adapte no es la gran macro ni tan compleja que se diga pero lo que si trate que la macro sea lo mas rápida posible, mejor vean el código y el archivo para mejor entendimiento y esperando sea de utilidad a mas de alguno

Sub copiar_pegar()
    Dim col, ulf
    Application.ScreenUpdating = False
    col = Cells(6, Columns.Count).End(xlToLeft).Column
    ulf = Range("M" & Rows.Count).End(xlUp).Row
    ActiveSheet.Range(Cells(6, 1), Cells(ulf, col)).Copy _
 
    With Sheets("Hoja2").Range("H" & Rows.Count).End(xlUp).Offset(1)
        .PasteSpecial Paste:=xlPasteValues
        Application.CutCopyMode = False
    End With
    Application.ScreenUpdating = True
End Sub


Saludos desde Honduras


Mostrar con formula los resultados de filtros

Hace unos dias consultaba un usuario que porque no le aparecian los resultados [en la barra de estado] del autofiltro en Excel 2003, es decir cada vez que utilizaba el autofiltro no se reflejaban cuantos datos del total se habian filtrado... antes de todo mencionarles que en Excel 2003 esta la curiosidad o desventaja que cuando una tabla contiene formulas y si filtra los resultados no son mostrados, pero en Excel 2007 hayan o no formulas en las BD este problema no existe

La formula la podran ver en la celda F1 que es lo mismo que Excel muestra en la barra de estado, espero sea de utilidad

Saludos desde Honduras

Indexar numeros ignorando espacios

Hola
Un miembro de uno foro, requeria que se ordenara en una columna los datos que tenia en otra columna, pero se encontraban salteados es decir entre ellos habian espacios {celdas de por medio} y lo que este necesitaba que en esa columna se indexaran ordenadamente segun su aparicion... pero viene lo bueno, este amigo solicitaba una respuesta sin INDICE y sin MACROS hummm que raro no jeje

A este ejercicio le aplique una de las funciones mas comunes en Excel llamada BUSCARV y con una sola columna auxiliar, revisen el archivo para que se entiendan un poco mas de lo que les menciono arriba

Nota: encontraran dos formulas mas y vean tambien la hoja dos

Saludos desde Honduras

Buscar mayor y menor [condicionado]

Hola
En una consulta un usuario preguntaba: Encontrar el almacén que venda el producto más caro y más barato, con los datos de la Tabla... No se deben añadir ni filas ni columnas, a más de las existentes en la tabla

Pues bien para aclarar un poco mas la pregunta de este amigo, se trataba de encontrar el almacen que vende mas caro y mas barato un producto, los nombres de los productos estan de forma vertical y los almacenes en horizontal

Debajo de la tabla hay dos tablas con las formulas, una de ellas se puede elegir de una lista desplegable el producto para luego mostrar el almacen mas caro o barato

Espero sea de utilidad

Saludos desde Honduras

jueves

Turbo Filtro [Mas que un filtro]

Hola nuevamente, esta vez les mencionare que hay una excelente alternativa de filtros de datos de modo avanzado y a la cual se le denomina Turbo Filtro, hasta donde se los creditos pertenecen a Torsten Harden asi que espero sea de utilidad y cualquier comentario pues lo hacen porfavor

Saludos desde Honduras

domingo

El Heroe de Todos

Hola
Es una pelicula infantil muy buena, ademas es entretenida, recomiendo la vean y que la disfruten como yo (y mis nenes jeje)




Saludos a todos

sábado

Imprimir segun filtro de fecha desde formulario

Hola
Hace un par de dias, un amigo consultaba lo siguiente: " Hola, soy algo nuevo en esto de excel y necesito que alguien me pueda ayudar con una macro he estado realizando.
La macro consiste en lo siguiente:
Tengo el formulario que contiene un cuadro de texto y un boton de comando, en el cuadro de texto se introduce la fecha y al dar un click sobre el boton, que me imprima solo los registros de la fecha indicada
"

Lo que se me ocurrio fue realizar un filtro avanzado, en el mismo lugar, es decir en la misma hoja... una vez se filtra por la fecha ingresada desde el formulario, se manda a la impresora inmediatamente y luego se muestran los datos, quedando completamente visible la BD

Ver codigo:

Private Sub CommandButton1_Click()

Application.ScreenUpdating = False
With ActiveSheet
With Range("A2")
.Value = Format(Me.TextBox1, "0")
.NumberFormat = "m/d/yyyy"
End With
Cells.Rows.AutoFit
Cells.Columns.AutoFit
With Range("A4").CurrentRegion
.AdvancedFilter 1, Range("A1").CurrentRegion 'Range("A1:A2")
.PrintOut
End With
If ActiveSheet.FilterMode Then ActiveSheet.ShowAllData
Unload Me
End With
Application.ScreenUpdating = True

End Sub

Private Sub CommandButton2_Click()
Unload Me
End Sub


Revisen el adjunto y espero sea de utilidad a ustedes

Saludos desde Honduras

Extraer Unicos (Formula no matricial)

Hola
Hay varias formas de extraer unicos (datos no repetidos) de una lista, pero esta vez les anexo un archivo con formula no matricial, pues en su mayoria que se han desarrollado son matriciales (ya se han tocado temas sobre cual es la diferencia, pues para mi la respuesta mas sencilla es que las matriciales se confirman con ctrl+mayus+enter y las otras solo con enter... aunque en el fondo la formula trabaje con matrices)



Saludos desde Honduras

El poso de los deseos

Jajajaja espero lo disfruten, como yo!

Saludos

Min y Max con Indice

Hola a todos!
Pensemos por un momento que tenemos una lista de numeros desordenados en una columna, y que requerimos indentifcar el Minimo y Maximo, pues bien esto fue solicitado por un usuario en uno de los foros que frecuento y le di la respuesta que a continuacion les adjunto

Incluye: formula no matricial para buscar el Min y Max, aplique un formato condicional para identificar rapidamente que rango se esta tratando y la suma de este, tambien incluí una validacion dinamica (con rango nombrado) pero con Indice, esta rango dinamico es muy bueno ya que no afecta al recalculo de la hoja


{Por cierto me he dado cuenta que es muy fructifero y retroalimentador postear lo que aporto en otros foros, por tal hecho tratare de ir creando todos esos temas aqui}

Saludos y espero les sirva amigos!

jueves

Bibiana no sólo es árbitro, también es ¡policía!

Hola
Esta preciosa arbitro es Alemana... chequen el video jeje



Saludos desde Honduras