Como crear un archivo de ayuda

15/08/2006 - 00:04 por Miguel | Informe spam
Hice una función en VBA que me ayuda con una tarea diaria de excel. Me
gustaría poder crear un archivo de ayuda de la misma, sin embargo no
encuentro información de cómo hacerlo.
 

Leer las respuestas

#1 Héctor Miguel
15/08/2006 - 05:09 | Informe spam
hola, Miguel !

Hice una funcion en VBA que me ayuda con una tarea diaria de excel.
Me gustaria poder crear un archivo de ayuda de la misma
sin embargo no encuentro informacion de como hacerlo.



1) si lo que necesitas es [efectivamente] 'crear' archivos de ayuda [.chm, .hlp, .html, etc.]...
revisa las siguientes alternativas:
-> Displaying Help http://j-walk.com/ss/excel/tips/tip51.htm
-> Help Context IDs http://j-walk.com/ss/excel/tips/tip89.htm

2) si lo que pretendes es que una funcion personalizada muestre 'ayuda' en el dialogo de 'pegra funcion'...
te paso algo de informacion al final del presente ;)

si cualquier duda [o informacion adicional]... comentas ?
saludos,
hector.

si quisieras dar algun tipo de 'soporte' al usuario para que 'sepa' lo que debe proporcionar a tus argumentos...

op1: [me parece que] la opcion mas 'barata' [por sencilla] pudiera ser...
a) dar a los argumentos [de tus funciones] nombres 'acordes' a su funcionamiento
[similares a los acostumbrados por las funciones incorporadas de la aplicacion]
y 'aprovechas' que los usuarios [normalmente] ya estan 'acostumbrados' a tales convencionalismos :))
b) 'cargar' con unos comentarios 'generales' a la funcion [no a cada argumento]
[aunque... solo estarian 'disponibles' si la funcion se ejecuta desde el asistente] :-(
-> te paso un ejemplo sencillo al final del presente ;)

op2: si [de todas formas] requieres de alternativas mas 'avanzadas'...
te paso [algo mas de] informacion al respecto al final del presente :)
_____
op1: ejemplo usando el metodo Application.MacroOptions... para una funcion personalizada:
el argumento 'Description' [que es el que] sirve para 'informar' al usuario +/- que hace [y algo de sus argumentos]...
-> tiene un limite de 255 caracteres :-(
-> tienes 'disponibles' [un maximo de] 4 lineas de texto :)
las 4 se muestran 'desde' que el usuario hace uso del asistente... en el primer dialogo [solamente]
una vez 'editando' los argumentos de la funcion [en el segundo dialogo] SOLO se muestran 2 lineas de texto :-((
[obviamente] el texto 'descriptivo' que estoy usando en el ejemplo 'excede' a los parametros necesarios ejemplificados ;)
y... la longitud del texto del ejemplo es ya de 245 carcteres [dispones de 10 mas, pero... con 11 -o mas-... FALLA] :-((
-> puedes especificar -ademas- a cual de las categorias de las funciones se integrara 'tu' funcion personalizada :))
= una funcion de ejemplo en un modulo de codigo 'normal' ==Function AF_Activo(ByVal Ref As Range) As Boolean
If Not Ref.Parent.AutoFilterMode Then Exit Function
Dim Filtro As Byte: Application.Volatile
With Ref.Parent.AutoFilter
If Intersect(Ref.Cells(1, 1), .Range) Is Nothing Then Exit Function
Filtro = Ref.Column - .Range.Column + 1: AF_Activo = .Filters(Filtro).On
End With
End Function
la 'carga' del texto 'inicial' de ayuda... en el modulo de codigo del libro [ThisWorkbook] ==Private Sub Workbook_Open()
Application.MacroOptions _
Macro:="AF_Activo", _
Description:="Devuelve Verdadero/Falso " & _
"si la referencia especificada tiene activados los AutoFiltros" & vbCr & _
"El argumento ""Ref"" DEBE SER una referencia de celda." & vbCr & _
"Otros argumentos segun sean requeridos." & vbCr & _
"Tercera y cuarta lineas de texto SOLO en el dialogo ""principal"".", _
Category:=9
End Sub
como informacion adicional... a partir de xl2000, estos son los numeros de cada categoria:
0 = Todas
1 = Financieras
2 = Fecha y Hora
3 = Matematicas y Trigonometricas
4 = Estadisticas
5 = Busqueda y Referencia
6 = Base de Datos
7 = Texto
8 = Logicas
9 = Informacion
10 = Comandos
11 = Personalizar
12 = Macro Control
13 = DDE / Externo
14 = Definidas por el Usuario
15 = Ingenieria
_____
op2: si quieres agregar 'descripciones' para los argumentos de la funcion [ademas de a la funcion]...
es necesario 'cargar' la funcion [y sus argumentos] en una libreria 'comun' [generalmente user(32).dll]
utilizando para ello otras funciones: REGISTER y UNREGISTER [para 'descargarla'], ademas de que...
-> esas funciones SOLO estan 'disponibles' a traves del metodo 'ExecuteExcel4Macro' del objeto Application
-> es necesario conocer [INDISPENSABLE para registrar] EXACTAMENTE el 'tipo' de datos [funcion y argumentos]
[despues 'entenderas mejor' este punto] :))
es un tema [escabroso por] 'dificil de explicar' [de manera 'sencilla'], mas no [imposible] de comprender.
de cualquier forma, [estoy seguro que son los mejores] los sitios donde encontraras informacion adecuada son:
1) en el sitio de John Walkenbach, en la seccion de Excel Expert E-Letter, Ejemplar #9 de fecha Julio 15, 1999
hay una seccion titulada: Power Programming Techniques created by Laurent Longre.
-> http://j-walk.com/ss/excel/eee/eee009.txt <- ['pasando' la mitad de la pagina]...
encontraras un ejemplo de [para 'empezar a entender'] su forma de uso.
2) en la pagina de su autor Laurent Longre [http://xcell05.free.fr/] encuentras informacion mas detallada
-> pulsa el boton de 'English page', revisa la seccion de 'funcustomize.dll' [libreria para personalizar funciones]
-> descarga/instala la libreria [y un XLA de ejemplo] en:
http://xcell05.free.fr/downloads/FunCustomize.zip

si [probablemente] quedaran dudas... comentas? o... comentas tu experiencia 'despues de...' ?

Preguntas similares