Reply
 
LinkBack Thread Tools Search this Thread Display Modes
  #1   Report Post  
Posted to microsoft.public.excel.misc
external usenet poster
 
Posts: 144
Default copying some rows and columns

Hi all,

Of sheet 1, rows 2 tot 252 and columns A to AR I want to copy

columns A to C to sheet 2 colums A to C rows 2 and further,
column D to sheet 2 colum N rows 2 and further,
column AA to sheet 2 column O rows 2 and further,
columns AK and AL to sheet 2 colums D and E rows 2 and further,
column AM to sheet 2 column G rows 2 and further,
column AN to sheet 2 column F rows 2 and further,
column AO to sheet 2 column J rows 2 and further,
column AP to sheet 2 column H rows 2 and further,
column AR to sheet 2 column I rows 2 and further,

and all that only for those rows where in column DM is not an "x".
Formats, text colors and interior colors are also to be copied.

Due to clumsy code (sorry for that) I can't change the order of the columns
in sheet 1 without getting an awful lot of trouble.

I'm looking for nice compact and fast executing code, your assistance will
be appreciated.

Jack Sons
The Netherlands



  #2   Report Post  
Posted to microsoft.public.excel.misc
external usenet poster
 
Posts: 1,533
Default copying some rows and columns

Hi

I think this is what you need:

Sub aaa()
Dim TargetSh As Worksheet
Dim DestSh As Worksheet
Dim LastRow As Long

Application.ScreenUpdating = False
Set TargetSh = Worksheets("Sheet1")
Set DestSh = Worksheets("Sheet2")
LastRow = 252
With TargetSh
.Range("DM1:DM" & LastRow).AutoFilter field:=1, Criteria1:="<x"
.Range("A2:C" & LastRow).SpecialCells(xlCellTypeVisible).Copy
DestSh.Range("A2")
.Range("D2:D" & LastRow).SpecialCells(xlCellTypeVisible).Copy
DestSh.Range("N2")
.Range("AA2:AA" & LastRow).SpecialCells(xlCellTypeVisible).Copy
DestSh.Range("O2")
.Range("AK2:AL" & LastRow).SpecialCells(xlCellTypeVisible).Copy
DestSh.Range("D2")
.Range("AM2:AM" & LastRow).SpecialCells(xlCellTypeVisible).Copy
DestSh.Range("G2")
.Range("AN2:AN" & LastRow).SpecialCells(xlCellTypeVisible).Copy
DestSh.Range("F2")
.Range("AO2:AO" & LastRow).SpecialCells(xlCellTypeVisible).Copy
DestSh.Range("J2")
.Range("AP2:AP" & LastRow).SpecialCells(xlCellTypeVisible).Copy
DestSh.Range("H2")
.Range("AR2:AR" & LastRow).SpecialCells(xlCellTypeVisible).Copy
DestSh.Range("I2")
.Range("DM1:DM" & LastRow).AutoFilter
End With
Application.ScreenUpdating = True
End Sub

Regards,
Per

"Jack Sons" skrev i meddelelsen
...
Hi all,

Of sheet 1, rows 2 tot 252 and columns A to AR I want to copy

columns A to C to sheet 2 colums A to C rows 2 and further,
column D to sheet 2 colum N rows 2 and further,
column AA to sheet 2 column O rows 2 and further,
columns AK and AL to sheet 2 colums D and E rows 2 and further,
column AM to sheet 2 column G rows 2 and further,
column AN to sheet 2 column F rows 2 and further,
column AO to sheet 2 column J rows 2 and further,
column AP to sheet 2 column H rows 2 and further,
column AR to sheet 2 column I rows 2 and further,

and all that only for those rows where in column DM is not an "x".
Formats, text colors and interior colors are also to be copied.

Due to clumsy code (sorry for that) I can't change the order of the
columns in sheet 1 without getting an awful lot of trouble.

I'm looking for nice compact and fast executing code, your assistance will
be appreciated.

Jack Sons
The Netherlands




  #3   Report Post  
Posted to microsoft.public.excel.misc
external usenet poster
 
Posts: 144
Default copying some rows and columns

Per,

Thank you. So much of my own clumsy code I can now discard! I really learned
a thing or two (or more)!

What if I also want to bring the cells in row 1 of the columns mentioned to
the destination sheet and I do not want the textboxes that exist in row 1 of
the targetsheet to be copied to the destination sheet?

Jack.

"Per Jessen" schreef in bericht
...
Hi

I think this is what you need:

Sub aaa()
Dim TargetSh As Worksheet
Dim DestSh As Worksheet
Dim LastRow As Long

Application.ScreenUpdating = False
Set TargetSh = Worksheets("Sheet1")
Set DestSh = Worksheets("Sheet2")
LastRow = 252
With TargetSh
.Range("DM1:DM" & LastRow).AutoFilter field:=1, Criteria1:="<x"
.Range("A2:C" & LastRow).SpecialCells(xlCellTypeVisible).Copy
DestSh.Range("A2")
.Range("D2:D" & LastRow).SpecialCells(xlCellTypeVisible).Copy
DestSh.Range("N2")
.Range("AA2:AA" & LastRow).SpecialCells(xlCellTypeVisible).Copy
DestSh.Range("O2")
.Range("AK2:AL" & LastRow).SpecialCells(xlCellTypeVisible).Copy
DestSh.Range("D2")
.Range("AM2:AM" & LastRow).SpecialCells(xlCellTypeVisible).Copy
DestSh.Range("G2")
.Range("AN2:AN" & LastRow).SpecialCells(xlCellTypeVisible).Copy
DestSh.Range("F2")
.Range("AO2:AO" & LastRow).SpecialCells(xlCellTypeVisible).Copy
DestSh.Range("J2")
.Range("AP2:AP" & LastRow).SpecialCells(xlCellTypeVisible).Copy
DestSh.Range("H2")
.Range("AR2:AR" & LastRow).SpecialCells(xlCellTypeVisible).Copy
DestSh.Range("I2")
.Range("DM1:DM" & LastRow).AutoFilter
End With
Application.ScreenUpdating = True
End Sub

Regards,
Per

"Jack Sons" skrev i meddelelsen
...
Hi all,

Of sheet 1, rows 2 tot 252 and columns A to AR I want to copy

columns A to C to sheet 2 colums A to C rows 2 and further,
column D to sheet 2 colum N rows 2 and further,
column AA to sheet 2 column O rows 2 and further,
columns AK and AL to sheet 2 colums D and E rows 2 and further,
column AM to sheet 2 column G rows 2 and further,
column AN to sheet 2 column F rows 2 and further,
column AO to sheet 2 column J rows 2 and further,
column AP to sheet 2 column H rows 2 and further,
column AR to sheet 2 column I rows 2 and further,

and all that only for those rows where in column DM is not an "x".
Formats, text colors and interior colors are also to be copied.

Due to clumsy code (sorry for that) I can't change the order of the
columns in sheet 1 without getting an awful lot of trouble.

I'm looking for nice compact and fast executing code, your assistance
will be appreciated.

Jack Sons
The Netherlands






  #4   Report Post  
Posted to microsoft.public.excel.misc
external usenet poster
 
Posts: 1,533
Default copying some rows and columns

Jack,

I am glad you learned a bit from my code.

If you change the code to copy row 1 also and paste starting in row 1, the
textbox will not be copied, neither will the content of the textbox.

You can place the content of the textbox in the underlying cell. To do that,
enter design mode, and right click a textbox Properties Find LinkedCell
property, and enter the cell address, eg. A1, then you just change the code
to copy/paste starting at row 1

.Range("A1:C" & LastRow).SpecialCells(xlCellTypeVisible).Copy
DestSh.Range("A1")

Hopes this helps.
....
Per

"Jack Sons" skrev i meddelelsen
...
Per,

Thank you. So much of my own clumsy code I can now discard! I really
learned a thing or two (or more)!

What if I also want to bring the cells in row 1 of the columns mentioned
to the destination sheet and I do not want the textboxes that exist in row
1 of the targetsheet to be copied to the destination sheet?

Jack.

"Per Jessen" schreef in bericht
...
Hi

I think this is what you need:

Sub aaa()
Dim TargetSh As Worksheet
Dim DestSh As Worksheet
Dim LastRow As Long

Application.ScreenUpdating = False
Set TargetSh = Worksheets("Sheet1")
Set DestSh = Worksheets("Sheet2")
LastRow = 252
With TargetSh
.Range("DM1:DM" & LastRow).AutoFilter field:=1, Criteria1:="<x"
.Range("A2:C" & LastRow).SpecialCells(xlCellTypeVisible).Copy
DestSh.Range("A2")
.Range("D2:D" & LastRow).SpecialCells(xlCellTypeVisible).Copy
DestSh.Range("N2")
.Range("AA2:AA" & LastRow).SpecialCells(xlCellTypeVisible).Copy
DestSh.Range("O2")
.Range("AK2:AL" & LastRow).SpecialCells(xlCellTypeVisible).Copy
DestSh.Range("D2")
.Range("AM2:AM" & LastRow).SpecialCells(xlCellTypeVisible).Copy
DestSh.Range("G2")
.Range("AN2:AN" & LastRow).SpecialCells(xlCellTypeVisible).Copy
DestSh.Range("F2")
.Range("AO2:AO" & LastRow).SpecialCells(xlCellTypeVisible).Copy
DestSh.Range("J2")
.Range("AP2:AP" & LastRow).SpecialCells(xlCellTypeVisible).Copy
DestSh.Range("H2")
.Range("AR2:AR" & LastRow).SpecialCells(xlCellTypeVisible).Copy
DestSh.Range("I2")
.Range("DM1:DM" & LastRow).AutoFilter
End With
Application.ScreenUpdating = True
End Sub

Regards,
Per

"Jack Sons" skrev i meddelelsen
...
Hi all,

Of sheet 1, rows 2 tot 252 and columns A to AR I want to copy

columns A to C to sheet 2 colums A to C rows 2 and further,
column D to sheet 2 colum N rows 2 and further,
column AA to sheet 2 column O rows 2 and further,
columns AK and AL to sheet 2 colums D and E rows 2 and further,
column AM to sheet 2 column G rows 2 and further,
column AN to sheet 2 column F rows 2 and further,
column AO to sheet 2 column J rows 2 and further,
column AP to sheet 2 column H rows 2 and further,
column AR to sheet 2 column I rows 2 and further,

and all that only for those rows where in column DM is not an "x".
Formats, text colors and interior colors are also to be copied.

Due to clumsy code (sorry for that) I can't change the order of the
columns in sheet 1 without getting an awful lot of trouble.

I'm looking for nice compact and fast executing code, your assistance
will be appreciated.

Jack Sons
The Netherlands







  #5   Report Post  
Posted to microsoft.public.excel.misc
external usenet poster
 
Posts: 144
Default copying some rows and columns

Per,

If you change the code to copy row 1 also and paste starting in row 1


I did this

With TargetSh
.Range("DM1:DM" & eindrij).AutoFilter field:=1, Criteria1:="<x"
.Range("A1:C" & eindrij).SpecialCells(xlCellTypeVisible).Copy
DestSh.Range("A1")
.Range("F1:F" & eindrij).SpecialCells(xlCellTypeVisible).Copy
DestSh.Range("N1")
.Range("AA1:AA" & eindrij).SpecialCells(xlCellTypeVisible).Copy
DestSh.Range("O1")
...
.Range("DM1:DM" & eindrij).AutoFilter
End With

but then the text boxes come with the cells of row 1 of TargetSh.
I got rid of them with

DestSh.Shapes("resteert").Select
Selection.Delete
DestSh.Shapes("betaald").Select
Selection.Delete
DestSh.Shapes("legenda_1").Select
Selection.Delete
DestSh.Shapes("L").Select
Selection.Delete

which is rather clumsy, I'm afraid (better: I'm sure).

What now?

Jack.

"Per Jessen" schreef in bericht
...
Jack,

I am glad you learned a bit from my code.

If you change the code to copy row 1 also and paste starting in row 1, the
textbox will not be copied, neither will the content of the textbox.

You can place the content of the textbox in the underlying cell. To do
that, enter design mode, and right click a textbox Properties Find
LinkedCell property, and enter the cell address, eg. A1, then you just
change the code to copy/paste starting at row 1

.Range("A1:C" & LastRow).SpecialCells(xlCellTypeVisible).Copy
DestSh.Range("A1")

Hopes this helps.
...
Per

"Jack Sons" skrev i meddelelsen
...
Per,

Thank you. So much of my own clumsy code I can now discard! I really
learned a thing or two (or more)!

What if I also want to bring the cells in row 1 of the columns mentioned
to the destination sheet and I do not want the textboxes that exist in
row 1 of the targetsheet to be copied to the destination sheet?

Jack.

"Per Jessen" schreef in bericht
...
Hi

I think this is what you need:

Sub aaa()
Dim TargetSh As Worksheet
Dim DestSh As Worksheet
Dim LastRow As Long

Application.ScreenUpdating = False
Set TargetSh = Worksheets("Sheet1")
Set DestSh = Worksheets("Sheet2")
LastRow = 252
With TargetSh
.Range("DM1:DM" & LastRow).AutoFilter field:=1, Criteria1:="<x"
.Range("A2:C" & LastRow).SpecialCells(xlCellTypeVisible).Copy
DestSh.Range("A2")
.Range("D2:D" & LastRow).SpecialCells(xlCellTypeVisible).Copy
DestSh.Range("N2")
.Range("AA2:AA" & LastRow).SpecialCells(xlCellTypeVisible).Copy
DestSh.Range("O2")
.Range("AK2:AL" & LastRow).SpecialCells(xlCellTypeVisible).Copy
DestSh.Range("D2")
.Range("AM2:AM" & LastRow).SpecialCells(xlCellTypeVisible).Copy
DestSh.Range("G2")
.Range("AN2:AN" & LastRow).SpecialCells(xlCellTypeVisible).Copy
DestSh.Range("F2")
.Range("AO2:AO" & LastRow).SpecialCells(xlCellTypeVisible).Copy
DestSh.Range("J2")
.Range("AP2:AP" & LastRow).SpecialCells(xlCellTypeVisible).Copy
DestSh.Range("H2")
.Range("AR2:AR" & LastRow).SpecialCells(xlCellTypeVisible).Copy
DestSh.Range("I2")
.Range("DM1:DM" & LastRow).AutoFilter
End With
Application.ScreenUpdating = True
End Sub

Regards,
Per

"Jack Sons" skrev i meddelelsen
...
Hi all,

Of sheet 1, rows 2 tot 252 and columns A to AR I want to copy

columns A to C to sheet 2 colums A to C rows 2 and further,
column D to sheet 2 colum N rows 2 and further,
column AA to sheet 2 column O rows 2 and further,
columns AK and AL to sheet 2 colums D and E rows 2 and further,
column AM to sheet 2 column G rows 2 and further,
column AN to sheet 2 column F rows 2 and further,
column AO to sheet 2 column J rows 2 and further,
column AP to sheet 2 column H rows 2 and further,
column AR to sheet 2 column I rows 2 and further,

and all that only for those rows where in column DM is not an "x".
Formats, text colors and interior colors are also to be copied.

Due to clumsy code (sorry for that) I can't change the order of the
columns in sheet 1 without getting an awful lot of trouble.

I'm looking for nice compact and fast executing code, your assistance
will be appreciated.

Jack Sons
The Netherlands











  #6   Report Post  
Posted to microsoft.public.excel.misc
external usenet poster
 
Posts: 1,533
Default copying some rows and columns

Jack,

You are close, but no need to select the shapes:

DestSh.Shapes("resteert").Delete
DestSh.Shapes("betaald").Delete
DestSh.Shapes("legenda_1").Delete
DestSh.Shapes("L").Delete

Per


"Jack Sons" skrev i meddelelsen
...
Per,

If you change the code to copy row 1 also and paste starting in row 1


I did this

With TargetSh
.Range("DM1:DM" & eindrij).AutoFilter field:=1, Criteria1:="<x"
.Range("A1:C" & eindrij).SpecialCells(xlCellTypeVisible).Copy
DestSh.Range("A1")
.Range("F1:F" & eindrij).SpecialCells(xlCellTypeVisible).Copy
DestSh.Range("N1")
.Range("AA1:AA" & eindrij).SpecialCells(xlCellTypeVisible).Copy
DestSh.Range("O1")
...
.Range("DM1:DM" & eindrij).AutoFilter
End With

but then the text boxes come with the cells of row 1 of TargetSh.
I got rid of them with

DestSh.Shapes("resteert").Select
Selection.Delete
DestSh.Shapes("betaald").Select
Selection.Delete
DestSh.Shapes("legenda_1").Select
Selection.Delete
DestSh.Shapes("L").Select
Selection.Delete

which is rather clumsy, I'm afraid (better: I'm sure).

What now?

Jack.

"Per Jessen" schreef in bericht
...
Jack,

I am glad you learned a bit from my code.

If you change the code to copy row 1 also and paste starting in row 1,
the textbox will not be copied, neither will the content of the textbox.

You can place the content of the textbox in the underlying cell. To do
that, enter design mode, and right click a textbox Properties Find
LinkedCell property, and enter the cell address, eg. A1, then you just
change the code to copy/paste starting at row 1

.Range("A1:C" & LastRow).SpecialCells(xlCellTypeVisible).Copy
DestSh.Range("A1")

Hopes this helps.
...
Per

"Jack Sons" skrev i meddelelsen
...
Per,

Thank you. So much of my own clumsy code I can now discard! I really
learned a thing or two (or more)!

What if I also want to bring the cells in row 1 of the columns mentioned
to the destination sheet and I do not want the textboxes that exist in
row 1 of the targetsheet to be copied to the destination sheet?

Jack.

"Per Jessen" schreef in bericht
...
Hi

I think this is what you need:

Sub aaa()
Dim TargetSh As Worksheet
Dim DestSh As Worksheet
Dim LastRow As Long

Application.ScreenUpdating = False
Set TargetSh = Worksheets("Sheet1")
Set DestSh = Worksheets("Sheet2")
LastRow = 252
With TargetSh
.Range("DM1:DM" & LastRow).AutoFilter field:=1, Criteria1:="<x"
.Range("A2:C" & LastRow).SpecialCells(xlCellTypeVisible).Copy
DestSh.Range("A2")
.Range("D2:D" & LastRow).SpecialCells(xlCellTypeVisible).Copy
DestSh.Range("N2")
.Range("AA2:AA" & LastRow).SpecialCells(xlCellTypeVisible).Copy
DestSh.Range("O2")
.Range("AK2:AL" & LastRow).SpecialCells(xlCellTypeVisible).Copy
DestSh.Range("D2")
.Range("AM2:AM" & LastRow).SpecialCells(xlCellTypeVisible).Copy
DestSh.Range("G2")
.Range("AN2:AN" & LastRow).SpecialCells(xlCellTypeVisible).Copy
DestSh.Range("F2")
.Range("AO2:AO" & LastRow).SpecialCells(xlCellTypeVisible).Copy
DestSh.Range("J2")
.Range("AP2:AP" & LastRow).SpecialCells(xlCellTypeVisible).Copy
DestSh.Range("H2")
.Range("AR2:AR" & LastRow).SpecialCells(xlCellTypeVisible).Copy
DestSh.Range("I2")
.Range("DM1:DM" & LastRow).AutoFilter
End With
Application.ScreenUpdating = True
End Sub

Regards,
Per

"Jack Sons" skrev i meddelelsen
...
Hi all,

Of sheet 1, rows 2 tot 252 and columns A to AR I want to copy

columns A to C to sheet 2 colums A to C rows 2 and further,
column D to sheet 2 colum N rows 2 and further,
column AA to sheet 2 column O rows 2 and further,
columns AK and AL to sheet 2 colums D and E rows 2 and further,
column AM to sheet 2 column G rows 2 and further,
column AN to sheet 2 column F rows 2 and further,
column AO to sheet 2 column J rows 2 and further,
column AP to sheet 2 column H rows 2 and further,
column AR to sheet 2 column I rows 2 and further,

and all that only for those rows where in column DM is not an "x".
Formats, text colors and interior colors are also to be copied.

Due to clumsy code (sorry for that) I can't change the order of the
columns in sheet 1 without getting an awful lot of trouble.

I'm looking for nice compact and fast executing code, your assistance
will be appreciated.

Jack Sons
The Netherlands










Reply
Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules

Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On


Similar Threads
Thread Thread Starter Forum Replies Last Post
copying multiple rows to columns calvin Excel Discussion (Misc queries) 1 January 24th 09 12:07 AM
Copying Columns of Data to Rows Walter Excel Discussion (Misc queries) 3 May 30th 07 05:01 PM
copying information from rows to columns ked Excel Discussion (Misc queries) 7 January 12th 07 03:03 PM
Copying data from one worksheet to another from rows to columns ked Excel Worksheet Functions 0 January 11th 07 06:21 PM
Copying from columns to Rows scottsman78 Excel Discussion (Misc queries) 5 October 4th 05 04:46 PM


All times are GMT +1. The time now is 06:51 AM.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Copyright ©2004-2024 ExcelBanter.
The comments are property of their posters.
 

About Us

"It's about Microsoft Excel"