ExcelBanter

ExcelBanter (https://www.excelbanter.com/)
-   Excel Discussion (Misc queries) (https://www.excelbanter.com/excel-discussion-misc-queries/)
-   -   macro deletes wrong columns (https://www.excelbanter.com/excel-discussion-misc-queries/244690-macro-deletes-wrong-columns.html)

Wanna Learn

macro deletes wrong columns
 
Hello I have excel 2003 . Every day I receive a file and I have to delete
some columns. so I created a simple macro to delete the columns I do not
need.
Sub NewInv()
'
' Columns("A:A").Select
Selection.Delete Shift:=xlToLeft
Columns("C:C").Select
Selection.Delete Shift:=xlToLeft
Columns("D:F").Select
Selection.Delete Shift:=xlToLeft
Columns("F:G").Select
Selection.Delete Shift:=xlToLeft
Columns("H:I").Select
Selection.Delete Shift:=xlToLeft
Columns("J:L").Select
Selection.Delete Shift:=xlToLeft
Columns("M:M").Select
Selection.Delete Shift:=xlToLeft
Columns("N:O").Select
Selection.Delete Shift:=xlToLeft
End Sub
But when I run the macro the next day it deletes the wrong columns
Please help thanks

Eduardo

macro deletes wrong columns
 
Hi,
I think the problem is when you select the 3rd set of columns you put D:F
and then you select again F:G, the first set should be D:E

"Wanna Learn" wrote:

Hello I have excel 2003 . Every day I receive a file and I have to delete
some columns. so I created a simple macro to delete the columns I do not
need.
Sub NewInv()
'
' Columns("A:A").Select
Selection.Delete Shift:=xlToLeft
Columns("C:C").Select
Selection.Delete Shift:=xlToLeft
Columns("D:F").Select
Selection.Delete Shift:=xlToLeft
Columns("F:G").Select
Selection.Delete Shift:=xlToLeft
Columns("H:I").Select
Selection.Delete Shift:=xlToLeft
Columns("J:L").Select
Selection.Delete Shift:=xlToLeft
Columns("M:M").Select
Selection.Delete Shift:=xlToLeft
Columns("N:O").Select
Selection.Delete Shift:=xlToLeft
End Sub
But when I run the macro the next day it deletes the wrong columns
Please help thanks


Luke M

macro deletes wrong columns
 
Without the knowledge of which columns you actually want deleted, we can only
haphazard a guess.

Since you are deleting columns and "shifting" the remaining columns, this
may be causing you to delete the wrong things. For instance, if, before you
started deleting, your intent was to delete column A & C, once you delete
column A, column C became column B.

Instead of doing multiple steps, select all the columns in one shot and then
delete

example:
Range("A:A,B:C,F:F").Select
--
Best Regards,

Luke M
*Remember to click "yes" if this post helped you!*


"Wanna Learn" wrote:

Hello I have excel 2003 . Every day I receive a file and I have to delete
some columns. so I created a simple macro to delete the columns I do not
need.
Sub NewInv()
'
' Columns("A:A").Select
Selection.Delete Shift:=xlToLeft
Columns("C:C").Select
Selection.Delete Shift:=xlToLeft
Columns("D:F").Select
Selection.Delete Shift:=xlToLeft
Columns("F:G").Select
Selection.Delete Shift:=xlToLeft
Columns("H:I").Select
Selection.Delete Shift:=xlToLeft
Columns("J:L").Select
Selection.Delete Shift:=xlToLeft
Columns("M:M").Select
Selection.Delete Shift:=xlToLeft
Columns("N:O").Select
Selection.Delete Shift:=xlToLeft
End Sub
But when I run the macro the next day it deletes the wrong columns
Please help thanks


Don Guillett

macro deletes wrong columns
 
Work backwards
Without looking too carefully wont this do?

sub delcols()
Columns("C:o").delete
Columns("a").delete
end sub



--
Don Guillett
Microsoft MVP Excel
SalesAid Software

"Wanna Learn" wrote in message
...
Hello I have excel 2003 . Every day I receive a file and I have to delete
some columns. so I created a simple macro to delete the columns I do not
need.
Sub NewInv()
'
' Columns("A:A").Select
Selection.Delete Shift:=xlToLeft
Columns("C:C").Select
Selection.Delete Shift:=xlToLeft
Columns("D:F").Select
Selection.Delete Shift:=xlToLeft
Columns("F:G").Select
Selection.Delete Shift:=xlToLeft
Columns("H:I").Select
Selection.Delete Shift:=xlToLeft
Columns("J:L").Select
Selection.Delete Shift:=xlToLeft
Columns("M:M").Select
Selection.Delete Shift:=xlToLeft
Columns("N:O").Select
Selection.Delete Shift:=xlToLeft
End Sub
But when I run the macro the next day it deletes the wrong columns
Please help thanks



Jim Thomlinson

macro deletes wrong columns
 
Start with the right most columns and move to the left as you go something
like this.

Sub DeleteColumns()
Columns("N").Delete
Columns("L").Delete
End Sub

If you work left to right as you delete all of the columns to the right get
shifted and it is not obvious what is going to get deleted by just looking at
the code.

--
HTH...

Jim Thomlinson


"Wanna Learn" wrote:

Hello I have excel 2003 . Every day I receive a file and I have to delete
some columns. so I created a simple macro to delete the columns I do not
need.
Sub NewInv()
'
' Columns("A:A").Select
Selection.Delete Shift:=xlToLeft
Columns("C:C").Select
Selection.Delete Shift:=xlToLeft
Columns("D:F").Select
Selection.Delete Shift:=xlToLeft
Columns("F:G").Select
Selection.Delete Shift:=xlToLeft
Columns("H:I").Select
Selection.Delete Shift:=xlToLeft
Columns("J:L").Select
Selection.Delete Shift:=xlToLeft
Columns("M:M").Select
Selection.Delete Shift:=xlToLeft
Columns("N:O").Select
Selection.Delete Shift:=xlToLeft
End Sub
But when I run the macro the next day it deletes the wrong columns
Please help thanks



All times are GMT +1. The time now is 02:16 AM.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
ExcelBanter.com