当前位置:  开发笔记 > 编程语言 > 正文

使用Excel中的VBA将2个单元格的内容合并到另一个第3单元格中

如何解决《使用Excel中的VBA将2个单元格的内容合并到另一个第3单元格中》经验,为你挑选了1个好方法。

我有两个单元格可以说:A1和A2

每个人的内容都是一个字符串:

A1:你好

A2:世界

我的目标是在另一个单元格中合并A1和A2的内容,例如A3,即A3的内容应该是:

你好世界

我想使用VBA宏执行此操作,而不仅仅是将字符串作为内容.

谢谢你的回答!



1> Lunatik..:

虽然,正如MasterMix所说,这最容易通过公式实现,但如果您有必要使用VBA的原因,那么它取决于您希望如何指定单元格.

你可以这样做:

Private Function addTwoCells(rngA As Range, rngB As Range) As String
    addTwoCells = rngA & rngB
End Function

所有这一切都复制了(更快)内置的Excel连接函数.

您也可以在一个过程中使用大约一百种方法之一来执行此操作,这是提示用户输入范围的一种方法:

Private Sub addTwoCellsProc()
    Dim rngA As String
    Dim rngB As String
    Dim rngOutput As String
    Dim rngTest As Range

    Do
        rngA = InputBox("Please enter first cell address", "Cell A")
        rngA = Range(rngA).Cells(1, 1).Address
        Set rngTest = Intersect(Range(rngA).Cells(1, 1), ActiveSheet.Cells)
    Loop Until Not rngTest Is Nothing

    Do
        rngB = InputBox("Please enter second cell address", "Cell B")
        rngB = Range(rngB).Cells(1, 1).Address
        Set rngTest = Intersect(Range(rngB), ActiveSheet.Cells)
    Loop Until Not rngTest Is Nothing

    Do
        rngOutput = InputBox("Please enter destination cell address", "Output cell")
        Set rngTest = Intersect(Range(rngOutput), ActiveSheet.Cells)
    Loop Until Not rngTest Is Nothing

    Range(rngOutput) = Range(rngA) & Range(rngB)
End Sub

如果要组合多个范围,也可以使用预定义范围并循环显示它们.如果您对该场景有更多解释,那么有人可能会提供更具体的代码.

推荐阅读
黄晓敏3023
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有