使用macros水平移调单个多行单元

我目前正在研究一个macros,它需要一个多行单元格,并把每一个新行,并把它们水平放入下一列。 这需要相对引用,这意味着我将需要在多个单元格上重复使用它,因此它不能特定于一定范围的单元格。

所以我开始的是这样的: 初始单元格

那么我应该把它变成这样:

在这里输入图像说明

我已经尝试编写一个macros,它将所有的值,并将它们放在一个由行分隔的列中的单个单元格,然后粘贴>转置,但我得到一个粘贴错误。 任何人有任何提示? 提前致谢。

这是我迄今为止尝试过的macros的代码。 虽然我得到了一个粘贴错误,所以它不工作。

Sub t() ' ' t Macro ' ' Keyboard Shortcut: Ctrl+t ' ActiveCell.Select ActiveCell.FormulaR1C1 = "Sheryl D. Colvin, deceased" & Chr(10) & "" ActiveCell.Offset(0, 1).Range("A1:A3").Select ActiveCell.Offset(1, 0).Range("A1").Select ActiveSheet.Paste ActiveCell.Range("A1:A3").Select Selection.Copy ActiveCell.Offset(-1, 0).Range("A1").Select Selection.PasteSpecial Paste:=xlPasteAll, Operation:=xlNone, SkipBlanks:= _ False, Transpose:=True ActiveCell.Offset(1, 0).Range("A1:A3").Select Application.CutCopyMode = False Selection.ClearContents End Sub 

圣诞节快乐

 Sub splitcell() Dim arr() As String Dim rng as Range set rng = selection arr = Split(rng, Chr(10)) rng.Resize(, UBound(arr) + 1).Value = arr End Sub 

把它放在你的模块中,然后你可以通过工具>macros>macros(Alt + F8)来指定一个快捷键,然后select选项button并input你想要使用的快捷键。

select你想要分割的单元格,然后点击你指定的快捷键。 它完成了。