2016-08-11 144 views
1

我想创建一个单元格以在Excel中创建预设的响应电子邮件。我需要能够将文本粘贴到单元格中而不删除该单元格中已存在的信息(并且我需要能够重复执行此操作)。我基本上要求帮助创建具有类似'复制并将'属性'粘贴为word文档。即当我将文本粘贴到一个单元格中时,它会在新文本下面插入新文本,而不是用剪贴板替换现有文本。复制并粘贴在Excel中,而不删除单元格当前内容

我完全可以在VBA中使用一些编码帮助。请让我知道是否需要澄清任何事情!谢谢

+0

抢你所需要的文本,并在目标单元格不粘贴,而是'ActiveCell.Value = ActiveCell.Value&vbNewLine'以及'要添加的任何新文本' – PartyHatPanda

+0

从哪里粘贴? –

+0

@ user1274820你能否请你发表你在最后的评论中格式化的代码 – urdearboy

回答

7

我写了代码来做你所要求的,但我不确定它是否真的是你需要的。

Alt+F11

工作表上双击要这本规范工作在(左侧)

Paste Code

粘贴。

请注意,此代码将允许您通过点击删除来清除单元格。

否则,将很难删除它。

请注意,这基本上会附加您尝试编辑的任何单元格。

Dim currentVal 
Private Sub Worksheet_Change(ByVal Target As Range) 
If Target.CountLarge > 1 Then Exit Sub 
If currentVal <> vbNullString And Target.Value <> vbNullString Then 
    Application.EnableEvents = False 
    Target.Value = currentVal & vbCrLf & Target.Value 
    currentVal = Target.Value 
    Application.EnableEvents = True 
Else 
    currentVal = Target.Value 
End If 
End Sub 
Private Sub Worksheet_SelectionChange(ByVal Target As Range) 
If Target.CountLarge = 1 Then currentVal = Target.Value 
End Sub 

它是如何工作的:

Working

希望最终剪辑与合并单元格中键入移动无法测试工作:

Dim currentVal 
Private Sub Worksheet_Change(ByVal Target As Range) 
If currentVal <> vbNullString And Target.Cells(1,1).Value <> vbNullString Then 
    Application.EnableEvents = False 
    'Use this to add an extra line instead 
    Target.Cells(1,1).Value = currentVal & vbLf & vbLf & Target.Cells(1,1).Value 
    'Target.Cells(1,1).Value = currentVal & vbLf & Target.Cells(1,1).Value 
    currentVal = Target.Cells(1,1).Value 
    Application.EnableEvents = True 
Else 
    currentVal = Target.Cells(1,1).Value 
End If 
End Sub 
Private Sub Worksheet_SelectionChange(ByVal Target As Range) 
currentVal = Target.Cells(1,1).Value 
End Sub 
+0

我相信这正是我正在寻找的。在你的“它是如何工作”的例子中,我能够从单元格E1中复制一些东西并将其粘贴到单元格A1中?换句话说,如果D1 =测试和E1 =乐趣,我可以通过使用剪贴板让A1 =测试有趣的测试乐趣测试乐趣吗?如果是这样,这正是我所需要的。但是,我在第三行发现“运行时错误”13“类型不匹配”(以“If currentVal <> .......”开头) 我该如何纠正?非常感谢你帮助我。如果我能把这个工作做好,你将会把我的工作简化一百万倍。 – urdearboy

+0

我会尽力澄清我在这个评论中需要什么,并在回答您的问题之后。我只需要粘贴到一个单元格中,但我需要能够复制来自多个单元格的文本(一次只能有一个)(将复制/粘贴多次)。假设我有十个单元格,文本A,B,C ..... J(每个单元格一个字母)。我希望能够将这些单元格逐个复制并粘贴到另一个单元格中,以便我粘贴的单元格将显示为“A B C ..... J”。如果这可以帮助我发送图片,我可以发布我的电子邮件。我不知道如何在这里上传图片。 – urdearboy

+0

我按照你的指示一步一步,并得到了错误。我只需将光标置于代码中的任何位置,然后单击“运行”正确的?当我这样做时,我得到了上面提到的错误。 – urdearboy