2012-02-05 10 views
6

Quello che voglio è copiare il contenuto di un'intera riga e la formattazione su un altro foglio.Copia un contenuto di righe e la formattazione (su un altro foglio)

Al momento mi sono dovuto accontentare di impostare il contenuto delle vecchie celle sul nuovo contenuto delle celle e nel fare ciò copia solo il contenuto e non la formattazione. (Mie cellule hanno colori diversi che devono essere effettuate in tutta)

Al momento ho il seguente: (questo funziona bene per le cellule nello stesso foglio)

Range(Cells(45, 2), Cells(45, 3)).Copy Range(Cells(50, 2), Cells(50, 3)) 

Tuttavia, sto cercando di fallo da un foglio all'altro. (Copia dal foglio 'Front_Page' a 'vg'). Ho provato a usare il seguente, ovviamente non funziona, ma qualcuno può dirmi per favore cosa sto facendo di sbagliato?

Range.Worksheet("Front_Page").Range(Cells(45, 2), Cells(45, 3)).Copy Worksheet("vg").Range(Cells(50, 2), Cells(50, 3)) 

risposta

0

Cells si riferisce a celle di foglio attivo. Quindi ottieni l'errore: vg non è il foglio attivo. La specifica di celle di un altro foglio come parametri dell'oggetto Range genera sempre un errore. Ciò funzionerà:

Worksheets("Front_Page").Range(Worksheets("Front_Page").Cells(45, 2), Worksheets("Front_Page").Cells(45, 3)).Copy Worksheets("vg").Range(Worksheets("vg").Cells(50, 2), Worksheets("vg").Cells(50, 3)) 

Tuttavia, può essere ottimizzato per solo:

Worksheets("Front_Page").Range("B45:C45").Copy Worksheets("vg").Range("B50:C50") 

Inoltre, si noti che Worksheet("vg") non funziona, si dovrebbe essere sostituito conWorksheets("vg") altrimenti causerà anche l'errore

Per copiare fila intera, uso:

Worksheets("Front_Page").Rows("45:45").Copy Worksheets("vg").Rows("50:50") 
+0

Puoi anche usare fogli ("sheetName"). – peege

1

Sembra che si tenta di copiare le celle da "Front_Pages" a "vg" dal momento che si utilizza "celle" dentro "range"

Gamma (cellule ...).

In tal caso, è possibile modificare semplicemente il formato della cella come intervallo generale excel; prova questo codice:

Sheets("vg").Range("B5") = Sheets("Front_Pages").Range("B4") 
Sheets("vg").Range("C5") = Sheets("Front_Pages").Range("C4") 
Problemi correlati