ExcelBanter

ExcelBanter (https://www.excelbanter.com/)
-   Excel Programming (https://www.excelbanter.com/excel-programming/)
-   -   Array - Object required??? (https://www.excelbanter.com/excel-programming/365058-array-object-required.html)

Buffyslay

Array - Object required???
 
i keep getting an error (object required )
Arr(i, 1).Value = ActiveCell.Value
Why? where have i gone wrong?
--------------------------------------------------


lRowCount = ActiveSheet.UsedRange.Rows.Count
j = lRowCount - 5 '(as starting from B6)

ReDim Arr(j, 2)

Range("B6").Select
For i = 1 To j
Arr(i, 1).Value = ActiveCell.Value ********************
ActiveCell.Offset(0, 1).Select
Arr(i, 2).Value = ActiveCell.Value
ActiveCell.Offset(-1, 1).Select
Next i


Worksheets("Salaries").Select
x = lRowCount - 3
Range("B4").Select
For m = 3 To x
ActiveCell.Value = Arr(m, 1).Value
ActiveCell.Offset(0, 1).Select
ActiveCell.Value = Arr(m, 2).Value
ActiveCell.Offset(-1, 1).Select
Next m


John.Greenan

Array - Object required???
 
sounds like you do not have an activecell at the time you are running this.

Set a watch on the activecell and see what it refers to just before you need
to use it. You would be better off doing something like:

dim oTargetRange as excel.range

set oTargetRange = Range("B6")

For i = 1 To j
Arr(i, 1).Value = oTargetRange.Value
Arr(i, 2).Value = oTargetRange.Offset(0, 1).Value
set oTargetRange = oTargetRange.offset(0,1)
Next i

Give that a go and post back if you get stuck...

--
www.alignment-systems.com


"Buffyslay" wrote:

i keep getting an error (object required )
Arr(i, 1).Value = ActiveCell.Value
Why? where have i gone wrong?
--------------------------------------------------


lRowCount = ActiveSheet.UsedRange.Rows.Count
j = lRowCount - 5 '(as starting from B6)

ReDim Arr(j, 2)

Range("B6").Select
For i = 1 To j
Arr(i, 1).Value = ActiveCell.Value ********************
ActiveCell.Offset(0, 1).Select
Arr(i, 2).Value = ActiveCell.Value
ActiveCell.Offset(-1, 1).Select
Next i


Worksheets("Salaries").Select
x = lRowCount - 3
Range("B4").Select
For m = 3 To x
ActiveCell.Value = Arr(m, 1).Value
ActiveCell.Offset(0, 1).Select
ActiveCell.Value = Arr(m, 2).Value
ActiveCell.Offset(-1, 1).Select
Next m




All times are GMT +1. The time now is 01:28 PM.

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