Reply
 
LinkBack Thread Tools Search this Thread Display Modes
  #1   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 23
Default A bug : Run-time error '1004'

Hello,

I'm using Excel 2007 and with the help of a macro I wished to delete all
rows above and all columns left to the specific cell of my worksheet.
In the example for specific cell B4 the code is as follows:

------------------------------------------
Dim MyCol As Long, MyRow As Long
Dim ForDelete As Range
Dim MyAdress As String

MyCol = 2
MyRow = 4

' To delete rows

If MyRow 1 Then
MyAdress = "1:" & (MyRow - 1)
Set ForDelete = ActiveSheet.Rows(MyAdress)
ForDelete.Delete
Set ForDelete = Nothing
End If

' To delete columns

If MyCol 1 Then
MyAdress = "1:" & (MyCol - 1)
Set ForDelete = ActiveSheet.Columns(MyAdress)
ForDelete.Delete
Set ForDelete = Nothing
End If
------------------------------------------

It's weird that the first part of code for deletion of rows run
successfully, the equivalent code for deletion of columns but ended with the
error message:Run-time error '1004' Application-defined or object-defined
error !?

I have changed the problematic code with a bypass code:

-------------------------
If MyRow 1 Then
For i = MyRow - 1 To 1 Step -1
ActiveSheet.Rows(i).Delete
Next i
End If
-------------------------

but I'm still curious, why my first code wasn't successful?

Ivan




  #2   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 3,355
Default A bug : Run-time error '1004'

I usually do something like this

Set ForDelete = Nothing
If MyCol 1 Then
MyAdress = "1:" & (MyCol - 1)
if ForDelete is nothing then
Set ForDelete = ActiveSheet.Columns(MyAdress)
else
Set ForDelete = Union(ForDelete, ActiveSheet.Columns(MyAdress))
end if

End If

'Once you've gathered everything you want to delete, then delete it all.
If not ForDelete is nothing then
ForDelete.Delete
End if

"Ivan" wrote:

Hello,

I'm using Excel 2007 and with the help of a macro I wished to delete all
rows above and all columns left to the specific cell of my worksheet.
In the example for specific cell B4 the code is as follows:

------------------------------------------
Dim MyCol As Long, MyRow As Long
Dim ForDelete As Range
Dim MyAdress As String

MyCol = 2
MyRow = 4

' To delete rows

If MyRow 1 Then
MyAdress = "1:" & (MyRow - 1)
Set ForDelete = ActiveSheet.Rows(MyAdress)
ForDelete.Delete
Set ForDelete = Nothing
End If

' To delete columns

If MyCol 1 Then
MyAdress = "1:" & (MyCol - 1)
Set ForDelete = ActiveSheet.Columns(MyAdress)
ForDelete.Delete
Set ForDelete = Nothing
End If
------------------------------------------

It's weird that the first part of code for deletion of rows run
successfully, the equivalent code for deletion of columns but ended with the
error message:Run-time error '1004' Application-defined or object-defined
error !?

I have changed the problematic code with a bypass code:

-------------------------
If MyRow 1 Then
For i = MyRow - 1 To 1 Step -1
ActiveSheet.Rows(i).Delete
Next i
End If
-------------------------

but I'm still curious, why my first code wasn't successful?

Ivan





  #3   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 35,218
Default A bug : Run-time error '1004'

Another:

Option Explicit
Sub testme()

Dim myCell As Range
Dim myRow As Long
Dim myCol As Long
Dim wks As Worksheet

Set wks = Worksheets("Sheet1") 'or activesheet

With wks
Set myCell = .Range("B4")

myRow = myCell.Row
myCol = myCell.Column

If myRow 1 Then
.Range("a1", .Cells(myRow - 1, "A")).EntireRow.Delete
End If
If myCol 1 Then
.Range("a1", .Cells(1, myCol - 1)).EntireColumn.Delete
End If
End With
End Sub


Ivan wrote:

Hello,

I'm using Excel 2007 and with the help of a macro I wished to delete all
rows above and all columns left to the specific cell of my worksheet.
In the example for specific cell B4 the code is as follows:

------------------------------------------
Dim MyCol As Long, MyRow As Long
Dim ForDelete As Range
Dim MyAdress As String

MyCol = 2
MyRow = 4

' To delete rows

If MyRow 1 Then
MyAdress = "1:" & (MyRow - 1)
Set ForDelete = ActiveSheet.Rows(MyAdress)
ForDelete.Delete
Set ForDelete = Nothing
End If

' To delete columns

If MyCol 1 Then
MyAdress = "1:" & (MyCol - 1)
Set ForDelete = ActiveSheet.Columns(MyAdress)
ForDelete.Delete
Set ForDelete = Nothing
End If
------------------------------------------

It's weird that the first part of code for deletion of rows run
successfully, the equivalent code for deletion of columns but ended with the
error message:Run-time error '1004' Application-defined or object-defined
error !?

I have changed the problematic code with a bypass code:

-------------------------
If MyRow 1 Then
For i = MyRow - 1 To 1 Step -1
ActiveSheet.Rows(i).Delete
Next i
End If
-------------------------

but I'm still curious, why my first code wasn't successful?

Ivan


--

Dave Peterson
  #4   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 23
Default A bug : Run-time error '1004'

Maybe I was not enough clear in my previous question. The question is: How
is it possible that the equivalent code, which is in original version OK for
rows, is not OK for columns?

Ivan

"Ivan" wrote in message
...
Hello,

I'm using Excel 2007 and with the help of a macro I wished to delete all
rows above and all columns left to the specific cell of my worksheet.
In the example for specific cell B4 the code is as follows:

------------------------------------------
Dim MyCol As Long, MyRow As Long
Dim ForDelete As Range
Dim MyAdress As String

MyCol = 2
MyRow = 4

' To delete rows

If MyRow 1 Then
MyAdress = "1:" & (MyRow - 1)
Set ForDelete = ActiveSheet.Rows(MyAdress)
ForDelete.Delete
Set ForDelete = Nothing
End If

' To delete columns

If MyCol 1 Then
MyAdress = "1:" & (MyCol - 1)
Set ForDelete = ActiveSheet.Columns(MyAdress)
ForDelete.Delete
Set ForDelete = Nothing
End If
------------------------------------------

It's weird that the first part of code for deletion of rows run
successfully, the equivalent code for deletion of columns but ended with
the error message:Run-time error '1004' Application-defined or
object-defined error !?

I have changed the problematic code with a bypass code:

-------------------------
If MyRow 1 Then
For i = MyRow - 1 To 1 Step -1
ActiveSheet.Rows(i).Delete
Next i
End If
-------------------------

but I'm still curious, why my first code wasn't successful?

Ivan






  #5   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 35,218
Default A bug : Run-time error '1004'

Because a range with an address like "1:17" means rows. Not columns.

Ivan wrote:

Maybe I was not enough clear in my previous question. The question is: How
is it possible that the equivalent code, which is in original version OK for
rows, is not OK for columns?

Ivan

"Ivan" wrote in message
...
Hello,

I'm using Excel 2007 and with the help of a macro I wished to delete all
rows above and all columns left to the specific cell of my worksheet.
In the example for specific cell B4 the code is as follows:

------------------------------------------
Dim MyCol As Long, MyRow As Long
Dim ForDelete As Range
Dim MyAdress As String

MyCol = 2
MyRow = 4

' To delete rows

If MyRow 1 Then
MyAdress = "1:" & (MyRow - 1)
Set ForDelete = ActiveSheet.Rows(MyAdress)
ForDelete.Delete
Set ForDelete = Nothing
End If

' To delete columns

If MyCol 1 Then
MyAdress = "1:" & (MyCol - 1)
Set ForDelete = ActiveSheet.Columns(MyAdress)
ForDelete.Delete
Set ForDelete = Nothing
End If
------------------------------------------

It's weird that the first part of code for deletion of rows run
successfully, the equivalent code for deletion of columns but ended with
the error message:Run-time error '1004' Application-defined or
object-defined error !?

I have changed the problematic code with a bypass code:

-------------------------
If MyRow 1 Then
For i = MyRow - 1 To 1 Step -1
ActiveSheet.Rows(i).Delete
Next i
End If
-------------------------

but I'm still curious, why my first code wasn't successful?

Ivan





--

Dave Peterson


  #6   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 23
Default A bug : Run-time error '1004'

Thank you Dave (I 'm blushing with shame).

Ivan

"Dave Peterson" wrote in message
...
Because a range with an address like "1:17" means rows. Not columns.

Ivan wrote:

Maybe I was not enough clear in my previous question. The question is:
How
is it possible that the equivalent code, which is in original version OK
for
rows, is not OK for columns?

Ivan

"Ivan" wrote in message
...
Hello,

I'm using Excel 2007 and with the help of a macro I wished to delete
all
rows above and all columns left to the specific cell of my worksheet.
In the example for specific cell B4 the code is as follows:

------------------------------------------
Dim MyCol As Long, MyRow As Long
Dim ForDelete As Range
Dim MyAdress As String

MyCol = 2
MyRow = 4

' To delete rows

If MyRow 1 Then
MyAdress = "1:" & (MyRow - 1)
Set ForDelete = ActiveSheet.Rows(MyAdress)
ForDelete.Delete
Set ForDelete = Nothing
End If

' To delete columns

If MyCol 1 Then
MyAdress = "1:" & (MyCol - 1)
Set ForDelete = ActiveSheet.Columns(MyAdress)
ForDelete.Delete
Set ForDelete = Nothing
End If
------------------------------------------

It's weird that the first part of code for deletion of rows run
successfully, the equivalent code for deletion of columns but ended
with
the error message:Run-time error '1004' Application-defined or
object-defined error !?

I have changed the problematic code with a bypass code:

-------------------------
If MyRow 1 Then
For i = MyRow - 1 To 1 Step -1
ActiveSheet.Rows(i).Delete
Next i
End If
-------------------------

but I'm still curious, why my first code wasn't successful?

Ivan





--

Dave Peterson



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
run time error 1004 general odbc error excel 2003 vba Mentos Excel Programming 5 January 24th 11 02:56 PM
Run time error 1004 Object defined error [email protected] Excel Programming 1 May 15th 07 03:31 AM
Run Time Error 1004: Application or Object Defined Error BEEJAY Excel Programming 4 October 18th 06 04:19 PM
Run Time 1004 Error: Application or Object Difine Error BEEJAY Excel Programming 0 October 17th 06 10:45 PM
run-time error '1004': Application-defined or object-deifined error [email protected] Excel Programming 5 August 10th 05 09:39 PM


All times are GMT +1. The time now is 10:41 PM.

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"