He comenzado a desarrollar software a medida con VB6 y tengo una duda.
El cliente me ha pedido que carge preferencias al iniciar una aplicacion puesto que tengo varios diseños de un mismo formulario y tambien quiere que el usuario pueda personalizar los colores de esta aplicacion.
Se me ocurrio el siguiente codigo pero aveces se vuelve engorroso por que es un poco lento y cuando hay libros de excel abierto, aparte creo que algunas maquinas donde se instalara este sistema no tienen Office.
Alguien me podria dar alguna sugerencia o ayudaria a mejorar mi idea?
De antemano Gracias.
Anexo Codigo fuente utilizado en el formulario splash:
Cita:
De antemano gracias 'Declaro las variables
Dim xlApp As Excel.Application
Dim xlLibro As Excel.Workbook
Dim xlHoja As Excel.Worksheet
'Abro el programa
Set xlApp = New Excel.Application
'Abro el archivo Excel
'(archivo en la misma carpeta bajo el nombre pref)
Set xlLibro = xlApp.Workbooks.Open((App.Path & "/pref.xls"), , True, _
, "pass1234@", , True, , , False)
'Voy a la hoja donde trabajare
Set xlHoja = xlApp.Worksheets("visual_pref")
findit = False
'Declaro las variables a usar en la funcion RGB
Dim fRojo As Integer
Dim fVerde As Integer
Dim fAzul As Integer
fRojo = xlHoja.Range("a2").FormulaR1C1
fVerde = xlHoja.Range("b2").FormulaR1C1
vAzul = xlHoja.Range("c2").FormulaR1C1
Select Case Val(xlHoja.Range("A1").FormulaR1C1)
Case 1
Load Form1
Form1.BackColor = RGB(fRojo, fVerde, fAzul)
Form1.Caption = xlHoja.Range("a4").FormulaR1C1
Case 2
Load form2
form2.BackColor = RGB(fRojo, fVerde, fAzul)
form2.Caption = xlHoja.Range("a4").FormulaR1C1
End Select
'Cierro el libro de excel para que en el administrador de tareas no se acumule
xlApp.Quit
'reset variables de los objetos
Set xlHoja = Nothing
Set xlLibro = Nothing
Set xlApp = Nothing
Dim xlApp As Excel.Application
Dim xlLibro As Excel.Workbook
Dim xlHoja As Excel.Worksheet
'Abro el programa
Set xlApp = New Excel.Application
'Abro el archivo Excel
'(archivo en la misma carpeta bajo el nombre pref)
Set xlLibro = xlApp.Workbooks.Open((App.Path & "/pref.xls"), , True, _
, "pass1234@", , True, , , False)
'Voy a la hoja donde trabajare
Set xlHoja = xlApp.Worksheets("visual_pref")
findit = False
'Declaro las variables a usar en la funcion RGB
Dim fRojo As Integer
Dim fVerde As Integer
Dim fAzul As Integer
fRojo = xlHoja.Range("a2").FormulaR1C1
fVerde = xlHoja.Range("b2").FormulaR1C1
vAzul = xlHoja.Range("c2").FormulaR1C1
Select Case Val(xlHoja.Range("A1").FormulaR1C1)
Case 1
Load Form1
Form1.BackColor = RGB(fRojo, fVerde, fAzul)
Form1.Caption = xlHoja.Range("a4").FormulaR1C1
Case 2
Load form2
form2.BackColor = RGB(fRojo, fVerde, fAzul)
form2.Caption = xlHoja.Range("a4").FormulaR1C1
End Select
'Cierro el libro de excel para que en el administrador de tareas no se acumule
xlApp.Quit
'reset variables de los objetos
Set xlHoja = Nothing
Set xlLibro = Nothing
Set xlApp = Nothing