对于工作表中的每个列,搜索单元格中的值,然后选择该列并在该列之前插入一列

时间:2012-05-18 19:01:15

标签: excel-vba vba excel

我试图写一个执行以下操作的宏:

对于工作簿中的每个工作表: 1.选择一列 2.在所选列中搜索行号5中的特定值 3.如果该值与另一个cel(A1)匹配,则在所选列

之前插入两列
  1. 对工作表中的每一列执行相同操作。 (我的意思是那些有某些东西的列,我知道有无限量的潜在列。)
  2. 对答案的任何帮助或指导都会有所帮助。

1 个答案:

答案 0 :(得分:4)

我想,这会让你得到你想要的东西。

Dim wks As Worksheet

For Each wks In ThisWorkbook.Worksheets

    With wks
        Dim intCol As Integer, intCnt As Integer

        intCol = .UsedRange.Columns.Count

        For intCnt = intCol To 2 Step -1 'assumes you ignore col A since your match value is there
            If .Cells(5, intCnt) = .Cells(1, 1) Then
                .Range(.Cells(1, intCnt), .Cells(1, intCnt + 1)).EntireColumn.Insert Shift:=xlToLeft
            End If
        Next

    End With

Next