Programación General => Visual Basic 6.0 e inferiores => Mensaje iniciado por: esme1286 en Viernes 31 de Julio de 2009, 01:15
Título: programa de archivos en visual basic
Publicado por: esme1286 en Viernes 31 de Julio de 2009, 01:15
Hola, bueno yo quiero hacer un programa para buscar archivos por ejemplo, en un texBox poner el nombre del archivo que quiero buscar y tener un commandButton de buscar y ahi es la accion, quiero buscarlo en una ruta especifica los archivos son .pdf ya tengo el codigo para despues de encontrarlos abrirlo, peor mi problema es que no puedo hacerlo asi como quiero.
he logrado hacerlo de la manera en que elijo una ruta y depsues pongo el nombre del archivo y ya lo busca y lo encuentra si existe pero yo quieroq ue busque en una ruta especifica.
espero me puedan ayudar gracias.
Título: Re: programa de archivos en visual basic
Publicado por: cpmario en Viernes 31 de Julio de 2009, 20:48
No se entiende lo que deseas. Repite la pregunta y coloca algo de tu código. :comp:
Título: Re: programa de archivos en visual basic
Publicado por: esme1286 en Viernes 31 de Julio de 2009, 21:07
Hola, bueno pues me vuelvo a explicar yo lo que quiero es que al poner el nombre del archivo existente en un directorio ejemplo D:MIS DOCUMENTOS\LIBROS ahi es donde tengo todos mis libros y quiero que de ahi me vaya buscando los libros que yo quiera encontrar por decir si en la caja de texto pongo el nombre del libro ALGORITMOS y depsues que le de en buscar me lo busque en esa ruta y depsues con otro boton de abrir pueda yo abrir el archivo espero y me haya entendido bien.
lo que tengo es seleccionando la ruta donde quiero encontrar el archivo y yo no quiero eso asi, yo nadamas quiero poner el nombre del archivo y que automaticamente me lo busque en la ruta que le debo especificar aqui tienes el codigo que tengo.
Private Sub cmdBrowserFolder_Click() txtPath.Text = cFind.BrowseForFolder(Me.hWnd, "D:MIS DOCUMENTOSLIBROS ") End Sub
Private Sub cmdFind_Click()
If txtPath.Text = "D:MIS DOCUMENTOSMIS ARCHIVOSSOFTWARELIBROS Y SERIALES DE SOFTWARE" Then (esto si lo pongo asi no me funciona) MsgBox "seleccione una unidad o directorio donde buscar", vbExclamation Exit Sub End If
End Sub
Título: Re: programa de archivos en visual basic
Publicado por: cpmario en Viernes 31 de Julio de 2009, 22:41
Espero lo siguiente resuelva tu duda.
Código: Text
Dim strRuta As String
Dim strNombreArchivo As String
Dim strRutaYNombreArchivo As String
strRuta = "D:MIS DOCUMENTOSLIBROS" 'Ruta donde tienes los libros
Public Function FileExists(sFile As String) As Boolean
' Tests for file existence
If sFile = "" Then
FileExists = False
End If
On Error Resume Next
FileExists = ((GetAttr(sFile) And vbDirectory) = 0)
End Function
:comp:
Título: Re: programa de archivos en visual basic
Publicado por: esme1286 en Sábado 1 de Agosto de 2009, 00:19
Hola, bueno si esta bien pero lo que pasa es que ya tu pones el nombre del archivo que sera buscado ya lo coloque en mi programa pero solo me dice no encontre el archivo, yo lo que quiero es que dependiendo del nombre que escriba en una caja de texto me diga si existe ese nombre en la carpeta donde tengo mis libros guardados mas no poner el nombre especificando cual se buscara, no logro encontrar nada a como lo quiero hacer, espero me entiendas gracias.
Título: Re: programa de archivos en visual basic
Publicado por: cpmario en Sábado 1 de Agosto de 2009, 01:17
Supón que la caja de texto donde escribes el nombre del archivo que deseas buscar se llama txtNombreArchivo entonces escribes en lugar de:
Código: Text
strNombreArchivo = "ALGORITMOS.PDF"
Escribes
Código: Text
strNombreArchivo = txtNombreArchivo.Text
:comp:
Título: Re: programa de archivos en visual basic
Publicado por: esme1286 en Sábado 1 de Agosto de 2009, 19:22
Hola lo he hecho asi como dijiste pero me marca un error
Public Function FileExists(sFile As String) As Boolean ' Tests for file existence If sFile = "" Then FileExists = False End If On Error Resume Next FileExists = ((GetAttr(sFile) And vbDirectory) = 0) End Function ' boton buscar// Private Sub Command1_Click() Dim strRuta As String Dim strNombreArchivo As String Dim strRutaYNombreArchivo As String
strRuta = "D:MIS DOCUMENTOSMIS ARCHIVOSSOFTWARELIBROS Y SERIALES DE SOFTWARE" 'Ruta donde tienes los libros strNombreArchivo = txtNombreArchivo.Text strRutaYNombreArchivo = strRuta & strNombreArchivo If FileExists Then ' error de compilacion, el argumento no es opcional MsgBox "Encontré el archivo", vbExclamation Else MsgBox "No encontré el archivo", vbExclamation End If
End Sub
lo que esta en azul es el error que me marca
gracias espero me respndas.
Título: Re: programa de archivos en visual basic
Publicado por: cpmario en Sábado 1 de Agosto de 2009, 19:33
Cambia
Código: Text
If FileExists Then
por
Código: Text
If FileExists(strRutaYNombreArchivo) Then
:comp:
Título: Re: programa de archivos en visual basic
Publicado por: esme1286 en Sábado 1 de Agosto de 2009, 23:36
No funciona, le pongo tal cual lo pones y ahora me da un error aqui....
Private Sub Command1_Click() Dim strRuta As String Dim strNombreArchivo As String Dim strRutaYNombreArchivo As String
strRuta = "C:" 'Ruta donde tienes los libros strNombreArchivo = txtNombreArchivo.Text 'Se requiere un objeto error en tiempo de ejecusion
strRutaYNombreArchivo = strRuta & strNombreArchivo If FileExists(strRutaYNombreArchivo) Then MsgBox "Encontré el archivo", vbExclamation Else MsgBox "No encontré el archivo", vbExclamation End If
End Sub
Public Function FileExists(sFile As String) As Boolean ' Tests for file existence If sFile = "" Then FileExists = False End If On Error Resume Next FileExists = ((GetAttr(sFile) And vbDirectory) = 0)
End Function
lo marco con rojo es el error, pero si lo pongo entre comillas dobles "txtNombreArchivo.Text" me dice siempre que no se encontro el archivo.
ahora otra cosa no quiero que me diga si lo encontro o no, quiero que me lo muestre en un lisBox ya he tratado con otro codigo pero no pasa de ahi diciendome que no se encontro el archivo.
gracias.
Título: Re: programa de archivos en visual basic
Publicado por: cpmario en Domingo 2 de Agosto de 2009, 00:23
Te explicaba que tenías que hacer un texbox en la forma que estás usando.
Citar
Supón que la caja de texto donde escribes el nombre del archivo que deseas buscar se llama txtNombreArchivo entonces escribes en lugar de:
Si no tienes un texbox llamado txtNombreArchivo se mostrará un error como el que dices. Te recomiendo volver a leer el tutorial que tengas de VB. :comp:
Título: Re: programa de archivos en visual basic
Publicado por: esme1286 en Domingo 2 de Agosto de 2009, 01:06
jaja, eso ya lo habia entendido pero a vista de que no salia mi caja de texto se llama Text1 y lo pongo asi Text1.text y me sigue diciendo que no encontro el archivo ya cheque con otro nombre de archivo y otra ruta y nada
gracias de todos modos
puedes cerrar este tema si no me puedes ayudar gracias.