为了正常的体验网站,请在浏览器设置里面开启Javascript功能!

怎么用Excel以姓名给工作表排序

2017-10-13 6页 doc 19KB 153阅读

用户头像

is_219945

暂无简介

举报
怎么用Excel以姓名给工作表排序怎么用Excel以姓名给工作表排序 excel工作表名称进行排序代码 学习了不看兄的按工作表名称进行排序的方法,记得兰版也写过一个的,写在这里算备忘吧,呵呵。 用法:先建一个工作表名称为“顺序的工作表”,然后第1列是序号,第二列为工作表的名称,然后运行下面的代码工作表就可以按指定的顺序进行排列了。 Sub 指令工作表排序() '请先选择工作表目录所在单元格区域运行 Dim cel As Range On Error Resume Next With ActiveWorkbook k = .ActiveShee...
怎么用Excel以姓名给工作表排序
怎么用Excel以姓名给工作表排序 excel工作表名称进行排序代码 学习了不看兄的按工作表名称进行排序的方法,记得兰版也写过一个的,写在这里算备忘吧,呵呵。 用法:先建一个工作表名称为“顺序的工作表”,然后第1列是序号,第二列为工作表的名称,然后运行下面的代码工作表就可以按指定的顺序进行排列了。 Sub 指令工作表排序() '请先选择工作表目录所在单元格区域运行 Dim cel As Range On Error Resume Next With ActiveWorkbook k = .ActiveSheet.Name n = .Sheets.Count For Each cel In Selection .Sheets(cel.Value).Move after:=.Sheets(n) Next .Sheets(k).Activate End With End Sub Sub 工作表名称排序() Dim r%, n$, m$ For r = Sheets("顺序").Range("b65536").End(xlUp).Row To 2 Step -1 n = Sheets("顺序").Range("b" & r - 1).Value m = Sheets("顺序").Range("b" & r).Value Sheets("" & n & "").Move before:=Sheets("" & m & "") Next Sheets("顺序").Move before:=Sheets("" & Sheets("顺序").Range("b1").Value & "") End Sub Sub test() Dim str1 As String, i As Integer, arr1 Sheet1.Select [a1] = "A" For i = 1 To Worksheets.Count Cells(i + 1, 1) = Sheets(i).Name Next Range("A1:A" & i).Select Range("A1:A14").Sort Key1:=Range("A2"), Order1:=xlAscending, Header:= _ xlGuess, OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _ SortMethod:=xlPinYin, DataOption1:=xlSortNormal arr1 = Range("a2:a" & i) Range("a1:a" & i).Clear str1 = arr1(1, 1) Sheets(str1).Move Before:=Sheets(1) For i = 2 To Worksheets.Count str1 = arr1(i, 1) Sheets(str1).Move After:=Sheets(i - 1) Next End Sub Sub Sort_Sheets() Dim sCount As Integer, I As Integer, R As Integer ReDim Na(0) As String sCount = Sheets.Count For I = 1 To sCount ReDim Preserve Na(I) As String Na(I) = Sheets(I).Name Next For I = 1 To sCount - 1 For R = I + 1 To sCount If Na(R) < Na(I) Then JH = Na(I) Na(I) = Na(R) Na(R) = JH End If Next Next For I = 1 To sCount Sheets(Na(I)).Move After:=Sheets(I) Next End Sub 怎么用Excel以姓名给工作表排序, 2003版的Excel,sheet1、sheet2...一共100多个,把它们都用名字重命名之后,怎么排序呢,求教求教~ Sub 工作表标签排序() Dim i As Long, j As Long, nums As Long, msg As Long msg = MsgBox("工作表按升序排列请选 '是[Y]'. " & vbCrLf & vbCrLf & "工作表按降序排列请选 '否[N]'", vbYesNoCancel, "工作表排序") If msg = vbCancel Then Exit Sub nums = Sheets.Count If msg = vbYes Then 'Sort ascending For i = 1 To nums For j = i To nums If UCase(Sheets(j).Name) < UCase(Sheets(i).Name) Then Sheets(j).Move Before:=Sheets(i) End If Next j Next i Else 'Sort descending For i = 1 To nums For j = i To nums If UCase(Sheets(j).Name) > UCase(Sheets(i).Name) Then Sheets(j).Move Before:=Sheets(i) End If Next j Next i End If End Sub Sub 工作表标签排序() Dim arr, Temp As String Dim i As Integer, j As Integer, iSht As Integer Dim sht As Worksheet iSht = ThisWorkbook.Sheets.Count i = 1 ReDim arr(1 To iSht) As String '将工作表名导入数组 For Each sht In ThisWorkbook.Sheets arr(i) = CStr(sht.Name) i = i + 1 Next '冒泡排序法 For i = 1 To iSht - 1 For j = i + 1 To iSht If arr(i) > arr(j) Then Temp = arr(j) arr(j) = arr(i) arr(i) = Temp End If Next j Next i '工作表按名称排序 Sheets(arr(1)).Move before:=Sheets(1) For i = 2 To iSht Sheets(arr(i)).Move after:=Sheets(arr(i - 1)) Next i End Sub欢迎到excel home学习。
/
本文档为【怎么用Excel以姓名给工作表排序】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。 本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。 网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。

历史搜索

    清空历史搜索