AYUDA CON MACRO

26/04/2007 - 01:46 por LUIS DANNY SALAS | Informe spam
Hola gracias a todos, tengo en realidad una duda:

Que instruccion debo poner en una macro para que seleccion y copie solo las
celdas que tienen valores en un determinado rango? y que las que tiene valor
cero o en blanco no las copie.
gracias

Preguntas similare

Leer las respuestas

#1 Insumos
26/04/2007 - 00:37 | Informe spam
Hola Luis:

No se bien en que contexto estas utilizando la macro y con que rango, pero
calculo que debes usar un condicional del tipo:
If celda = "" Then celda.Copy
o sino
If celda = Empty Then celda.Copy
o sino
Select Case celda
Case Is = ""
celda.Copy
End Select

Si lo que quieres es que funcione en un rango, puede ser algo como:
Dim celda As Range
For Each celda In .Range("A1:A20")
If celda = "" Then celda.Copy
Next

Espero te haya servido!!
Saludos


"LUIS DANNY SALAS" escribió en el mensaje
news:OcPW$
Mostrar la cita
las
Mostrar la cita
valor
Mostrar la cita
#2 LUIS DANNY SALAS
26/04/2007 - 21:34 | Informe spam
Trate y me da errores, no se como hacerlo la verdad, lo que quiero es que
la macro solo seleccione(y luego copie) las celdas que tienen valores
diferentes de cero en un rango determinado asi:


A1 2
A2 3
A3 4
A4 5
A5 0
A6

la idea es que en el rango( A1:A6) solo seleccione las celdas de la A1 a la
A5 ( que son las que tienen datos ) las copie y luego las pueda yo pegar en
cualquier otra parte, te agradezco si me pueden ayudar con las instrccuines
concretas en un ejemplo particular.
muchas gracias.



"Insumos" wrote in message
news:
Mostrar la cita
#3 Insumos
26/04/2007 - 23:40 | Informe spam
Hola Luis:

Es esto lo que quieres (según los datos de tu ejemplo) ? Acordate de
reemplazar Hoja1 por el nombre de TU hoja de trabajo.

Sub copiar()

Dim celda As Range

With Worksheets("Hoja1")
If .[A1] <> "" Then
For Each celda In .Range("A1:A" & .[A65536].End(xlUp).Row)
If celda <> "" Then
celda.Copy
ActiveCell.PasteSpecial xlPasteAll
ActiveCell.Offset(1, 0).Activate
End If
Next
End If
End With

End Sub

Saludos!!


"LUIS DANNY SALAS" escribió en el mensaje
news:
Mostrar la cita
la
Mostrar la cita
en
Mostrar la cita
instrccuines
Mostrar la cita
pero
Mostrar la cita
solo
Mostrar la cita
#4 LUIS DANNY SALAS
30/04/2007 - 23:40 | Informe spam
MUCHAS GRACIAS ! me sirvio mucho, sin embargo a la hora de pegar se me
presento otro problema:
debo pegar esos valores en unas celdas que previamente han sido filtradas,
me explico:

tengo una base de datos con el numero de carnet el nivel y la seccion de
todos los estudiantes del colegio, la macro debe filtrar a los estudiantes
de cierto nivel y cierta seccion, hasta ahi no hay problema

por ejemplo necesito que filtre la lista de la seccion 10- A
al darle filtrar me aparece la lista asi:

A B C D E
1 carnet nivel seccion nota
94 204020 10 A
95 203920 10 A
96 209290 10 A
97 290902 10 A

las filas entre A1 y A94 fueron ocultadas ya que contienen estudiantes de
otra seccion, lo que yo necesito es que la macro tenga la instruccion de
irse a la celda E 94 para que pegue los valores de las notas, pero no puedo
usar la instruccion : Range("E94").Select por que cuando sea otra lista la
que haya filtrado por decir cualquier cosa : la seccion 10 - B la primer
celda filtrada de la lista no sea la E94 si no cualquier otra,
lo que necesito es una instruccion que le indique a la macro irse a la
primer celda de la lista filtrada y que en este ejemplo reconozca que es la
E94 pero que si fuera otra lista que igual reconozca la primer celda de esa
lista filtrada para poder pegar ahi la columna de notas de esa seccion.
Muchisimas gracias estare eternamente agradecido si alguien puede brindarme
ayuda.





"Insumos" wrote in message
news:
Mostrar la cita
que
Mostrar la cita
tiene
Mostrar la cita
#5 Insumos
03/05/2007 - 01:55 | Informe spam
Hola Luis:

No entiendo bien el problema, ya que la macro pega las celdas que copia a
partir de la celda activa, asi que (si entendí bien) el problema se
solucionaría (en el caso del ejemplo que das) si PRIMERO te posicionas en la
celda E94 y LUEGO ejecutas la macro.
Saludos!!

"LUIS DANNY SALAS" escribió en el mensaje
news:#KFRD$
Mostrar la cita
de
Mostrar la cita
puedo
Mostrar la cita
la
Mostrar la cita
la
Mostrar la cita
esa
Mostrar la cita
brindarme
Mostrar la cita
a
Mostrar la cita
pegar
Mostrar la cita
rango,
Mostrar la cita
Ads by Google
Search Busqueda sugerida