Ocultar excel por completo al ejecutar macro

Me gustaría como puedo ocultar excel por completo y que solo me muestre los userforms creados en la macro, es una pregunta bastante difícil pero espero su valiosa colaboración

2 respuestas

Respuesta
1
Para hacer "invisible" a excel debes ejecutar un macro como este
Sub invisible()
    Application.Visible = False
End Sub
para hacerlo visible otra vez , en vez de False debe decir True
Bye
Sorry, pero me di cuenta de que tu lo que pretendes es ocultar excel y dejar solo activo el useform. Pues bien eso lo haces de esta forma
Sub autoformu_excel_invisible()
' Activa el autoformulario de Excel y hace invisible el libro, _
al cerrar el autoformulario se hace visible otra vez Excel
   Application.Visible = False
   On Error Resume Next
   ActiveSheet.ShowDataForm
   Application.Visible = True
End Sub
eso si, si la hoja esta vacia, pues no habra autoformulario, eso esta claro verdad ?.
Bien, ya realizada la aclaración, me comentas que tal te fue.
No olvides cerrar la pregunta
Gracias calvuch por su pronta respuesta.
Me explicare un poco mejor para que me puedas colaborar, tengo un userform que se inicia al abrir excel. Lo que quiero es que cuando "abra excel", no se muestre el inicio del programa"excel" si no que aparezca directamente mi userform y el excel quede oculto por completo.
Gracias
Ok. ¿Probaste con el segundo script que te envíe?
Eso realiza lo siguiente
1. Inicia Excel
2. Si hay datos en la hoja (al menos 1 rotulo), inicia el Useform de la hoja
3. Si cierras el useform excel se vuelve visible
consideracines: para que pueda ejecutarse el useform, debe primero ocurrir el evento Workbook_Open, en ese evento debes invocar el macro
ej:
Private Sub Workbook_Open()
    autoformu_excel_invisible
End Sub
y este macro lo pegas en algún modulo:
Sub autoformu_excel_invisible()
' Activa el autoformulario de Excel y hace invisible el libro, _
al cerrar el autoformulario se hace visible otra vez Excel
   Application.Visible = False
   On Error Resume Next
   ActiveSheet.ShowDataForm
   Application.Visible = True
End Sub
Ahora respecto a "no se muestre el inicio del programa"excel"... si lo que deseas es eliminar la interfaz de inicio, también se puede ( es bastante más largo, hay que utilizar apis de Windows) y eso es otro tema, lo siento.
Bien gracias entiendo tu ayuda, pero lo que me ocurre ahora es que cuando intento abrir algún archivo no me muestra nada, ex como si hubiera dejado invisibles los libro pero cuando abro un archivo nuevo excel funciona bien.
Mmmm... a ver el tema de que excel se oculte, si pegaste el código que te di y en los luagres que te indique, solo debe afectar al libro en que se pego el código, por ejemplo si pusiste el cod en el Libro1 ese cod es solo para el Libro1, por lo tanto si abres "otro" libro por ejemplo el Libro2, el código no se ejecuta "por que simplemente no existe allí".
A eso te refieres cuando dices "Cuando intento abrir algún archivo"
Aclaremos algunos términos para ver si hablamos lo mismo
Libro es un espacio de trabajo que tiene "Varias Hojas", hoja1, hoja2, etc...
Archivo= puede ser cualquier documento legible (excel, word, txt, ), etc.
calvuch, ya solucione el problema de los archivos y ahora si puedo utilizar tu ejemplo pero no pasa nada,
1.Creé un archivo de excel nuevo
2.Ingresé
Private Sub Workbook_Open()
    autoformu_excel_invisible
End Sub tal como lo indicaste
ademas adicione un userform y coloque el resto de codigo en un modulo nuevo pero no ocurre nada.  pregunto? el userform debe llevar algun nombre en especial? o debo colocar algun boton para activar este codigo.
Gracias
calvuch.
Ya solucione el inconveniente quitando el ultimo true que colocaste en el código mil gracias obtuviste una puntuación de 100000000.
De esta conversación me interesa muchísimo la parte de los apis para que no se vea el inicio,
me puedes ayudar a resolver este tema por favor...!
Mil y mil gracias
Que raroe so de quitar el true, ¿entonces cómo vuelves a hacer visibles Excel?..., ¿Por qué los useforms que ocupas tu son los que trae excel incorporado verdad? ¿O creaste medainte código tus porpios useforms?...
En fin, al cabo que ya lograste el objetivo. Me alegro.
Oye respecto a lo otro, deberías haber abierto otra consulta heeee... pero bueno ya que es Viernes!.. aquí te va un link con al info:
http://www.recursosvisualbasic.com.ar/htm/trucos-codigofuente-visual-basic/68.htm
En esta web encuentras muy buena info, aprenderás mucho
Bueno, esto es todo.
Respuesta

Prueba este código: en ThisWorkBook

Private Sub WorkBook_Open()

Application.Visible= False

UserForm1.Show

End Sub

Para hacer nuevamente visible tu hoja de Excel: Application.visible= True

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas