精华内容
下载资源
问答
  • 日常学习工作后,本着人会出错,电脑不容易出错的想法,用excel排序后,把数据交给老板,被老板劈头盖脸的批评:连从大往小排序这么简单的活都干不好?!是不是觉得特冤屈,excel坑我,微软不靠谱,^_^。其实电脑...

    日常学习工作后,本着人会出错,电脑不容易出错的想法,用excel排序后,把数据交给老板,被老板劈头盖脸的批评:连从大往小排序这么简单的活都干不好?!是不是觉得特冤屈,excel坑我,微软不靠谱,^_^。其实电脑只是按设定的规则办事,我们对电脑以及excel不熟悉,自己弄了一堆乱糟糟的数据给它排序,人肉眼看着一样的数据,在它的火眼金睛下其实有区别。


    一、问题

    昨天家里领导在对学生成绩进行排序时,明明看着excel表格里是一列数字,排序时却不老老实实从大往小站队,为了讲清楚这个问题,我专门复盘了个样例(图1),点降序排序后的结果。

    5dabeed8df24398d6a4cd5c5f550cd6b.png图1上半截排一个序列,下半截又重排一个顺序aaad0ac642c3eb7f94bb1db2f92cb647.png;中间还有个“25”既不随上半截排序,也不随着下半截排序,个性太强0513a47593d337f05f54abac9213358c.png

    二、解决方法

    先说解决方法,后面再分析原因。在要排序的这列数据临近列中,点选同一行的一个单元格(例如D1),输入行名称乘以1:“=C1*1”,按回车键,马上显示算式的结果(图2)

    7eeced5a26ab4f0a5003c100638fd68a.png图2鼠标点选D1单元格,出现一个右下角带小方点的方框,鼠标点住小方块往下(如果在中间行,也可以往上拖动,或者往上拖动一次往下再拖动一次)拖动,直到最后一行,D列变成了乘法运算后的结果,看起来和C列一样的数字(图3)。

    6e8b68025f4273895c89ee7af2fa081e.png

    图3现在再排序试试看?ec904c5301f8aafbaa0f08da856b1be4.png图4是不是都规矩啦?

    第二种方法:点选图1中上方方框中每一个左上角带小三角形的数字所在的单元格,会显示一个黄色的叹号,点叹号,在弹出的窗口中点选“转换为数字”。把所有带小三角的都改一遍,再排序就正常了。如果带小三角的多,就太繁琐和浪费时间了。

    三、原因

    是不是感觉很神奇?那这什么道理呢?下面来分析。我们还看图1,为了方便我复制下来5dabeed8df24398d6a4cd5c5f550cd6b.png图1直观的看:上半截的数字靠左对齐,下半截的靠右对齐。我保证,都是直接输入的没调左右对齐之类的。上部方框里的数字所在单元格右上角是不是多个小三角?不妨点选看看。cdbc8244099ff19fc2ceb5c81fa4737b.png图5点选后,发现旁边多了个黄色叹号,点击,弹出图5中提示框,提示这个单元格里的“5”是以文本形式存储的数字(有点拗口哈,意思其实就是看着像数字,其实它是文本)。也就是说它是文本类型的,不是数字类型的。图1中上边框里的“1”和下边框里面的“1”,我们肉眼看起来一样,但对于excel来说,它们不一样,类型不同,要分别排序。如果学过点编程知识,就更容易理解(数字类型:2+3=5,文本类型:“2”+“3”=“23”)。你有么有想:在“单元格格式”里面把图1上面方框里的文本型数字“分类”属性改成常规或者数字,或者倒过来把图1下面方框里面的数字的“分类”改成文本就可以了呢?答案是:不行。个人感觉这就是个bug,但不知道为何excel改版这么多次仍然不改,难道有什么我们不了解的特殊原因?

    那么为何用进行了乘法运算后,2个不同类型的数字就一致了呢?这就是excel运算的规则:强制类型转换,程序设计语言里面也涉及强制类型转换(支持强制转换的类型才可以成功转换,不能把一个汉字直接转换成数字肯定不行)。看来学点简单的编程知识没啥坏处!

    1f8f21c7e4d5e7eb97c4a07424f59afa.png

    图5 汉字“五”乘以2,结果为无效值

    不需要注意,但多了解些也没啥坏处的:如果你用文本型数字做乘法,结果仍然是文本型数字,往上往下拉小方点套用公式后其他行计算结果也都是文本型数字(即使下方的数字也变成了文本型数字)。若用下方数字直接做乘法运算,结果是数字,往上往下拉小方点套用公式后其他行计算结果也都是数字(即使上方的文本型数字也变成了数字)。

    aec8bb6ccf13931c2e9ac4294e69d7dc.png

    图6 左边结果是数字,右边结果是文本型数字

    稍等,是不是还漏了一个问题?我们再看下图1中间那个“ 25”,为啥既不和上面方框内文本类型数字一起排序,也不和下面数字一起排序呢?仔细看,是不是前面多了个空格(“25”“ 25”是不一样的),问题就出在这里。在乘法运算时自动会把那个空格去掉,所以乘法运算后没影响最终结果。

    你是否想知道为何会出现文本型数字和数字呢?我是如何弄出图1这种情况呢?了解excel中几个情况就明白了。

    (1)新建一个excel表格后,单元格默认是“常规”类型,直接输入数字,显示为常规类型,但实质上是数字类型。直接输入文本,例如英文字母或者汉字之类的,显示为常规类型,但实质上自动识别为文本类型。区别在于数字类型自动靠右对齐,文本类型自动靠左对齐。

    c8a68b4dd580446a0f1f1cfa5108fda9.png

    图7

    (2)在表格中先输入一些数字后,再设置部分数字的单元格属性为“文本”,看起来是文本,但排序时其实是按数字类型排序的,可正常按看到的大小顺序排列。

    877a9a6da8514010d6527568ae7a4b47.png

    图8

    (3)把(2)颠倒下顺序,先选中一些单元格,设置格式为“文本”,后输入数字,才会真的变成文本类型存储的数字(如图1所示),排序时候会打按两种类型分别排序,需要处理后才可正常排序。

    展开全文
  • 有时候,如果一个小数据,直接在Excel中就可以完成该需求,那么如何用它进行操作呢?如果数据量很大,你想用Python实现这个目标,又应该怎么办呢?基于此,黄同学今天就带着大家,分别在Excel和Python中,实现这两个...

    9319533506eb0af389509441c058cd4a.gif

    “针对数值型数据”进行排序,可能是大家最喜欢,并且最熟悉的操作,然而如何“针对文本型数据”进行排序呢?这个问题,你可以在心里默想一下,应该如何操作。

    有时候,如果一个小数据,直接在Excel中就可以完成该需求,那么如何用它进行操作呢?如果数据量很大,你想用Python实现这个目标,又应该怎么办呢?

    基于此,黄同学今天就带着大家,分别在Excel和Python中,实现这两个需求。

    数据介绍

    有下面三列数据,针对“学历”这个字段,按照“大专”、“本科”、“研究生”进行排序。对于不同学历,又按照“基本工资”降序排列。

    2bbeb0bd5ef1d3dd130cf8b8ba5b4cdf.png

    Excel实现

    ① 选中所有数据

    e54ab173bc0ee52b4e33e0495d25b235.png

    ② 点击开始 --> 排序和筛选 --> 自定义排序

    9e1756e31c9c72ea9e40d334e0c28a2b.png

    ③ 当出现如下界面,完成图中操作

    29cedb87221bdc1312595fb1e1db7226.png

    ④ 当出现如下界面,完成图中操作

    1ca7e68493ba698ded8a64b7c898734d.png

    ⑤ 当出现如下界面,完成图中操作

    e3b65b698f37f3b65b6e2a0991caf08e.png

    ⑥ 效果如下

    1ea9baa7db563e2a945376cb0779d9a8.png

    Python实现

    import pandas as pd

    # 自定义一个序列
    x = [ '研究生''本科''大专']

    # 读取数据
    df = pd.read_excel("测试.xlsx")

    # 将“学历”列设置为category数据类型
    df["学历"] = df["学历"].astype("category")

    # reorder_categories表示重新排序在x序列中指定的类别
    # inplace=True表示对现有类别重新排序
    df["学历"].cat.reorder_categories(x, inplace=True)

    # 然后采用多列排序的方式,对“学历”列按照指定x顺序排列,对“基本工资”列进行降序排列
    df.sort_values(by=["学历","基本工资"], inplace=True,ascending=[True,False])
    df

    最终效果:

    bea92e6f8a4c3f1fecce02e9b950a845.png

    d671ba12a4308b5fd1a46fb1480c2eaa.gif

    爱忘事、不自律,有了这5款时间管理工具,堪比“罗志祥”!

    Python中的"变量"为什么不能理解为盒子?

    原创《Python最强基础学习文档》,戳我领取!

    原创《Excel数据透视表》大全,戳我领取!

    原创《python自动化办公手册》,戳我领取!

    c349d1a525c67deb54c9693c2c5622a6.gif
    展开全文
  • excel按拼音顺序排序If you have a large number of worksheets in your Excel workbook, it may be hard to find a specific worksheet. Sorting your worksheet tabs alphabetically would make it easier to find...
    excel按拼音顺序排序

    excel按拼音顺序排序

    00_lead_image_sorting_worksheet_tabs

    If you have a large number of worksheets in your Excel workbook, it may be hard to find a specific worksheet. Sorting your worksheet tabs alphabetically would make it easier to find what your looking for.

    如果您的Excel工作簿中有大量工作表,则可能很难找到特定的工作表。 按字母顺序对工作表选项卡进行排序将使查找所需内容更加容易。

    In addition to organizing your worksheet tabs by applying colors to them, you can also sort them alphabetically or alphanumerically, as long as you’ve applied custom names to your worksheets. Unfortunately, sorting worksheet tabs alphabetically is not built in to Excel, but you can add a macro to your workbook that will allow you to sort your tabs in ascending or descending order. We’ll show you how to add a macro available on Microsoft’s support site to your Excel workbook that will sort your worksheet tabs.

    除了通过将颜色应用于表来组织工作表标签之外,只要您已将自定义名称应用于工作表,还可以按字母或字母数字顺序对其进行排序。 不幸的是,Excel中没有内置按字母顺序排序工作表选项卡的功能,但是您可以在工作簿中添加一个宏,该宏将允许您按升序或降序对选项卡进行排序。 我们将向您展示如何将Microsoft支持网站上可用的宏添加到Excel工作簿中,以对工作表标签进行排序。

    01_unsorted_tabs

    To begin, press Alt+F11 to open the Microsoft Visual Basic for Applications (VBA) editor. Then, go to Insert > Module.

    首先,请按Alt + F11打开Microsoft Visual Basic应用程序(VBA)编辑器。 然后,转到“插入”>“模块”。

    02_selecting_insert_module

    Copy and paste the following macro from Microsoft into the module window that displays.

    将以下宏从Microsoft复制并粘贴到显示的模块窗口中。

    Sub Sort_Active_Book()
    Dim i As Integer
    Dim j As Integer
    Dim iAnswer As VbMsgBoxResult
    '
    ' Prompt the user as which direction they wish to
    ' sort the worksheets.
    '
       iAnswer = MsgBox("Sort Sheets in Ascending Order?" & Chr(10) _
         & "Clicking No will sort in Descending Order", _
         vbYesNoCancel + vbQuestion + vbDefaultButton1, "Sort Worksheets")
       For i = 1 To Sheets.Count
          For j = 1 To Sheets.Count - 1
    '
    ' If the answer is Yes, then sort in ascending order.
    '
             If iAnswer = vbYes Then
                If UCase$(Sheets(j).Name) > UCase$(Sheets(j + 1).Name) Then
                   Sheets(j).Move After:=Sheets(j + 1)
                End If
    '
    ' If the answer is No, then sort in descending order.
    '
             ElseIf iAnswer = vbNo Then
                If UCase$(Sheets(j).Name) < UCase$(Sheets(j + 1).Name) Then
                   Sheets(j).Move After:=Sheets(j + 1)
                End If
             End If
          Next j
       Next i
    End Sub
    

    The VBA editor automatically names each module with a number on the end, such as Module1, Module2, etc. You can simply accept the default name of the module. However, if you plan to add other macros to your workbook, it’s a good idea to rename each module so you know what they are. We’ll rename our module to show you how.

    VBA编辑器会自动在每个模块的末尾命名一个数字,例如Module1,Module2等。您可以简单地接受模块的默认名称。 但是,如果您打算将其他宏添加到工作簿中,则最好重命名每个模块,以便知道它们是什么。 我们将重命名模块以向您展示如何进行。

    04_module1_in_modules_list

    To rename the module, select the text in the Name box for the module under Properties in the left pane.

    要重命名模块,请在左侧窗格中“属性”下的模块的“名称”框中选择文本。

    05_changing_module_name

    Type a name for the module in the Name box and press Enter. Note that the module name cannot contain spaces.

    在名称框中键入模块的名称,然后按Enter。 请注意,模块名称不能包含空格。

    06_typing_new_name

    The name of the module changes in the Modules list under Project in the left pane.

    模块的名称在左窗格的“项目”下的“模块”列表中更改。

    07_name_changed

    Close the VBA editor by going to File > Close and Return to Microsoft Excel.

    通过转到文件>关闭并返回到Microsoft Excel,关闭VBA编辑器。

    08_file_close_and_return_to_excel

    Now, we’re going to run the macro to sort our tabs. Press Alt+F8 to access the list of macros on the Macro dialog box. Select the macro in the list (in our case there is only one macro), and click “Run”.

    现在,我们将运行宏以对选项卡进行排序。 按Alt + F8可以在“宏”对话框中访问宏列表。 在列表中选择宏(在我们的例子中只有一个宏),然后单击“运行”。

    09_running_macro

    The following dialog box displays, allowing you to choose whether you want to sort your worksheets in ascending or descending order. We want to sort them in ascending order, so we click “Yes”.

    将显示以下对话框,您可以选择是否要按升序或降序对工作表进行排序。 我们想按升序对它们进行排序,因此我们单击“是”。

    10_sort_worksheets_dialog

    The worksheet tabs are now arranged in alphabetical order.

    现在,工作表选项卡按字母顺序排列。

    11_sorted_tabs

    The macro you added is part of your workbook now, but when you save it, you’ll probably see the following dialog box. That’s because you saved your workbook as an .xlsx file, which is a normal Excel workbook format that does not include macros. To include macros in your workbook, and be able to run them, you must save your workbook as a macro-enabled workbook, or an .xlsm file. To do this, click “No” on this dialog box.

    您添加的宏现在是工作簿的一部分,但是当您保存它时,您可能会看到以下对话框。 这是因为您将工作簿另存为.xlsx文件,这是不包含宏的普通Excel工作簿格式。 要将宏包含在工作簿中并能够运行它们,必须将工作簿另存为启用了宏的工作簿或.xlsm文件。 为此,请在此对话框上单击“否”。

    12_warning_about_saving_macro_enabled_file

    The Save As dialog box displays. Navigate to where you want to save the macro-enabled workbook, if you’re not already in that folder. Select “Excel Macro-Enabled Workbook (*.xlsm)” from the “Save as type” drop-down list.

    显示“另存为”对话框。 如果您还不在该文件夹中,请导航至要保存启用宏的工作簿的位置。 从“另存为类型”下拉列表中选择“ Excel启用宏的工作簿(* .xlsm)”。

    13_selecting_excel_macro_enabled_workbook

    Click “Save”.

    点击“保存”。

    14_clicking_save

    If you don’t save the workbook as a macro-enabled workbook (.xlsm file), the macro you added will be deleted. You might want to delete the .xlsx version of your workbook so you don’t forget to use the .xlsm version of your workbook if you want to add more worksheet tabs and sort them again using the macro. You can always save the workbook as an .xlsx file again if you don’t want to use macros anymore.

    如果您不将工作簿另存为启用宏的工作簿(.xlsm文件),则添加的宏将被删除。 您可能想要删除工作簿的.xlsx版本,因此,如果要添加更多工作表选项卡并使用宏再次对其进行排序,请不要忘记使用工作簿的.xlsm版本。 如果您不想再使用宏,则可以始终将工作簿另存为.xlsx文件。

    翻译自: https://www.howtogeek.com/280917/how-to-sort-worksheet-tabs-in-alphabetical-order-in-excel/

    excel按拼音顺序排序

    展开全文
  • 在Excel中,我们可以使用如下函数构造一个辅助列,通过辅助列进行排序。它实现的原理就是把IP地址中的0填充上并把小数点去掉实现字符串的排序,进而对IP地址排序。=TRIM(TEXT(LEFT(SUBSTITUTE(A2:A57,"."...

    Excel中排序IP地址是非常不友好的,它完全是通过首位进行排序,无法实现我们的实际效果。

    作为IT人员对于IP地址的真正诉求是想要从小到大排列。

    8e57a8c452f8f3634a4410a9178f0bb9.png

    那么如何进行排序呢?

    在Excel中,我们可以使用如下函数构造一个辅助列,通过辅助列进行排序。

    它实现的原理就是把IP地址中的0填充上并把小数点去掉实现字符串的排序,进而对IP地址排序。

    =TRIM(TEXT(LEFT(SUBSTITUTE(A2:A57,".",REPT("",99)),100),"000")&TEXT(MID(SUBSTITUTE(A2,".",REPT("",99)),100,100),"000")&TEXT(MID(SUBSTITUTE(A2,".",REPT("",99)),200,100),"000")&TEXT(MID(SUBSTITUTE(A2,".",REPT(" ",99)),300,100),"000"))

    操作步骤:

    1、选中单元格,然后将上面函数粘贴上,根据实际表格修改采样单元格。

    1a0124c09aa01dd4bc562239e2325f9b.png

    2、将单元格拉下来,数据就会通过A2进行填充。

    67c1f0f50c6694a77661a1899a853667.png

    3、选中两列,点击“排序和筛选”下的自定义排序,配置如下:(记得一定要选中哦)

    cdf4507cb05900f2dca0647657119f44.png
    22bf312a5328f2d5d9d2a6d3a92d54fc.png

    4、排序成功!

    ff7d5efa7bdd2cb37e6ca605fd44128f.png
    展开全文
  • Excel 如何排序与多关键字排序

    千次阅读 2019-08-28 17:08:17
    使用Excel时,对每项录入了数据后,需要对它们进行排序如何实现呢? 唯一关键字排序 排序前原表格如下: 我们需要以“总分”为关键字排降序, 1、选定“总分”所在的列; 2、点击工具栏右上角的“排序和筛选...
  • 本文总结excel自带的排序函数,以及对排序函数进行扩展,使其能相同数据排序时也能有顺序的区分。一、排序函数总结excel有三个排序函数,分别是rank.avg,rank.eq和rank,rank.eq和rank作用相同,我们能从excel的...
  • 排序类型当对数据进行排序,它如果你想的那种应用到先...排序范围对单元格区域中的数据进行排序,这处理包含多个表的工作表时会很有帮助。对范围进行排序不会影响工作表上的其他内容。排序工作表:我们的示例...
  • 在Excel表格中自动排序是无处不在的,不管是日期排序,大小排序,姓名排序等,方法都是一样的,只要掌握了排序的方法,就能轻松的完成表格的自动排序。今天小Q给大家分享各种排序的方法。一、常用的升序、降序这是...
  • 在Excel表格中,可以按数字大小、文字编码和颜色排序,你听说过按职位高低排序吗?如下图的员工信息表中,要求根据B列的职位类别,按总经理、副总经理、总监、经理、职员职位大小排序。想实现其实很简单,只需要...
  • Excel表格有时候为了方便,会对表格内容进行分类排序,今天给大家分享表格中...2、按字母或者笔画排序在Excel表格中如果需要对姓名进行排序,可以按照字母或者是笔画排序。进入自定义排序,关键字选择【员工】,排序...
  • Oracle也有row_number()函数对数据进行分组排序,而MySQL并没有此类函数,那么如何在MySQL中对数据进行分组排序呢?下面介绍如何利用用户变量进行分组排序并取top1数据。1、现在有一份数据表tmp_provice_sales,如下...
  • 在excel中,排序的时候弹窗提示“若要执行此操作,所有合并单元格需大小相同”,该怎么操作才能实现排序呢?接下来,小编就和大家分享具体操作。 工具/原料 excel 方法/步骤...
  • √第一层修炼:Excel入门篇√第二层修炼:函数公式篇√第三层修炼:数据透视表篇√第四层修炼:数据图表篇√第五层修炼:VBA篇第一层修炼:Excel入门篇接触Excel的初期,大家不要着急学习操作技巧,一定先把Excel...
  • Oracle也有row_number()函数对数据进行分组排序,而MySQL并没有此类函数,那么如何在MySQL中对数据进行分组排序呢?下面介绍如何利用用户变量进行分组排序并取top1数据。1、现在有一份数据表tmp_provice_sales,如下...
  • 当面对表格中排有编号的数据时,如果想要将数据不按顺序排练,随机打乱表格内容,该如何操作呢,今天我们就来教大家如何在Excel表格当中快速打乱数据排序,一起来学习一下吧。首先,打开指定表格,显示编号内容如下...
  • excel取消保存微软When you’re trying to look at a set of data in a spreadsheet over time, it’s often helpful to be able to sort the data using the dates in that range, which Microsoft Excel allows ...
  • 如何开启Excel按拼音排序功能

    千次阅读 2017-10-16 15:17:41
    英文版Excel按拼音排序功能对于英文版操作系统,在安装office后,语言选项默认是系统语言,在Excel中按拼音和笔画排序功能没有开启,无论是在界面Ribbon上还是VBA中操作都无法实现拼音排序功能,只能按笔画排序。...
  • 对比excel如何在Python中实现 “自定义文本” 排序
  • Excel has “Sort A to Z” and “Sort Z to A” features that let you sort values alphabetically or numerically, and a “Custom Sort” feature that lets you sort using multiple criteria. Here’s how to ...
  • 将光标定位B1单元格-插入-名称-定义-名称处输入任意名称如a-引用位置上写入=GET.CELL(24,Sheet1!A1)-点添加-B1单元格里输入=a-将公式填充到其它单元格-B列显示A列字体颜色对应的数值; 3.根据B列的...
  • 如何excel实现并列排序

    万次阅读 2009-12-28 10:22:00
    如何excel实现并列排序学校工作碰到这样的问题,要把学生的总成绩进行排序,但是排序时要注意名次并列的情况,比如第二名有两个,则排名成绩第三位的同学则是第四。后来上网查了下,很多网友均遇到过这个问题,...
  • 实际中,我们肯定会有这么一种需求,即按照自定义的顺序来排序。解决办法就是,我们自定义一个序列给Excel,然后让Excel按照这个序列来进行排序。如图 【解决方法,教程视频资料如下】 本教程视频资料来源:...
  • 当我们使用Excel表格录入大量数据时,为了方便查阅一般会根据某一数据进行排序,那么如何可以让数据自动排序呢?一起来学习一下吧!1、根据标题排序如下用极速表格打开一份宝宝健康记录表,比如用宝宝的体重来进行...
  • Excel如何按行排序详细说明

    千次阅读 2020-07-19 07:22:33
    对数据排序时,默认情况下是按列排序的,用户也可以根据需要按行排序如何操作? 方法: 单击数据所在区域任意单元格,选择【数据】选项卡,找到【数据和排序】选项组,单击【排序】按钮 打开“排序”对话框,单击...
  • 表格中对数据进行排序是常有的事,有的时候我们的表格还是会出现排序错误的,那么我们该怎样操作呢?接下来小编就给大家分享一下使用扩展选取调整数据排序出现的错误,还有表格中怎样进行颜色排序的?方法一:...
  • 对如图数据进行排序,以里程为主要依据。 1、选中所有表格,包括姓名等分组,选择 数据->...2、弹出对话框中选择首要关键字为里程,降序排列 如果还有次要关键字,可以点击添加条件按钮 3、点击确定 ...
  • 在excel如何按字数多少进行排序

    千次阅读 2016-04-19 23:14:32
    添加辅助列,输入=len(a1)然后向下拖 按辅助列进行排序
  • 在Excel中,排序是一种常见的操作,那么,如何高效的完成排序操作呢?一、Excel排序:常规(命令)排序。目的:对“销量”升序排序。方法:1、选择目标区域。2、【数据】-【排序】,打开【排序】对话框。3、【主要...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 455
精华内容 182
关键字:

如何在excel排序