Ver Mensaje Individual
  #1 (permalink)  
Antiguo 21/07/2006, 13:36
karla_gemi
 
Fecha de Ingreso: julio-2006
Mensajes: 4
Antigüedad: 17 años, 9 meses
Puntos: 0
Busqueda Como saber si un txt esta abierto desde una macros en excel?

Tengo un formulario con varios combobox todos se actualizan y llenan con la info de un txt. al abrir el formulario.
El txt tiene la info de los Rut, Razon Social/Apellido Paterno, Apellido Materno, Nombre y diversas claves.

Cada combobox tiene su propia información del txt y mi idea es que al seleccionar algun dato del combobox1 que contiene la info del rut, en los siguientes como combobox2 me aparezca el dato de la razon social, y asi sucesivamente hasta llegar a las claves que se llenan en unos textbox, les muestro la sintaxis del combobox1

Private Sub RUT_Click()
RUT.Value = UCase(RUT.Value)
If Len(Dir$("C:\Claves\Claves Clientes.txt")) Then
Open "C:\Claves\Claves Clientes.txt" For Input Access Read As 1
Do While Not EOF(1)
Input #1, RUTS, APP_RAZ, APM, NOMBRES, CLAVE, SII, CLAVE_TESORERIA, clave_afc
If RUT.Value = RUTS Then
Buscar.Razon.Text = APP_RAZ
Buscar.Materno.Text = APM
Buscar.Nombre.Text = NOMBRES
Textbox1.text = CLAVE
End If
Loop
Close #1
End If
End Sub

De esta manera me funciona bien, sin embargo cuando no se sabe el rut quiero que puedan buscar por el nombre o apellido materno o razon social, y al poner la misma sintaxis cambiando desde luego el resultado de los datos y eso... pues siempre me sale que el archivo ya esta abierto.

Por eso necesito saber de que manera puedo comprobar si el archivo se encuentra abierto, para poder cerrarlo y que cumpla con la busqueda que necesito.

La sintaxis es bastante ambigua pero no se mucho del tema, soy bastante nueva, y además tiene que funcionar en el VB de Excel.

Les explicare con más detalle por que uso combobox y no cuadros de texto.
La razon es simple por que quiero que al ingresar por ejemplo los primeros numeros o letras comienze a buscar si hay alguien con esos datos, es decir... por ejemplo
al teclear 15... el combobox me rellena con el primer rut que tiene que comienza con 155555541-1, y que al mismo tiempo me arroje de inmediato los datos a los demás combobox....
Por que uso combobox en los demás... por que la consulta no siempre será sabiendo el rut, puede que solo sepan el nombre, o la razon social, o el apellido materno... al darle la misma aplicación a todos puedo buscar por la info segun el dato que tenga...
Lo unico que me interesaria poner en textbox serian las claves, ya que es lo que ando buscando.
Al darle la misma atribución a todos los combobox procedo a abrir el archivo txt, con la misma sintaxis que te explique al comienzo.
Si es posible saber si el archivo esta abierto, de que manera le puedo dar la instrucción para que me compruebe que los datos que tecleo en el combobox estan en el txt...
Por eso pensaba en que asi como le doy la instrucción de revisar si existe o no el archivo txt... tal vez tambien se podia dar la instrucción para saber si el archivo estaba abierto o cerrado.
He cambiado la numeración de 1 a FreeFile y no hay mejoras siempre da el error 52 o 55.
Alguien tiene una sugerencia que no implique usar controles para confirmar la busqueda, o hacer una base de datos en access?
De antemano se agradece cualquier buena respuesta.