问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

wps表格每行都基本都有重复的数字,如下图:

发布网友 发布时间:2022-04-30 15:46

我来回答

3个回答

热心网友 时间:2022-06-26 16:53

请按如下步骤操作:

点击 WPS 表格顶部“视图”菜单,找到最右侧的“宏”目录,在下拉菜单中找到“录制宏”命令,如下图所示。 

“录制宏”命令所在位置示意图

2. 在弹出的对话框中,点击“确定”开始录制宏。

开始录制宏操作

3. 无需进行其他操作,点击左下角方块按钮结束录制宏。

结束录制宏操作

4. 按 Alt + F8 或者按下图所示点击“查看宏”命令。

查看宏

5. 在查看宏的弹出框中选择“编辑”,如下图所示。

编辑按钮示意

6. 将如下内容复制到弹出的文本框中:

'----------- 注意!复制请从此处开始!--------------

Sub 统计不重复数字()

'

'宏


'统计不重复的数字,并删除重复的数字

'


'

    Dim StartRow As Integer '从第几行开始

    Dim StartCol As Integer '从第几列开始

    

    Dim RowOrCol As Boolean 'True为行,即一行一行的计算有无重复值,反之,False为列

    Dim ResultLocation As Integer '将计数数字存放在第几列(或行)上

    Dim MoveIfDelete As Boolean '删除数据后是否前移补空位

    

    '将上述值进行预设置

    

    StartRow = 2

    StartCol = 2

    RowOrCol = True

    ResultLocation = 1

    MoveIfDelete = True

    

    Dim OuNum As Integer '外部遍历总数

    Dim InNum As Integer '内部遍历总数

    Dim StartOuNum As Integer '起始外部遍历数

    Dim StartInNum As Integer '起始内部遍历数

    

    If RowOrCol Then

        OuNum = ActiveSheet.UsedRange.Rows.Count + ActiveSheet.UsedRange.Row - 1

        InNum = ActiveSheet.UsedRange.Columns.Count + ActiveSheet.UsedRange.Column - 1

        StartOuNum = StartRow

        StartInNum = StartCol

    Else

        OuNum = ActiveSheet.UsedRange.Columns.Count + ActiveSheet.UsedRange.Column - 1

        InNum = ActiveSheet.UsedRange.Rows.Count + ActiveSheet.UsedRange.Row - 1

        StartOuNum = StartCol

        StartInNum = StartRow

    End If

    

    '初始化计数器

    

    Dim k As Integer '外部遍历计数

    

    Dim i As Integer '内部遍历计数 1

    Dim j As Integer '内部遍历计数 2

    

    Dim Num As Integer '内部不重复数字数量计数

    

    If RowOrCol Then

        For k = StartOuNum To OuNum

            Num = 0

            For i = StartInNum To InNum

                For j = StartInNum To InNum

                    If Cells(k, j) = Cells(k, i) And Not i = j Then

                        Cells(k, j).ClearContents '清除单元格内容

                    End If

                Next

                If IsNumeric(Cells(k, i)) And Not Cells(k, i) = "" Then

                    Num = Num + 1

                    If MoveIfDelete Then

                        If Not StartInNum + Num - 1 = i Then

                            Cells(k, StartInNum + Num - 1) = Cells(k, i)

                            Cells(k, i).ClearContents '清除单元格内容

                        End If

                    End If

                End If

            Next

            Cells(k, ResultLocation) = Num

        Next

    Else

        For k = StartOuNum To OuNum

            Num = 0

            For i = StartInNum To InNum

                For j = StartInNum To InNum

                    If Cells(j, k) = Cells(i, k) And Not i = j Then

                        Cells(j, k).ClearContents '清除单元格内容

                    End If

                Next

                If IsNumeric(Cells(i, k)) And Not Cells(i, k) = "" Then

                    Num = Num + 1

                    If MoveIfDelete Then

                        If Not StartInNum + Num - 1 = i Then

                            Cells(StartInNum + Num - 1, k) = Cells(i, k)

                            Cells(i, k).ClearContents '清除单元格内容

                        End If

                    End If

                End If

            Next

            Cells(ResultLocation, k) = Num

        Next

    End If

End Sub

'----------- 注意!复制到此处结束!--------------

7. 点击执行按钮,执行宏。

执行按钮所在位置

8. 执行完成后,即可完成统计数字(不重复计数),并删除重复值的操作。

9. 如需保存宏请将 . xlsx 格式的另存为 .xlsm 格式的,以后便可再查看或者修改宏。

10. 其它注释我都写在代码注释中,如果有不明白的事项可以再次追问。

追问老师,复制内容里面的注释里面的文字和(’)这个符号要复制吗?还有就是 Dim StartRow As Integer '从第几行开始 和从第几列开始要填上对应的行列信息吗?

热心网友 时间:2022-06-26 16:54

统计不重复数量公式为:

=SUMPRODUCT(1/COUNTIF(B1:S1,B1:S1))

如图所示:

热心网友 时间:2022-06-26 16:54

这个表格设计得有问题……本来您的需求是很简单的一个操作(删除重复值再count计数)就可以完成,现在这样的表格设计,就把简单的任务弄得复杂了。

建议重新设计下表格吧:第一行是列标题,之后的每一行都是一条完整的记录。
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
离职几个月公司发短信说我离职生效叫我回去补办离职交接手续怎么 开除员工不办手续违法吗 辞退员工没有办手续违法吗 苹果13/6.1录制两个人脸,后面换锁屏密码认证还有什么提醒,或者是两个人... 很规律很威严的词语是什么 我老了又无能 想有个爱我一辈子的 到今没 就一个人 把爱放心里 用数字... 日语N2 20天复习够吗 为什么泥工先于木工 泥工做好隔多久做木工 从泥工做好到做木工,需要等待多久? 水泥操作人员作业流程是怎样的? 毛衣领口起168针,从上往下织怎么分针? 毛衣铲针作用 怎样在word或WPS里面把每行开头的数字序号 第1条. 第2条. 第3条. …… 第99条,替换成1. C#怎么用代码 在导出的wps文档中批注wps文档某一行数据 wps表格有没有上限的,我的表格打了4万行5兆,为什么每次保存就卡死在那里? 基础针法手工编织毛衣围巾,正针反针?上针下针?还有滑针怎么织 像linux、mysql、wps之类的著名软件都有多少行源代码啊? 织毛衣如何收针图片 请问3行的滑针怎样织 另类小说是什么概念? 有点色的小说 求无限类另外主角还有自己的系统的小说 异世荒野直播by黑潮3无弹窗小说在线免费看 介绍几部像柳下挥这样比较有文笔的YY小说,搞笑的 另类下载 另类古惑小说txt全集免费下载 另类客栈小说txt全集免费下载 “彼岸花开叶调零”的下一句是什么? 《另类短篇小说》txt全集下载 彼岸花开开彼岸,欲言又止 对下一句 要优美的 好的加分 发微信朋友圈下老带着删除是怎么回事 wps为什么不能输入大量数字,比如身份证号码,输入后会显示出代码 于月仙的年龄是多少 微信收朋友圈底部显示删除两字微信朋友圈里我了老在底下显示删除两个字怎么回事儿??? 毛衣编织针法有哪些 WPS 中如何使用函数自动统计当前行/列(不是当前表)有多少个带背景颜色的单元格? 于月仙到底多大? 朋友圈里发的信息不违规,为什么下边还有删除两个字? 50岁于月仙去世!《乡村爱情》再无“谢大脚”,她是什么原因去世的? 毛衣编织二八尼亚针形 于月仙今年的年龄多大 我用wps表格分析数据,数据量有点多,几千条数据。其中第一列中有300多条是730001,500多 毛衣编织大全的编织方法 朋友圈转发后时刻后面总显示删除怎么办 会有情债报应吗 织毛衣的编织技巧 现代最流行的女生昵称是? 50岁“谢大脚”因车祸离世!被赵本山力捧15年,她这一生经历了什么? 电影演员于月仙多大岁数 真的有感情债这回事么?你要是伤害过一个很爱你的女人,是不是以后真的会遭到报应呢?