Excel 特定标准“大于50000”或“小于-50000”
这就是我目前所拥有的。我想做一些修正,但我不完全明白怎么做 在第3行,我希望我的“复制标准”是“大于50000”或“小于50000” 如何在Sheet2上指定第一个项目复制到的单元格?例如,Sheet2!B10 然后,如何将从符合我的条件的第1页行复制的列限制为第1页的A、B、E、F、H、I、O和AG列 您可以使用Abs功能,并且只能进行一次检查: 并使用工作表对象的范围属性,通过Intersect方法选择给定行中需要的列: 您可以使用Abs功能,并且只能进行一次检查: 并使用工作表对象的范围属性,通过Intersect方法选择给定行中需要的列: 您正在使用x1Up而不是xlUp 您正在使用x1Up而不是xlUpExcel 特定标准“大于50000”或“小于-50000”,excel,vba,copy,row,Excel,Vba,Copy,Row,这就是我目前所拥有的。我想做一些修正,但我不完全明白怎么做 在第3行,我希望我的“复制标准”是“大于50000”或“小于50000” 如何在Sheet2上指定第一个项目复制到的单元格?例如,Sheet2!B10 然后,如何将从符合我的条件的第1页行复制的列限制为第1页的A、B、E、F、H、I、O和AG列 您可以使用Abs功能,并且只能进行一次检查: 并使用工作表对象的范围属性,通过Intersect方法选择给定行中需要的列: 您可以使用Abs功能,并且只能进行一次检查: 并使用工作表对象的范围属
对于标题问题,您必须执行两个条件语句:WorksheetsSheets1.Cellsi,3.Value>50000或WorksheetsSheets1.Cellsi,3.Value<-50000然后。Abs WorksheetsSheets1.Cellsi,3.Value>50000如果代码中的语句不显示负数。。。它向标题问题显示,您必须执行两个条件语句:WorksheetsSheets1.Cellsi,3.Value>50000或WorksheetsSheets1.Cellsi,3.Value<-50000 Then.absWorksheetsSheets1.Cellsi,3.Value>50000代码中的if语句不显示负数。。。它再次显示选项显式罢工@AJD lol。。。我应该提到这一点,还有一些其他的事情,在第1001次这样做之后,很容易错过:-选项再次出现@AJD lol。。。我应该提到这一点,还有一些其他的事情,在第1001次做了之后很容易错过:-这对我来说非常有效。谢谢你的帮助!这完全符合我的目的。谢谢你的帮助!
a = Worksheets("Sheet1").Cells(Rows.Count, 1).End(x1Up).Row
For i = 2 To a
If Worksheets("Sheet1").Cells(i, 3).Value = **>50000 OR <50000** Then
Worksheets("Sheet1").Rows(i).Copy
Worksheets("Sheet2").Activate
b = Worksheets("Sheet2").Cells(Rows.Count, 1).End(x1Up).Row
Worksheets("Sheet2").Cells(b + 1, 1).Select
ActivateSheet.Paste
Worksheets("Sheet1").Activate
End if
Next
Application.CutCopyMode = False
ThisWorkbook.Worksheets("Sheet1").Cells(1, 1).Select
End Sub
Option Explicit
Sub main()
Dim a As Long, i As Long
Dim sht2 As Worksheet
Set sht2 = Worksheets("Sheet2") ' set a worksheet object for destination sheet
With Worksheets("Sheet1") ' reference Sheet1
a = .Cells(.Rows.Count, 1).End(xlUp).Row ' get referenced sheet column A row index of last not empty cell
For i = 2 To a
If Abs(.Cells(i, 3).Value) > 50000 Then ' if cell value in current row index and column 3 is greater than 50000 or less then -500000
Intersect(.Rows(i), .Range("A:B , E:F, H:I, O:O, AG:AG")).Copy
sht2.Cells(sht2.Rows.Count, 1).End(xlUp).Offset(1).PasteSpecial
Application.CutCopyMode = False
End If
Next
End With
End Sub
Application.ScreenUpdating = False
Dim cell As Range
With Worksheets("Sheet1")
For Each cell In .Range("A2", .Cells(Rows.Count, 1).End(xlUp)).Offset(0, 2)
If cell.Value > -50000 Or cell.Value < 50000 Then
With Worksheets("Sheet2")
cell.EntireRow.Range("A1:B1,E1:F1,H1,I1,O1,AG1").Copy Destination:=.Cells(Rows.Count, 1).End(xlUp).Offset(1)
End With
End If
Next
End With