Ciclo con Transpose

22/08/2009 - 02:21 por sebastico | Informe spam
Hola

En Excel 2003, tengo una hoja con datos string con el siguiente Rango A2:02
hasta A632:O632. Necesito hacer un ciclo con el siguiente código:

Range("A2:O2").Select
Selection.Copy
Sheets("Sheet2").Select
Range("A1").Select
Selection.PasteSpecial Paste:=xlPasteAll, Operation:=xlNone,
SkipBlanks:= _
False, Transpose:=True

Range("A3:O3").Select
Selection.Copy
Sheets("Sheet2").Select
Range("A19").Select
Selection.PasteSpecial Paste:=xlPasteAll, Operation:=xlNone,
SkipBlanks:= _
False, Transpose:=True

Range("A4:O4").Select
Selection.Copy
Sheets("Sheet2").Select
Range("A37").Select
Selection.PasteSpecial Paste:=xlPasteAll, Operation:=xlNone,
SkipBlanks:= _
False, Transpose:=True

Y asi hasta A632:0632

Muchas gracias

Preguntas similare

Leer las respuestas

#1 Héctor Miguel
22/08/2009 - 09:29 | Informe spam
hola, !

En Excel 2003, tengo una hoja con datos string con el siguiente Rango A2:02 hasta A632:O632.
Necesito hacer un ciclo con el siguiente codigo:



1) que tan indispensable/... es "copiar"...
- con un "pastespecial" de => xlPasteAll (formulas, formatos, etc. ???)
- pudiera ser un "simple" pegado de valores (NO formulas, formatos, etc. ???)

2) el Sheets("sheet2") es una hoja diferente de donde estan los datos "originales" ?
(cual seria en este caso la hoja con los datos ???)

saludos,
hector.

__ el codigo expuesto __
Range("A2:O2").Select
Selection.Copy
Sheets("Sheet2").Select
Range("A1").Select
Selection.PasteSpecial Paste:=xlPasteAll, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=True
Range("A3:O3").Select
Selection.Copy
Sheets("Sheet2").Select
Range("A19").Select
Selection.PasteSpecial Paste:=xlPasteAll, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=True
Range("A4:O4").Select
Selection.Copy
Sheets("Sheet2").Select
Range("A37").Select
Selection.PasteSpecial Paste:=xlPasteAll, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=True

Y asi hasta A632:0632
Respuesta Responder a este mensaje
#2 pepe
22/08/2009 - 12:34 | Informe spam
en estos casos es más fácil utilizar la notación fila y columna.



"sebastico" escribió en el mensaje de
noticias news:
Hola

En Excel 2003, tengo una hoja con datos string con el siguiente Rango
A2:02
hasta A632:O632. Necesito hacer un ciclo con el siguiente código:

Range("A2:O2").Select
Selection.Copy
Sheets("Sheet2").Select
Range("A1").Select
Selection.PasteSpecial Paste:=xlPasteAll, Operation:=xlNone,
SkipBlanks:= _
False, Transpose:=True

Range("A3:O3").Select
Selection.Copy
Sheets("Sheet2").Select
Range("A19").Select
Selection.PasteSpecial Paste:=xlPasteAll, Operation:=xlNone,
SkipBlanks:= _
False, Transpose:=True

Range("A4:O4").Select
Selection.Copy
Sheets("Sheet2").Select
Range("A37").Select
Selection.PasteSpecial Paste:=xlPasteAll, Operation:=xlNone,
SkipBlanks:= _
False, Transpose:=True

Y asi hasta A632:0632

Muchas gracias

Respuesta Responder a este mensaje
#3 sebastico
22/08/2009 - 13:37 | Informe spam
Gracias Hector Miguel

Bueno puse "copiar" pues es el codigo que conozco pero si lo que deseo se
puede hacer con el que sugieres esta bien.

Los datos a trabajar están en Sheet1 y se deben pasar a Sheet2.

Podrías ayudarme a escribir el código que hace la operación que sugieres,

Salu2

"Héctor Miguel" wrote:

hola, !

> En Excel 2003, tengo una hoja con datos string con el siguiente Rango A2:02 hasta A632:O632.
> Necesito hacer un ciclo con el siguiente codigo:

1) que tan indispensable/... es "copiar"...
- con un "pastespecial" de => xlPasteAll (formulas, formatos, etc. ???)
- pudiera ser un "simple" pegado de valores (NO formulas, formatos, etc. ???)

2) el Sheets("sheet2") es una hoja diferente de donde estan los datos "originales" ?
(cual seria en este caso la hoja con los datos ???)

saludos,
hector.

__ el codigo expuesto __
> Range("A2:O2").Select
> Selection.Copy
> Sheets("Sheet2").Select
> Range("A1").Select
> Selection.PasteSpecial Paste:=xlPasteAll, Operation:=xlNone, SkipBlanks:= _
> False, Transpose:=True
> Range("A3:O3").Select
> Selection.Copy
> Sheets("Sheet2").Select
> Range("A19").Select
> Selection.PasteSpecial Paste:=xlPasteAll, Operation:=xlNone, SkipBlanks:= _
> False, Transpose:=True
> Range("A4:O4").Select
> Selection.Copy
> Sheets("Sheet2").Select
> Range("A37").Select
> Selection.PasteSpecial Paste:=xlPasteAll, Operation:=xlNone, SkipBlanks:= _
> False, Transpose:=True
>
> Y asi hasta A632:0632



Respuesta Responder a este mensaje
#4 sebastico
22/08/2009 - 13:38 | Informe spam
Hola Pepe
¿Cómo se escribe lo que sugieres en código?
Gracias

"pepe" wrote:

en estos casos es más fácil utilizar la notación fila y columna.



"sebastico" escribió en el mensaje de
noticias news:
> Hola
>
> En Excel 2003, tengo una hoja con datos string con el siguiente Rango
> A2:02
> hasta A632:O632. Necesito hacer un ciclo con el siguiente código:
>
> Range("A2:O2").Select
> Selection.Copy
> Sheets("Sheet2").Select
> Range("A1").Select
> Selection.PasteSpecial Paste:=xlPasteAll, Operation:=xlNone,
> SkipBlanks:= _
> False, Transpose:=True
>
> Range("A3:O3").Select
> Selection.Copy
> Sheets("Sheet2").Select
> Range("A19").Select
> Selection.PasteSpecial Paste:=xlPasteAll, Operation:=xlNone,
> SkipBlanks:= _
> False, Transpose:=True
>
> Range("A4:O4").Select
> Selection.Copy
> Sheets("Sheet2").Select
> Range("A37").Select
> Selection.PasteSpecial Paste:=xlPasteAll, Operation:=xlNone,
> SkipBlanks:= _
> False, Transpose:=True
>
> Y asi hasta A632:0632
>
> Muchas gracias
>

Respuesta Responder a este mensaje
#5 pepe
22/08/2009 - 21:09 | Informe spam
Más o menos algo así:

for Row1 = 2 to 632
For col 1 = 1 to 15
Dato= worksheets("Hoja1").Cells(row1,col1)
Row2 = col1
col2 = row1
worksheets("Hoja2").Cells(row2,col2) = Dato
next
next


Espero que texngas excel 2007 porque de lo contrario te quedarás sin
columnas.






"sebastico" escribió en el mensaje de
noticias news:
Hola Pepe
¿Cómo se escribe lo que sugieres en código?
Gracias

"pepe" wrote:

en estos casos es más fácil utilizar la notación fila y columna.



"sebastico" escribió en el mensaje
de
noticias news:
> Hola
>
> En Excel 2003, tengo una hoja con datos string con el siguiente Rango
> A2:02
> hasta A632:O632. Necesito hacer un ciclo con el siguiente código:
>
> Range("A2:O2").Select
> Selection.Copy
> Sheets("Sheet2").Select
> Range("A1").Select
> Selection.PasteSpecial Paste:=xlPasteAll, Operation:=xlNone,
> SkipBlanks:= _
> False, Transpose:=True
>
> Range("A3:O3").Select
> Selection.Copy
> Sheets("Sheet2").Select
> Range("A19").Select
> Selection.PasteSpecial Paste:=xlPasteAll, Operation:=xlNone,
> SkipBlanks:= _
> False, Transpose:=True
>
> Range("A4:O4").Select
> Selection.Copy
> Sheets("Sheet2").Select
> Range("A37").Select
> Selection.PasteSpecial Paste:=xlPasteAll, Operation:=xlNone,
> SkipBlanks:= _
> False, Transpose:=True
>
> Y asi hasta A632:0632
>
> Muchas gracias
>

Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaSiguiente Respuesta Tengo una respuesta
Search Busqueda sugerida