如何使用if语句vba粘贴特定的数据列

时间:2017-10-24 13:58:13

标签: vba

我目前正在做一个项目,我应该查看一列数据,然后使用if语句对其进行分类。

如果标记< = 10则显示在A列值E列 如果标记< = 20,则在列F显示列A值 如果标记小于或等于30,则在列G等处显示列A值。

column A is for names and column B is for student's marks

   Sub CategorisePercentage()

     Dim finalRow As Integer
     Dim i As Integer

     finalRow = Sheets("NTB").Range("A10000").End(xlUp).Row

     For i = 1 To finalRow
         If Cells(i, 2) <= 10 Then
            Range(Cells(i, 1)).Copy
            Range("E1000").End(xlUp).Offset(1, 0).PasteSpecial xlPasteFormulasAndNumberFormats
         End If
     Next i

     Range("E2").Select

     End Sub

这是我在观看youtube教程时尝试的代码,但代码无效,我收到错误&#34;应用程序定义或对象定义的错误&#34;

我哪里错了?

1 个答案:

答案 0 :(得分:1)

你告诉它它是一个范围,但只给它一个单元格:

int

我将其更改为此代码并且代码正常工作:

Range(Cells(i, 1)).Copy

这应修复“应用程序定义或对象定义的错误”。