Complemento excel

Amigo quiero aprender a crear un complemento en excel, para convertir las palabras de mayúscula a miniscula y añadirlo a mi menu de herramientas y también explicarme la codificación para no estar perdido de antemano gracias por la ayuda.

1 respuesta

Respuesta
1
Deberias hacer una macro para que convierta el texto de una celda de mayusculas a minusculas. La macro se puede crear en Herramientas-Macros-Editor de visual basic. En la pantalla del editor inserta un modulo a traves de insertar modulo y en este modulo copia la macro que sigue;
Sub auto_open()
Application.CommandBars("Tools").Controls.Add Type:=msoControlButton, ID:= 2950, Before:=8
Application.CommandBars("Tools").Controls(8).Style = msoButtonCaption
Application.CommandBars("Tools").Controls(8).OnAction = "Minusculas"
Application.CommandBars("Tools").Controls(8).Caption = "Mayus. a Minus."
End Sub
Sub Minusculas()
convertir = ActiveCell.Text
ActiveCell = LCase(convertir)
End Sub
Sub auto_close()
Application.CommandBars("Tools").Controls(8).Delete
End Sub
Si quieres saber que es lo que hace el código, hay tres partes, pero antes de explicarte que es lo que hace te explico los siguientes pasos que debes hacer.
Una vez hecha la macro guarda este libro como un complemento. Archivo- Guardar y la opción guardar como tipo elige complemento de excel. Deja la carpeta que te dice por defecto. Eso si, ponle el nombre que quieras al complemento, por ejemplo minúsculas.
El hecho de guardarlo como complemento nos permitirá acceder a esta macro desde cualquier libro que abramos. De otra forma esta macro solo estaría disponible en el libro donde la hemos creado.
Ya hemos acabado. Ahora, cuando abras cualquier libro y al ir a herramientas-Complementos, busca el que has creado tu dentro de la lista y actívalo. Veras que una vez activado en el menu de herramientas, más o menos por la mitad, te saldrá una opción llamada Mayus. A Minus. Que transformara lo que tengas en una celda en mayúsculas a minúsculas. Si desactivas el complemento (del mismo modo que lo has activado) este elemento del menu de herramientas desaparecerá.
Te explico el código. Hay tres partes. La del medio que yo la he llamado minúsculas (Sub Minúsculas), lo único que hace es guardar en una variable (convertir) el texto de la celda activa y luego, con la orden Lcase lo convierte a minúsculas, devolviendo el resultado a la misma casilla.
Por otro lado hay dos macros mas. Auto_open que lo que consigue, es que al cargar el complemento (cuando se abra) se ejecute el código que contiene la macro auto_open, que no es mas que añadir a la barra de herramientas el contro mayus. a minus;
Application.CommandBars("Tools").Controls.Add Type:=msoControlButton, ID:= 2950, Before:=8
Lo hace en el menu de herramientas porque esta indicado en "Tools" y Before es donde quieres que lo ponga, en este caso contando 8 cuando se despliegue el menu.
Las otras lineas son de configuracion del comando añadido.
Application.CommandBars("Tools").Controls(8).Style = msoButtonCaption
****Esta especifica el tipo de boton, le he dicho que solo ponga el texto****
Application.CommandBars("Tools").Controls(8).OnAction = "Minusculas"
****Esta le digo que macro tiene que ejecutar cuando se seleccione el control, en este caso la llamada Minusculas ****
Application.CommandBars("Tools").Controls(8).Caption = "Mayus. a Minus."
****Y en esta le digo el texto que contendra este comando, en este caso le digo Mayus. a Minus****
Por ultimo hay la tercera macro que se ejecutara cuando se cierre, es decir, cuando desactives el complemento, en la cual lo único que hace es eliminar del menu herramientas el control que se ha añadido anteriormente.
Espero no haberte liado mucho y haberme explicado con claridad, si tienes alguna duda preguntemela.
Agradezco esa respuesta es una gran solución me va servir en lo que estaba haciendo muchas gracias por la explicación es entendible voy a desarrollarla. Saludos..

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas