在列中选择Excel vba,选择整列

时间:2013-05-24 13:02:01

标签: excel excel-vba vba

我是新来的。有人可以帮我吗?

这是我的表格:在A& B栏中我有Apple,在C& D栏中我有三星,在E& F HTC栏中。

我想准确搜索包含“HTC”字样的列。由于其中有2个,我想选择这2列。切割它们并将它们插入A列和B列。

所以订单应为HTC(ColA),HTC(ColB),Apple(ColC),Apple(ColD),Samsung(ColE),Samsung(ColF).

我希望有人理解我的问题并希望能够回答。

1 个答案:

答案 0 :(得分:0)

您的问题不是很清楚,但您可以使用匹配功能来确定某列是否包含特定字词:

Dim matchFound as Boolean
Dim c as Long
Dim rowNum as Long

For c = 5 to 6   'columns to be searched '
    matchFound = Not IsError(Application.Match("HTC", Columns(c), False))

    'Get the matching row number:
    If matchFound then rowNum = Application.Match("HTC", Columns(c), False))

        MsgBox "A match is found in Column " & c & ", Row " & rowNum, vbInformation
        'Put the values found in columns A or B '
        Cells(rowNum, c-4).Value = Cells(rowNum, c).Value
        matchFound = False
    End If
Next

现在您现在是匹配单元格的行/列索引,您可以将其值写入其他位置,例如,将第5列和第6列中的值放入第1列和第2列:使用:

Cells(rowNum, c-4).Value = Cells(rowNum, c).Value

如果您希望有多个匹配的单元格,则需要使用FindFindNext方法。

https://stackoverflow.com/a/16423646/1467082