我有两个单元格可以说:A1和A2
每个人的内容都是一个字符串:
A1:你好
A2:世界
我的目标是在另一个单元格中合并A1和A2的内容,例如A3,即A3的内容应该是:
你好世界
我想使用VBA宏执行此操作,而不仅仅是将字符串作为内容.
谢谢你的回答!
虽然,正如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
如果要组合多个范围,也可以使用预定义范围并循环显示它们.如果您对该场景有更多解释,那么有人可能会提供更具体的代码.