jueves, 26 de octubre de 2017

Proteger Libros de Excel:

Seleccione Proteger sobre libro activo y en el cuadro de diálogo Proteger libro, elija la casilla de verificación Estructura
*Si especifica una contraseña, esa contraseña será necesaria para desproteger el libro.
Esta protección no incluye protección sobre los módulos y macros VBA

Si el libro de trabajo está protegido, el usuario no podrá:
-Ocultar hojas
-Añadir hojas
-Cambiar el nombre de una hoja
-Eliminar hoja
-Mover una hoja

Proteger Libros de Excel - VBA proyecto:

Si desea proteger el código VBA debe seleccionar el proyecto VBA del libro y asignar una clave.

Los libros que soportan proyectos VBA son los siguientes
.XLA .XLAM (complementos – libros cn propiedad visible Falso)
.XLS (libro en formato compatible con versiones anteriores a Excel 2007)
.XLSM (libro habilitado para macros valido desde Excel 2007 en adelante)

*Si llegara a guardar código VBA en un libro que no soporte el proyecto VBA el código se eliminara o no estará disponible una vez guardado el libro de Excel.

*A partir de Excel 2007 los libros comparten una estructura de zipeado
Es decir se puede cambiar la extensión de un archivo .xlsm con imágenes y recuperar los objetos como shapes y charts desde un folder.

Como ocultar una hoja para la mayoría de usuarios (poco expertos)

Objeto Worksheet - expresión .Visible

Puede asignar una hoja como "muy oculta". Esto evitará que el usuario vea la hoja.

Use VBA para lograrlo:
Una hoja "muy oculta" no aparecerá en la lista de hojas.

Para volverla muy oculta:
Worksheets("Hoja1"). Visible = xlVeryHidden

Para volverla visible luego:
Worksheets("Sheet1").Visible = true

Hacer visibles todas las hojas:
Dim sht
For Each sh In Sheets
 sh.Visible = True
Next sh

miércoles, 25 de octubre de 2017


How to create a Microsoft Excel image popup for a cell with Comments

Spreadsheet Image Tools - insert multiple images in cells or comments:

This useful tool create a popup picture in a Excel spreadsheet cell.

Set the background image for a cell comment from a folder path or text description from a cell value

Excel image tools - See More

Show image according to chosen name in cells with comments from a folder path with pictures
to swap images without to use Excel VBA macros. If you have a product list and wish to show a picture this is your Excel image tool.




 


viernes, 6 de octubre de 2017

Excel: Ejecutar funciones incorporadas de Excel desde Visual Studio Tools Office


Visual Studio Tools Office: Ejecutar funciones incorporadas de Excel invocando a ExecuteMso


En el siguiente fragmento de código se puede observar cómo realizar la llamada desde el diseñador de ribbon de Visual Studio Tools (cinta de opciones Excel)

ExecuteMso recibe el parámetro : "SelectAll" (para nuestro ejemplo)

*Como referencia debes saber que "SelectAll" --- invoca a la funcionalidad para seleccionar todos los objetos (Shapes: Charts, pictures, etc)

Otro buen motivo para realizar este tipo de invocaciones desde un Com add-in es evitar crear una cinta mediante XML (en este caso tendrías que crear cada botón  y sus atributos mediante XML)

*De todas formas puedes usar el custom Ui editor Xml - Free para facilitar las cosas
*En la web puedes encontrar la lista de comandos (ExcelRibbonControls.xlsx)

 En el XML tendrías algo como esto en cada botón - el código de tu archivo xml iniciaría así:


 

 

 

Por eso usamos el método más practico -   invocar a ExecuteMso:

Private Sub Button12_Click(sender As Object, e As RibbonControlEventArgs) Handles 
Button12.Click

        oxl = Globals.ThisAddIn.Application

        oxl.CommandBars.ExecuteMso("SelectAll")

    End Sub

Ver mas Tips Sobre VBA - Excel -MyExcelTools.com