Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Run-time error '1004' - Method 'Range' of object'_Global' failed

I have a problem in VBA with a line throwing back an error.

What the macro is intended to do is find a particular cell then paste data into it.

The code is as following:

'To find Column of Customer imput
For Each cell In Range("B4:M4")

        If cell.Value = strLeftMonth Then
            DataImportColumn = cell.Column

        End If

Next


For Each cell In Worksheets("data customer monthly 2013").Range("A3:A9999")

'First Customer
If cell.Value = strFirstCustomer Then
        DataImportRow = cell.Row

    Range(DataImportColumn & DataImportRow).Offset(0, 2).Value = iFirstCustomerSales ****
End If

After running the above code; The code crashes giving the 1004 run-time error on the asterisk'd line. Also DataImportColumn has a value of 7 and DataImportRow has a value of 5.

Now my concern is that Columns aren't referenced as numbers but letters, so it must be that my code can never work because its a terrible reference.

Does anyone have any suggestions how I can make the above work?

like image 481
s0up2up Avatar asked Jan 11 '23 16:01

s0up2up


1 Answers

Your range value is incorrect. You are referencing cell "75" which does not exist. You might want to use the R1C1 notation to use numeric columns easily without needing to convert to letters.

http://www.bettersolutions.com/excel/EED883/YI416010881.htm

Range("R" & DataImportRow & "C" & DataImportColumn).Offset(0, 2).Value = iFirstCustomerSales

This should fix your problem.

like image 176
ApplePie Avatar answered Jan 31 '23 04:01

ApplePie