How to copy a range of cells and paste into a new workbook in differentcolumns

M

Mas

Hi all,

I have created a macro that copies and a number of columns and pastes
them in a new workbook in a variety of columns but the macro look
unprofessional as it flickers between copying column A and paste in
column A of the new workbook, copy column C and paste in column B, etc.

I would like to copy a range i.e. column A, C, D, F, G in the open
workbook and paste in a new workbook in columns A, B, F, G, H. without
all the flicker between workbooks etc.

Appreciate any help I can get.
 
P

Pete_UK

Put this line near the beginning of your macro:

Application.ScreenUpdating = False

and then after you have done all the copy/paste operations insert this
line near the end:

Application.ScreenUpdating = True

This will prevent the flicker as you switch between different sheets,
by not updating the screen display until you have finished. It will
also speed up your macro, though you might not notice this.

Hope this helps.

Pete
 
G

Gord

Not using "select" will speed things up also.

A recorded macro will give you this................

Columns("B:B").Select
Selection.Copy
Sheets("Sheet6").Select
Range("C1").Select
ActiveSheet.Paste

The equivalent is this with no screen flicker......................

Columns("B:B").Copy Destination:=Sheets("Sheet6").Range("C1")


Gord Dibben Microsoft Excel MVP
 
G

Gord

Or this if all you need is values.

Sheets("Sheet6").Range("C:C").Value = _
Worksheets("Sheet1").Range("B:B").Value


Gord
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top