欢迎光临散文网 会员登陆 & 注册

ChatGPT助力VBA:解析Excel列中的共享数字

2023-08-09 21:06 作者:数字冠军RPA  | 我要投稿

教程:如何使用VBA宏在Excel中比较两列中的数字并写入第三列

在这个教程中,我们将学习如何创建一个VBA宏,该宏会比较Excel工作表中A列和B列的单元格值,并将共有的数字写入C列的相应单元格。

步骤如下:

1. 打开Excel并打开你需要处理的工作表。

2. 按Alt + F11键打开VBA编辑器。

3. 在VBA编辑器中,点击菜单栏的插入选项,然后选择模块,创建一个新的模块。

4. 在新的模块中,复制并粘贴以下代码:

Sub CompareAndWriteCommonNumbers()


  Dim rng As Range

  Dim i As Long

  Dim cell As Range

  Dim AValues As Variant

  Dim BValues As Variant

  Dim commonValues As String

  Dim aValue As Variant

  Dim bValue As Variant


  Set rng = ThisWorkbook.Sheets("Sheet1").Range("A1:B5")


  For Each cell In rng.Rows

    AValues = Split(cell.Cells(1, 1), ",")

    BValues = Split(cell.Cells(1, 2), ",")

     

    commonValues = ""

     

    For Each aValue In AValues

      For Each bValue In BValues

        If aValue = bValue Then

          commonValues = commonValues & aValue & ","

        End If

      Next bValue

    Next aValue

     

    ' Remove the trailing comma

    If Len(commonValues) > 0 Then

      commonValues = Left(commonValues, Len(commonValues) - 1)

    End If

     

    cell.Cells(1, 3).Value = commonValues

  Next cell


End Sub


5. 请将上述代码中的"Sheet1"替换为你需要处理的工作表的名称。

6. 现在关闭VBA编辑器,回到Excel工作表,按Alt + F8键,从弹出的宏列表中选择CompareAndWriteCommonNumbers,然后点击运行。

注意:请确保你已经保存了你的Excel工作表,因为VBA宏可能会更改数据,这个操作无法撤销。

你的宏已经准备好了!这个宏将会处理A列和B列的第1行至第5行,将共有的数字放入C列的相应单元格。

最后,记住,这个宏假设你的数字都是以逗号分隔的,并且没有空格。如果你的数据有空格,例如'1, 2, 3'而不是'1,2,3',你可能需要先删除这些空格。

ChatGPT助力VBA:解析Excel列中的共享数字的评论 (共 条)

分享到微博请遵守国家法律