如何在同一个单元格中滑动文本或在Excel中重新排列?

我有一个工作表,我想改变文本在单元格中的位置,例如:

cell A | Cell B ---------------------------------------------- hd photo this is my | this is my hd photo ----------------------------------------------- pen this is my | this is my pen ------------------------------------------------ your name what is | what is your name 

我有单元格A的值,并希望像单元格B的价值。 希望你能理解我的问题。 谢谢

尝试使用以下用户定义函数(UDF)

 Public Function rotate(s As String, Kount As Long) As String ary = Split(s, " ") ReDim bry(0 To UBound(ary)) j = 0 For i = Kount To UBound(ary) bry(j) = ary(i) j = j + 1 Next i For i = 0 To Kount - 1 bry(j) = ary(i) j = j + 1 Next i rotate = Join(bry, " ") End Function 

例如:

在这里输入图像说明

第一个参数是包含原始文本的单元格,第二个参数是要移动到短语末尾的单词的数量。

用户定义的函数(UDF)非常易于安装和使用:

  1. ALT-F11调出VBE窗口
  2. ALT-I ALT-M打开一个新的模块
  3. 粘贴东西,closuresVBE窗口

如果保存工作簿,则UDF将随之保存。 如果您在2003年以后使用的是Excel版本,则必须将该文件另存为.xlsm而不是.xlsx

要删除UDF:

  1. 如上所示调出VBE窗口
  2. 清除代码
  3. closuresVBE窗口

从Excel中使用UDF:

 =rotate(A1,3) 

要了解有关macros的更多信息,请参阅:

http://www.mvps.org/dmcritchie/excel/getstarted.htm

http://msdn.microsoft.com/en-us/library/ee814735(v=office.14).aspx

有关UDF的具体信息,请参阅:

http://www.cpearson.com/excel/WritingFunctionsInVBA.aspx

macros必须启用这个工作!