Visual Basic - AYUDA URGE

Life is soft - evento anual de software empresarial
 
Vista:

AYUDA URGE

Publicado por Gustavo (181 intervenciones) el 01/02/2005 02:31:35
ERROR '1004' EN TIEMPO DE EJECUCION:
FALLO EN EL MEODO SELECT DE LA CLASE 'RANGE'
HOJA.RANGE("A1:C12").SELECT
SELECTION.NUMBERFORMAT = "[$$-409]#,###.##;[Red][$$-409]#,###.##"
.
.
.
.
.
HOJA.RANGE("A255:C255").SELECT
SELECTION.NUMBERFORMAT = "[$$-409]#,###.##;[Red][$$-409]#,###.##"

SOLO PASA EN EL EVENTO SELECTION POR Q CUANDO MANDO LOS NOMBRES A LAS CELDAS
SIGUE NORMAL
HOJA.CELLS(1, 1).VALUE = "NOMBRE"
.
.
.
.
.
.
HOJA.CELLS(250, 1).VALUE = "NOMBRE" 'HASTA LA CELDA "A250"
Y CORRE SI NINGUN PROBLEMA

Y NO LO PUEDO HACER DE UN SOLO GOLPE POR Q DEPENDE DE LAS CELDAS EL
FORMATO QUE LLEVAN :-(

CREO Q SE SATURA LA MEMORIA Y POR ESO NO ME DEJA CONTINUAR ASI QUE ESPERO
QUE ME AYUDEN GRACIAS ADELANTADAS :-S
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:AYUDA URGE

Publicado por Benjo (679 intervenciones) el 01/02/2005 03:33:02
Gustavo, crear las macros con la grabadora de macros de Excel es muy buena idea , pero no todo es copiar y pegar
SELECT en Visual Basic no es nada, salvo que la utlices como condición o instrucción SQL
En Excel es interpretado, dado que hay una hoja de calculo en la que se está apoyando para determinar la Selección, pero en tu código, SELECT no es nada, tiene que depender de algún objeto si o si. y tiene que ser del tipo Worksheets.

Dim xlApp As Excel.Application
Dim xlWB As Excel.Workbook
Dim xlWS As Excel.Worksheet
Set xlApp = New Excel.Application
xlApp.Visible = True
Set xlWB = xlApp.Workbooks.Add
Set xlWS = xlWB.Worksheets.Add
xlWS.Range("A1:J255").Select
xlWS.Range("A1:J255").NumberFormat = "#,##0.00 [$€-40C];[Red]#,##0.00 [$€-40C]"
xlApp.Quit
Set xlWS = Nothing
Set xlWB = Nothing
Set xlApp = Nothing

Fijate que vos ponés que con
HOJA.CELLS(250, 1).VALUE = "NOMBRE" 'HASTA LA CELDA "A250"
No tenés ningún problema
Pues HOJA es el Objeto Worksheets que itilizas para instanciar una Hoja de Excel.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

otra ves yo

Publicado por gustavo (181 intervenciones) el 01/02/2005 04:16:02
ok benjo estoy de acuerdo contigo pero si utilizo eso q tu me dices
lo q pasa es que lo tengo dentro de un with y la verdad me da flojera copiarlo pero asi esta
with hoja
.Range("A1:J255").NumberFormat = "#,##0.00 [$€-40C];[Red]#,##0.00 [$€-40C]"
....
....
....
....
....
end with

ok lo q necesito es una sentencia para limpiar la memoria por q creo q se satura por la informacion q mando
gracias
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:otra ves yo

Publicado por Benjo (679 intervenciones) el 01/02/2005 04:25:54
Son muy pocos registros como para que se llene la mmeoria como mencionás, si estuviéramos hablando de 50.000 filas, bueno, entendería.
Que sucede si achicás el rango a digamos 45
Range("A1:J45").NumberFormat = "#,##0.00 [$€-40C];[Red]#,##0.00 [$€-40C]"
Y si lo haces sin el With, me han mencionado muchos problemas con la instrucción with

Espero que no tengas una 386 ;-) porque ese sería entonces el problema. Mañana lo seguimos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar