Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/heroku/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Excel 基于多个条件删除列_Excel_Vba - Fatal编程技术网

Excel 基于多个条件删除列

Excel 基于多个条件删除列,excel,vba,Excel,Vba,我想根据多个条件删除列 我的工作表有800列 我想根据第2行的值删除列 如果第2行中的值为空,则删除整列 如果该值大于1000且小于250,则删除 第3行中也有我可以检查的值 如果单元格包含单词ARR或SFR,请保留 否则,删除整个列 我想你可以自己解决这个问题。如果它不是你所需要的,我也认为你可以根据需要修改它 Sub deleteColumns() Dim c As Long Dim i As Long i = 800 For c = i To 1 Step -1 I

我想根据多个条件删除列

我的工作表有800列

  • 我想根据第2行的值删除列

    • 如果第2行中的值为空,则删除整列
    • 如果该值大于1000且小于250,则删除
  • 第3行中也有我可以检查的值

    • 如果单元格包含单词ARR或SFR,请保留
    • 否则,删除整个列


  • 我想你可以自己解决这个问题。如果它不是你所需要的,我也认为你可以根据需要修改它

    Sub deleteColumns()
    
    Dim c As Long
    Dim i As Long
    
    i = 800
    
    For c = i To 1 Step -1
        If Trim(Cells(2, c).Value) = vbNullString Or Cells(2, c).Value < 250 Or Cells(2, c).Value > 1000 Then
            Columns(c).Delete
        End If
    Next
    
    End Sub
    
    子删除列()
    尺寸c与长度相同
    我想我会坚持多久
    i=800
    对于c=i至1,步骤-1
    如果修剪(单元格(2,c).Value)=vbNullString或单元格(2,c).Value<250或单元格(2,c).Value>1000,则
    第(c)栏。删除
    如果结束
    下一个
    端接头
    
    对不起-我不想偷懒。只是不知道如何写一个例子。网上有无数这样的例子。我不明白1和2是如何关联的。一个胜过另一个吗?谢谢,SJR。我仍在努力为作品寻找一个范例。1) 和2)不相关,但我可以使用1)或2)来实现我需要的,因为Excel工作表中有数据。谢谢SJR。自从我是VBA的新手以来,我已经搜索了好几个小时了。这对我来说是有效的(w小调整)。非常感谢。我忘记提到的一件事是要注意文本值。谢谢-好消息是我得到的报告是标准的,但所有的数字都是文本,所以我必须在运行宏之前进行转换。再次感谢!
    Sub deleteColumns()
    
    Dim c As Long
    Dim i As Long
    
    i = 800
    
    For c = i To 1 Step -1
        If Trim(Cells(2, c).Value) = vbNullString Or Cells(2, c).Value < 250 Or Cells(2, c).Value > 1000 Then
            Columns(c).Delete
        End If
    Next
    
    End Sub