繁体   English   中英

运行时错误'1004' - 对象'_Global'的方法'范围'失败

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

我在VBA中遇到一个问题,一条线路丢失了一个错误。

宏的目的是找到一个特定的单元格,然后将数据粘贴到其中。

代码如下:

'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

运行上面的代码后; 代码崩溃,在asterisk'd行上给出了1004 run-time error DataImportColumn的值为7DataImportRow的值为5

现在我担心的是,列不是作为数字而是字母引用的,所以它必须是我的代码永远不能工作,因为它是一个可怕的引用。

有没有人有任何建议我如何才能完成上述工作?

您的范围值不正确。 您正在引用不存在的单元格“75”。 您可能希望使用R1C1表示法轻松使用数字列而无需转换为字母。

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

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

这应该可以解决您的问题。

更改

Range(DataImportColumn & DataImportRow).Offset(0, 2).Value

Cells(DataImportRow,DataImportColumn).Value

当你只有行和列时,你可以使用cells()对象。 语法是Cells(Row,Column)

还有一个提示。 您可能希望完全限定Cells对象。 例如

ThisWorkbook.Sheets("WhatEver").Cells(DataImportRow,DataImportColumn).Value

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM