Excel Avanzado

Macros, Vba en Excel y muchos ejemplos de nuestro Curso de Excel Avanzado

Excel Avanzado

Uso de With para análisis de inventarios

| 2 comentarios

La función With  permite ejecutar un conjunto de instrucciones sin tener que volver a hacer referencia al mismo objeto. Ante ello, a continuación se presenta un ejemplo en el cual se usa la función With para facilitar una lectura rápida de inventarios. Para el presente ejemplo se uso el siguiente registro de inventarios, el cual incluye 20 productos diferentes:

inventario

(Para mayor visualización de la imagen, hacer click en la misma)

En el anterior  registro de productos, se uso la función With para aplicar formato a las celdas del encabezado de dicho registro, para aplicar color a las celdas de la columna cantidad y, también, para  aplicar formato condicional a la misma columna mediante el uso de iconos que faciliten la lectura de qué productos requieren de re abastecimiento.  Para lo explicado anteriormente se creo las tres siguientes macros:

Macro 1

Sub FormatoEncabezado()

Range("B3:G3").Select
With Selection.Font
.Name = "Arial"
.FontStyle = "Negrita"
.Size = 12
End With

Selection.Borders(xlInsideHorizontal).LineStyle = xlNone
With Selection.Interior
.PatternTintAndShade = 0
End With

End Sub

Macro 2

Sub ColorCeldas()

With Selection.FormatConditions(1).Interior
.PatternColorIndex = xlAutomatic
.ThemeColor = xlThemeColorAccent1
.TintAndShade = 0.599963377788629
End With
Selection.FormatConditions(1).StopIfTrue = False
Selection.FormatConditions.Add Type:=xlCellValue, Operator:=xlBetween, _
Formula1:="=51", Formula2:="=100"
Selection.FormatConditions(Selection.FormatConditions.Count).SetFirstPriority
With Selection.FormatConditions(1).Interior
.PatternColorIndex = xlAutomatic
.ThemeColor = xlThemeColorAccent3
.TintAndShade = 0.599963377788629
End With
Selection.FormatConditions(1).StopIfTrue = False
Selection.FormatConditions.Add Type:=xlCellValue, Operator:=xlBetween, _
Formula1:="=101", Formula2:="=150"
Selection.FormatConditions(Selection.FormatConditions.Count).SetFirstPriority
With Selection.FormatConditions(1).Interior
.PatternColorIndex = xlAutomatic
.Color = 49407
.TintAndShade = 0
End With
Selection.FormatConditions(1).StopIfTrue = False

EndSub

Macro 3:

Sub IconosCeldas()

Range("E4").Select
Range(Selection, Selection.End(xlDown)).Select
Selection.FormatConditions.AddIconSetCondition
Selection.FormatConditions(Selection.FormatConditions.Count).SetFirstPriority
With Selection.FormatConditions(1)
.ReverseOrder = False
.ShowIconOnly = False
.IconSet = ActiveWorkbook.IconSets(xl3Symbols)
End With

With Selection.FormatConditions(1).IconCriteria(2)
.Type = xlConditionValueNumber
.Value = 51
.Operator = 7
End With
With Selection.FormatConditions(1).IconCriteria(3)
.Type = xlConditionValueNumber
.Value = 101
.Operator = 7
End With
End Sub

Una vez aplicada la función With en el registro de productos, el resultado se muestra en la imagen posterior. Como se aprecia, el formato condicional mediante iconos grafica qué productos cuentan con mayor (icono check) o menor stock (icono x).

inventario2

(Para mayor visualización de la imagen, hacer click en la misma)

Lectura rápida de inventario

2 comentarios

  1. Excelente explicación! Precisamente, buscaba este tipo de información para un trabajo y me ha sido de bastante ayuda. Hasta ahora ningún tema ha decepcionado!

  2. necesito un programa para una cafeteria y lavadero

Deja una respuesta

Los campos requeridos estan marcados con *.