Registre UDF con descripciones de argumentos usando el complemento de Excel
Tengo un complemento con un UDFgetRegExResult
. Quiero agregar una descripción de función y descripciones de argumentos a esta función, de modo que cuando el usuario instale el complemento, cierre, abra Excel varias veces y vaya al cuadro de diálogo "Insertar función", podrá encontrar la función con la descripción de los argumentos.
Lo mismo se pideaquí. encontré unoresponder eso se adapta a mis necesidades. Excepto...
Quiero poder hacer esto a través de un complemento de Excel. Mi idea es poner call en addinworkbook_open
evento así:
Private Sub Workbook_Open()
Call getRegExResultRegister
End Sub
Public Sub getRegExResultRegister()
Application.MacroOptions Macro:="getRegExResult", Description:="Returns a concatenated string of NONE, ONE, or ALL Regular Expression Match(es).", Category:="User Defined", _
ArgumentDescriptions:=Array("Source string to inspect for matches.", _
"Regular Expression Pattern. E.g. ""\d+"" matches at least 1 or more digits.", _
"[Default = True] True = Returns all the matches found. False = Returns only the first match.", _
"[Default = True] True = Not case sensitive search. False = Case sensitive search.", _
"[Default = "";""] Delimiter to insert between every macth, if more than 1 matches are found.")
End Sub
Después de instalar el complemento, cerrar, abrir Excel, aparece el error de tiempo de ejecución 1004: "No se puede editar una macro en un libro oculto. Deshacer el libro ..."
Pregunta 1¿Cómo mostrar un libro de complementos? Traté de ponerThisworkbook.Windows(1).visible = True
en elWorkbook_open
evento antes de la llamada para registrarse, pero eso da como resultado Runtime 9, subíndice fuera de rango.
Si el complemento de ocultar es imposible, ¿hay alguna otra forma de hacerlo?
Gracias por la ayuda.
Preguntas similares:
Excel Register UDF en Personal.xslb
El código actual hace lo que quiero, con un error. Cuando abro un libro de trabajo existente, obtengo 2 ventanas de Excel. Uno del libro abierto (correcto), uno del complemento (no deseado). ¿Cómo deshacerse de la segunda ventana?
Private Sub Workbook_Open()
With ThisWorkbook
.IsAddin = False
Call getRegExResultRegister
.IsAddin = True
.Saved = True
End With
End Sub