CopyPastemacros(Pastespecial,查找和replace)

我一直在使用一个简单的复制粘贴示例,现在需要开始使用粘贴特殊和查找和replace。

例如,我有列A,B,E。 我想把B的内容复制到E.

所以我使用的是:

Sub sbCopyRange() Range("B2:B10").Copy Range("E2").Select ActiveSheet.Paste Application.CutCopyMode = False End Sub 

现在我需要它是一个特殊的粘贴,以及find并replace所有的“^”,并用(CntrlShift+ J)replace它们,以便在所有“^”处创build换行符。 我以为我可以用loggingfunction做到这一点,但我注意到一些问题,当在一个更大的文档中调整我的新范围。

任何人都可以协助吗?

要复制到另一个目的地,您只能正确select左上方的单元格作为目的地,但是单个操作有一个缩写复制命令。

 With ActiveSheet '<- set this to something like With Sheets("Sheet1") .Range("B2:B10").Copy _ Destination:=.Range("E2") End With 

您也可以执行与复制,粘贴特殊值等效的直接值传输,但目标需要resize以适应源。 但是,由于您要在目标单元格上执行replace,所以您确实需要维度。

 Dim rng As Range With ActiveSheet '<- set this to something like With Sheets("Sheet1") Set rng = .Range("B2:B10") With .Range("E2").Resize(rng.Rows.Count, rng.Columns.Count) .Value = rng.Value .Replace what:=Chr(94), replacement:=Chr(10), lookat:=xlPart End With End With