Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/excel/26.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
Vba 根据前缀删除列的内容_Vba_Excel_Excel 2013 - Fatal编程技术网

Vba 根据前缀删除列的内容

Vba 根据前缀删除列的内容,vba,excel,excel-2013,Vba,Excel,Excel 2013,我有一个宏,当前删除a列中的空行,然后删除一些不必要的列E和G。我的报告已更改,现在在E列中,我必须删除所有以“MX”开头的位置,并且有太多的位置无法逐个选择。我是否可以在当前宏中添加任何内容来删除所有以“MX”开头的位置?还有许多其他前缀,如“US”“CA”,但我需要删除的是“MX” 以下是当前代码: Sub Delete() Dim cRow As Long cRow = 3 Do While (IsEmpty(Cells(cRow, 1)))

我有一个宏,当前删除a列中的空行,然后删除一些不必要的列E和G。我的报告已更改,现在在E列中,我必须删除所有以“MX”开头的位置,并且有太多的位置无法逐个选择。我是否可以在当前宏中添加任何内容来删除所有以“MX”开头的位置?还有许多其他前缀,如“US”“CA”,但我需要删除的是“MX”

以下是当前代码:

Sub Delete()

    Dim cRow As Long
        cRow = 3
    Do While (IsEmpty(Cells(cRow, 1)))
      cRow = cRow + 1
    Loop
    cRow = cRow - 1

    'Rows("3:" & cRow).Select
    Rows("3:" & cRow).Delete Shift:=xlUp
    Columns("E:E").Select
    Selection.Delete Shift:=xlToLeft
    Columns("G:G").Select
    Selection.Delete Shift:=xlToLeft

End Sub

你可以这样做

Sub Delete()

    Dim cRow As Long
        cRow = 3
    Do While (IsEmpty(Cells(cRow, 1)))
      cRow = cRow + 1
    Loop
    cRow = cRow - 1
    if range("E" & cRow).value like "MX*" then 'OR left(range("E" & cRow).value, 2) = "MX"
       Rows("3:" & cRow).Delete Shift:=xlUp
       Columns("E:E").Select
       Selection.Delete Shift:=xlToLeft
    end if 

    Columns("G:G").Select
    Selection.Delete Shift:=xlToLeft

End Sub

但不确定是否仍然需要G。

在E列中,如果找到带有“MX”的条目,您想做什么?是否清除内容或删除单元格并上移?此外,您正在删除列A中有空条目的行;列中的任何一个都需要列中的值吗?列A中的空白是不需要的,因为它们不包含任何有关我的报告的信息,并且在包含“MX”的列E单元格中,应该删除整行。由于某些原因,它不删除列A中的空白,它只删除E和G列。