有少许朋友想知道该款EXCEL的软件相关教程,下面神奇下载软件教程分类编辑给大家带来Excel数据如何快速排列内容,希望能够帮助到大家,一起来了解一下吧!
修法布施得聪明智慧,多分享让生活更美好。excel在处理数据时由列变成行,将行变成列,可以用【复制】数据,【选择粘贴】对话框勾选“转置”而达到。工作中如一列或一行数据分几列几行输出时excel无内置操作,如下图。下面用VBA处理玩转excel数据快速排列。
工具/原料
Excel VBA
方法/步骤
打开Microsoft Office Excel 2007,按下快捷键ALT+F11打开VBA(宏)编辑界面,然后点菜单栏【插入】下拉中列表中点【模块(M)】如图。
然后插入了一个模块1,在代码框中复制如下代码:
Option Base 1
Sub 数据排列()
'2019-9-29 21:42:58
Dim r As Long, c As Long, yn, mb As Range, nb(), i As Long, j As Long, k As Long
Set mb = Application.InputBox(Prompt:="选择要排列数据的单元格:", Type:=8)
yn = MsgBox("排列方式:按先行后列(是),按先列后行(否)", vbYesNo)
k = 0
If yn = vbYes Then
r = Application.InputBox(Prompt:="输入排列数据行数:", Type:=1)
c = Abs(Int(-1 * mb.Count / r))
ReDim nb(r, c)
For j = 1 To c
If k > mb.Count Then Exit For
For i = 1 To r
k = k + 1
If k > mb.Count Then Exit For
nb(i, j) = mb.Cells(k).Value
Next i
Next j
Else
c = Application.InputBox(Prompt:="输入排列数据列数:", Type:=1)
r = Abs(Int(-1 * mb.Count / c))
ReDim nb(r, c)
For i = 1 To r
If k > mb.Count Then Exit For
For j = 1 To c
k = k + 1
If k > mb.Count Then Exit For
nb(i, j) = mb.Cells(k).Value
Next j
Next i
End If
Set mb = Application.InputBox(Prompt:="选择输出的一个单元格:", Type:=8)
Range(mb, mb.Offset(r - 1, c - 1)) = nb
End Sub
需数据排列运行上面宏代码可以达到你想要的排列,怎样运行宏呢?方法一,菜单栏中鼠标点【视图】,列表中找到【宏】,然后鼠标点【宏】的下箭头显示下拉列表,找到【查看宏】并鼠标点下,显示“宏”对话框,选宏名“数据排列”,鼠标点右边【执行】运行该宏,显示输入对话框,“选择要排列数据的单元格”,选择排列数据的单元格“ABCDEF”后,【确定】,再显示选择对话框“排列方式:按先行后列(是),按先列后行(否)”,这里的“先行后列”是先排完行再排列,“先列后行”是先排完列再排行。选“是”,显示输入对话框,要求“输入排列数据行数”,输1行,【确定】,再显示输入对话框,要求“选择输出的一个单元格”,选F7单元格后,【确定】,在F7单元格显示排列一行数据“ABCDEF”。
方法二:为了方便操作,在工作表上面制作一个操作运行宏的命令按键。操作方法是点工具栏最右边箭头显示下拉列表,找到【其它命令(M)】点下,打开“Excel选项”对话框,在“从下列位置选择命令(C):”下拉箭头选【开发工具选项卡】,在列表框中显示列表中选择【插入控件】,然后对话框中【添加(A)>>】按扭,在右边工具栏列表显示增加一个“插入控件”,点【确定】。这样在快速访问工具栏多了一个【插入控件】按扭工具。然后点下该工具,显示下拉列表“表单控件”选最左上第一个【按扭(窗体控件)】,然后在表格中光标变十字,点下按住鼠标左键不放生成方框再松开左键,弹出“指定宏”对话框,选宏名“数据排列”,点【确定】,选表中【按扭2】改名为【数据排列】按键,直接点该按扭可以运行该宏。
【数据排列】宏按扭工具操作开始的实例操作过程如下图:
上面的内容即是对于《Excel数据如何快速排列》软件全部内容了,希望能帮助正在需要EXCEL软件教程朋友!更多精彩EXCEL软件内容教程,可以收藏我们神奇下载!
相关文章
Excel2010创建迷你图(excel2010迷你图创建在哪里)
excel打印如何使用自定義的紙張(EXCEL如何自定义公式)
近期热门