border

Miembros:
Mensajes:
Temas:
Online:

Ultimo Miembro:

 
 

Cuenta Bancaria en EEUU
  #1 (permalink)  
Antiguo 22-01-2006, 09:52:27
Un Nuevo Amigo
 
Registrado: ene 2006
Posts: 10
merops Valoración +2
Predeterminado dudas de excel. muchos errores en programa

saludos, acabo de llegar. a ver si vosotros dais con los problemas que tengo.
el proyecto en que me he embarcado:

tengo 5 forms de los que parto para hacer distintas cosas. Objetivo proyecto :
1.-localizar un texto dentro de un determinado libro y determinada hoja.
2.- poder añadir nuevo texto a las hojas , localizar distintos datos para cambiarlos.
llevo bastante tiempo trabajando con ello. pero al final me daba el error 1004 un monton de veces, y ahora que intento cambiar partes del programa me dan otros. :smt005 . ya no se que hacer.
mi idea era cada vez que necesite hacer un busqueda abrir el libro de excel con su hoja correspondiente( 2 programas distintos) luego según vaya necesitando programillas que me hagan el resto de las cosas,(buscar texto, cambiar texto, añadir texto...)

intente hacerlo con "agregar procedimiento" desde un módulo y luego llamarlo desde el form que me interese.
al final desistí. me daba errores y mas errores.
he leido vuestro sistema de apertura de excel y lo he intentado pero tambien me da error. yo tenia el programa de busqueda así:
Código:
Public Sub LOCALIZARLIBROHOJA() 
Dim tema As String 
Dim HOJAEXCEL As String 
Dim objexcel As Object 
Dim objlibro As Object 
tema = UCase(frm3busqueda.txt1.Text)[toma el nombre del libro de un text de un form desde visual] 
HOJAEXCEL = UCase(frm3busqueda.txt2.Text)[toma el nombre de la hoja de un text de un form en visual] 
Set objexcel = GetObject(, "excel.application")[abro excel. el primer dia no me dio problemas, también lo intente con createobject, pero me da también errores] 
objexcel.Visible = False 
Set objlibro = objexcel.Workbooks.Open("c:\documents and settings\uservpn\escritorio\m\proye\buscar\" & tema & ".xls")[abro libro que me interesa] 
objlibro.Worksheets(HOJAEXCEL).Select[abro hoja que me interesa] 
[variables para hacer busquedas] 
Dim r1 As Range 
Dim i As Integer 
Dim vale As Boolean 
frm3busqueda.lstencontrado.Clear 
frm3busqueda.Label4.Caption = "" 
vale = False 
objlibro.ActiveSheet.Range("a1").Activate [color=red][en el primer programa que hice ponia solo el range("a1").activate, pero me daba el error 1004)[/color]
[empieza la búsqueda] 
Do While Not IsEmpty(ActiveCell) 
If ActiveCell.Value = UCase(frm3busqueda.txttermino.Text) Then[ primer error,nº 93  me pone que no es variable] [he intentado poner delante objlibro y activesheet pero tambien me da errores tipo 1004 o similares]vale = True 
Set r1 = objlibro.ActiveSheet.ActiveCell [color=red](este en el 1º programa que hice solo ponia activecell, pero me vuelve a dar errores[/color])
For i = 0 To 254 
x = r1.Offset(0, i + 1).Value 
If x <> "" Then 
[los resultados de la busqueda me los pone en un list]frm3busqueda.lstencontrado.AddItem x 
End If 
Next i 
End If 
ActiveCell.Offset(1, 0).Activate 
Loop 
If vale Then 
frm3busqueda.Label4.Caption = "Nº de libros encontrados : " & frm3busqueda.lstencontrado.ListCount 
Else 
frm3busqueda.Label4.Caption = "lo sentimo , no hay coincidencia" 
End If 

End Sub
ahora he intentado añadir a esto lo que vosotros proponeis :
Código:
[color=red]con este localizo el libro y la hoja que me interesa[/color]
Public Sub LOCALIZARLIBROHOJA()
Dim tema As String
Dim HOJAEXCEL As String
Dim objexcel As Excel.Application
Dim objlibro As Excel.Workbook
Dim objhoja As New Excel.Worksheet
Dim r1 As Range
Dim i As Integer
Dim vale As Boolean
tema = UCase(frm3busqueda.txt1.Text)
HOJAEXCEL = UCase(frm3busqueda.txt2.Text)
On Error Resume Next

Set objexcel = GetObject(, "excel.application")
objexcel.Visible = False
If Err.Number <> 0 Then
Set objexcel = CreateObject("excel.application")
Else
objexcel.Quit
Set objexcel = Nothing
Set objexcel = CreateObject("excel.application")
End If
Err.Clear
On Error GoTo 0
Set objlibro = objexcel.Workbooks.Open("c:\documents and settings\uservpn\escritorio\m\proye\buscar\" & tema & ".xls")
objlibro.Sheets(HOJAEXCEL).Select

frm3busqueda.lstencontrado.Clear
frm3busqueda.Label4.Caption = ""
vale = False
Range("a1").Activate
Do While Not IsEmpty(ActiveCell)
If ActiveCell.Value = UCase(frm3busqueda.txttermino.Text) Then
vale = True
Set r1 = ActiveSheet.ActiveCell
For i = 0 To 254
x = r1.Offset(0, i + 1).Value
If x <> "" Then
frm3busqueda.lstencontrado.AddItem x
End If
Next i
End If
ActiveCell.Offset(1, 0).Activate
Loop
If vale Then
frm3busqueda.Label4.Caption = "Nº de libros encontrados : " & frm3busqueda.lstencontrado.ListCount
Else
frm3busqueda.Label4.Caption = "lo sentimo , no hay coincidencia"
End If

End Sub
[color=red]con este programa cierro para que quede todo cerrado y vacias las variables[/color]
Public Sub CERRARLIBRO()
'CIERRO EXCEL Y VACIO VARIABLES
Dim objexcel As Object
Set objexcel = CreateObject("excel.application")
On Error Resume Next
objexcel.ActiveWorkbook.Save
Application.Quit
ActiveWorkbook.Close
objexcel.Visible = True
Set objexcel = Nothing
Set objlibro = Nothing
Set ActiveSheet = Nothing
HOJAEXCEL = ""
tema = ""
End Sub
pero no hay manera de que me funcione, ni de una forma ni de otra.si pudierais ver el programa os lo agradeceria, la otra forma seria mandaros la carpeta donde tengo todos los programas y los libros.
un saludo
y gracias de antemano.
merops
Responder Con Cita
  #2 (permalink)  
Antiguo 25-01-2006, 16:02:17
Un Nuevo Amigo
 
Registrado: ene 2006
Posts: 24
jimcov Valoración +2
Contactar con jimcov a través de MSN
Predeterminado

Hola merops

mandame la hoja de calculo para revisarla

jimcov
Responder Con Cita
  #3 (permalink)  
Antiguo 25-01-2006, 18:22:23
Un Nuevo Amigo
 
Registrado: ene 2006
Posts: 10
merops Valoración +2
Predeterminado HOLA GRACIAS

HOLA . YO NO TRABAJO CON MACROS DESDE UNA ÚNICA HOJA DE EXCEL, SINO QUE HE CREADO UN PROGRAMA(JI, JI, LO INTENTO) con 5 formularios, y dentro de cada formulario programas distintos en base a lo que deseo realizar. ¿UY!perdon acabo de darme cuenta que estoy escribiendo en mayúsculas, no estoy gritando.
TE MANDO LA CARPETA DONDE ESTAN LOS FORMS , LAS TABLAS Y LOS PROGRAMAS.
YO ABRO EL PROGRAMA DESDE VISUAL .
si arrancas el programa te aparece un form que te da la bienvenida, sola hay que dar a entrar. el siguiente form eliges un optionbutton (yo para trabajar utilizo "GENERALIDADES", abre un libro con ese nombr) luego de la lista desplegable "PROLEGOMENOS" (que es la hoja que quiero utilizar y buscar . algunos terminos son "amigo, petroleo" )
escribo el texto a buscar y soy a cmdbuscar. y ahí empiezan los problemas.
así que las otras partes la del form5(modificar)no he continuado programandolo.
supongo que también tendrás que cambiar la ruta c:\..........
gracias por tu ayuda
merops
Archivos Adjuntos
Tipo de Archivo: zip buscar_166.zip (194,3 KB, 8 visitas)
Responder Con Cita
  #4 (permalink)  
Antiguo 25-01-2006, 20:54:27
Avatar de J.M.Movilla
Administrator
 
Registrado: dic 2002
Ubicación: BURGOS - ESPAÑA
Posts: 5.431
J.M.Movilla Valoración +2
Predeterminado

Olvidaste, amigo merops, incluir los Módulos. No se puede ejecutar tu proyecto... ni se puede, por ende, echarte una mano nada más que "al cuello"...
__________________
José María Movilla Cuadrado
______________________

Visual Basic Videos Programacion Foro Programacion
Tutoriales Programacion Trucos Programacion Codigos Programacion
Responder Con Cita
  #5 (permalink)  
Antiguo 27-01-2006, 16:16:51
Un Nuevo Amigo
 
Registrado: ene 2006
Posts: 10
merops Valoración +2
Predeterminado gracias por la mano al cuello

saludos.
te mandé la carpeta con todo. son 5 formularios y un módulo.
el modulo se llama "Miproyecto.bas" detrás de hoja de excel LENGUA.XLS. MBUSCAR.VBP, MBUSCAR.VBW.
además no se a que te refieres muy bien a que no tengo módulo. tampoco te creas que soy una experta en vb. solo llevo 5 meses trabajando con este lenguaje, y siempre la ayuda que he recibido es por foros donde me han ayudado mucho y un monton de manuales que me he bajado de internet. vamos que no soy ninguna profesional simplemente una aficionada.
si puedes vuelve a comprobar la carpeta que te mande. pues creo que esta todo.
un saludo
y gracias
Responder Con Cita
  #6 (permalink)  
Antiguo 27-01-2006, 18:32:09
Avatar de J.M.Movilla
Administrator
 
Registrado: dic 2002
Ubicación: BURGOS - ESPAÑA
Posts: 5.431
J.M.Movilla Valoración +2
Predeterminado

Efectivamente, el Módulo sí que estaba, pero al cargar el proyecto éste no lo encontraba... Y al decir que "no tenías Módulo", me refería simplemente a esto, que no lo encontraba al cargar el proyecto... Y ya de paso, perdona que te tratase de "amigo", amiga merops...

Creo haberte corregido el error que tú apuntas, aunque me da la impresión de que seguirás encontrando otros errores. Ya los irás reportando.

Te he quitado algunas referencias que me parece que chocaban con otras. Ah, y también te he puesto Excel 9.0, porque yo no tengo la Excel 10.0... Tendrás que corregir este cambio.

¿Sabes qué he hecho para encontrar dónde tienes fallos?

1.- Cargo el proyecto.
2.- Pulso [F5]
3.- Cuando me da el error pongo el puntero sobre las diversas palabras que componen la línea amarilla en que se produce el error y miro a ver por qué falla; a mí me decía que no encontraba la Hoja Excel que le mandabas abrir; he cambiado la ruta por "App.Path", y solucionado...
Archivos Adjuntos
Tipo de Archivo: zip buscar_216.zip (192,9 KB, 2 visitas)
__________________
José María Movilla Cuadrado
______________________

Visual Basic Videos Programacion Foro Programacion
Tutoriales Programacion Trucos Programacion Codigos Programacion
Responder Con Cita
  #7 (permalink)  
Antiguo 28-01-2006, 09:17:06
Un Nuevo Amigo
 
Registrado: ene 2006
Posts: 10
merops Valoración +2
Predeterminado gracias

le echare un vistazo a tus soluciones, esto de no dominar un lenguaje le vuelve loca a una :smt017 .
el proyecto lo voy haciendo con ensayo, error , ensayo, error...... y cabreo.
gracias de todas formas un saludo
merops
Responder Con Cita
  #8 (permalink)  
Antiguo 28-01-2006, 09:47:14
Un Nuevo Amigo
 
Registrado: ene 2006
Posts: 10
merops Valoración +2
Predeterminado no me funciona

sigue parandose enprograma " buscarterminos"del módulo activecell.value=buscarpalabra" .
la única diferencia que veo es la ruta : "app.path" ¿has cambiado en algun otro sitio algo? a mi solo con cambiar eso no me funciona.

gracias
buen fin de semana.
Responder Con Cita
  #9 (permalink)  
Antiguo 28-01-2006, 11:29:15
Avatar de J.M.Movilla
Administrator
 
Registrado: dic 2002
Ubicación: BURGOS - ESPAÑA
Posts: 5.431
J.M.Movilla Valoración +2
Predeterminado

Oye, maja: Yo, siguiendo tus instrucciones, selecciono "GENERALIDADES" - "Prolegómenos", introduzco la palabra "amigo", pulso [Buscar] y me aparece el resultado que muestro en el gráfico adjunto. Supongo que es lo que se pretende, ¿no?.

Ya te he indicado que he corregido sólo esa parte que tú pedías, pero que me temo que vas a tener que revisar el código ampliamente, porque en un vistazo por encima da la impresión de que huele a "poco estable".
Imágenes Adjuntas
Tipo de Archivo: jpg amigo.jpg (114,9 KB, 23 visitas)
__________________
José María Movilla Cuadrado
______________________

Visual Basic Videos Programacion Foro Programacion
Tutoriales Programacion Trucos Programacion Codigos Programacion
Responder Con Cita
Respuesta


Herramientas
Desplegado

Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Trackbacks are habilitado
Pingbacks are habilitado
Refbacks are habilitado


Temas Similares
Tema Autor Foro Respuestas Último Mensaje
Muchos mas tutoriales imported_chiaravel Anuncios & Novedades 0 17-05-2006 17:11:19
19 de Setiembre Cumplimos 2 años con muchos regalos. imported_chiaravel Anuncios & Novedades 66 19-09-2005 23:50:53
Tengo un "programa" hecho en excel ChuckyAr VBA (Excel, Word, Outlook, Access) 6 12-03-2005 00:07:13
Errores csic17 Visual Basic 6.00 2 10-01-2005 17:52:34
ejecucion lenta con muchos registros ainatit Crystal Reports 7 17-09-2004 01:00:00


La franja horaria es GMT. Ahora son las 04:38:55.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO 3.1.0
A vBSkinworks Design

Alojado en el servicio Premium de Masquewebs | Diseño mejorado por MasqueWebs

right