热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

Excel技巧:在范围内查找所有最小值,而不仅仅是首个最小值

探讨了如何在Excel中查找指定范围内的所有最小值,即使这些最小值出现多次,也能确保每个实例都被识别和显示。

在Excel中,当我需要在一个数值列表中找出最小值时,例如9, 18, 12, 9,虽然两个9都是最小值,但默认的MIN函数只会返回首次出现的最小值。为了提高结果的准确性,我希望不仅能标识出首次出现的最小值,还能同时标识出第二次出现的最小值。具体来说,这些数值所在的列代表不同的位置,数值本身则反映了前往该位置的难易程度。因此,如果两个位置的难度值都为9,我希望有一种方法能够同时显示这两个位置的信息,以确保所有符合条件的结果都能被用户看到。请问是否有方法可以在使用MIN函数时,让结果同时包括所有出现的最小值?或者,是否可以通过某种方式,在初次查找最小值后,再次查找时不考虑已找到的最小值,从而定位到下一个最小值?


非常感谢您的帮助。


解决方案



#1 使用数组公式




假设数据位于A列,在C1单元格中输入以下数组公式:


=IFERROR(SMALL(IF(($A$1:$A$20)=MIN($A$1:$A$20), ROW($A$1:$A$20), ""), ROW()), "")

然后向下复制该公式。请注意,数组公式需要通过按Ctrl+Shift+Enter来输入,而不是简单的Enter键。此公式将返回包含最小值的所有单元格的行号。




#2 使用VBA进行循环查找




另一种方法是使用VBA脚本,通过循环遍历找到的所有最小值。下面是一个示例代码,其中包含了循环中的FindNext操作,用于查找所有匹配的最小值:


Dim rngFound As Range
Dim rngSearch As Range
Dim SrchVal As Variant
Dim FirstFind As String

Set rngSearch = Range("A1:A20")
SrchVal = Application.WorksheetFunction.Min(rngSearch)

Set rngFound = rngSearch.Find(SrchVal, LookIn:=xlValues)
If Not rngFound Is Nothing Then
FirstFind = rngFound.Address
Do
' 对找到的值执行操作
Set rngFound = rngSearch.FindNext(rngFound)
Loop Until rngFound.Address = FirstFind
End If

这段代码首先定义了搜索范围和要查找的最小值,然后通过Find方法找到第一个最小值的位置。之后,通过FindNext方法在循环中继续查找其他匹配项,直到回到最初找到的位置为止。



推荐阅读
  • 本文将介绍如何编写一些有趣的VBScript脚本,这些脚本可以在朋友之间进行无害的恶作剧。通过简单的代码示例,帮助您了解VBScript的基本语法和功能。 ... [详细]
  • 技术分享:从动态网站提取站点密钥的解决方案
    本文探讨了如何从动态网站中提取站点密钥,特别是针对验证码(reCAPTCHA)的处理方法。通过结合Selenium和requests库,提供了详细的代码示例和优化建议。 ... [详细]
  • 1.如何在运行状态查看源代码?查看函数的源代码,我们通常会使用IDE来完成。比如在PyCharm中,你可以Ctrl+鼠标点击进入函数的源代码。那如果没有IDE呢?当我们想使用一个函 ... [详细]
  • 本文详细介绍了Java编程语言中的核心概念和常见面试问题,包括集合类、数据结构、线程处理、Java虚拟机(JVM)、HTTP协议以及Git操作等方面的内容。通过深入分析每个主题,帮助读者更好地理解Java的关键特性和最佳实践。 ... [详细]
  • 本文详细解析了Python中的os和sys模块,介绍了它们的功能、常用方法及其在实际编程中的应用。 ... [详细]
  • Hadoop入门与核心组件详解
    本文详细介绍了Hadoop的基础知识及其核心组件,包括HDFS、MapReduce和YARN。通过本文,读者可以全面了解Hadoop的生态系统及应用场景。 ... [详细]
  • MySQL索引详解与优化
    本文深入探讨了MySQL中的索引机制,包括索引的基本概念、优势与劣势、分类及其实现原理,并详细介绍了索引的使用场景和优化技巧。通过具体示例,帮助读者更好地理解和应用索引以提升数据库性能。 ... [详细]
  • PHP 编程疑难解析与知识点汇总
    本文详细解答了 PHP 编程中的常见问题,并提供了丰富的代码示例和解决方案,帮助开发者更好地理解和应用 PHP 知识。 ... [详细]
  • 本文详细介绍了Java中org.neo4j.helpers.collection.Iterators.single()方法的功能、使用场景及代码示例,帮助开发者更好地理解和应用该方法。 ... [详细]
  • 优化ListView性能
    本文深入探讨了如何通过多种技术手段优化ListView的性能,包括视图复用、ViewHolder模式、分批加载数据、图片优化及内存管理等。这些方法能够显著提升应用的响应速度和用户体验。 ... [详细]
  • 本章将深入探讨移动 UI 设计的核心原则,帮助开发者构建简洁、高效且用户友好的界面。通过学习设计规则和用户体验优化技巧,您将能够创建出既美观又实用的移动应用。 ... [详细]
  • 如何在PHPCMS V9中实现多站点功能并配置独立域名与动态URL
    本文介绍如何在PHPCMS V9中创建和管理多个站点,包括配置独立域名、设置动态URL,并确保各子站能够正常运行。我们将详细讲解从新建站点到最终配置路由的每一步骤。 ... [详细]
  • 解读MySQL查询执行计划的详细指南
    本文旨在帮助开发者和数据库管理员深入了解如何解读MySQL查询执行计划。通过详细的解析,您将掌握优化查询性能的关键技巧,了解各种访问类型和额外信息的含义。 ... [详细]
  • 扫描线三巨头 hdu1928hdu 1255  hdu 1542 [POJ 1151]
    学习链接:http:blog.csdn.netlwt36articledetails48908031学习扫描线主要学习的是一种扫描的思想,后期可以求解很 ... [详细]
  • Codeforces Round #566 (Div. 2) A~F个人题解
    Dashboard-CodeforcesRound#566(Div.2)-CodeforcesA.FillingShapes题意:给你一个的表格,你 ... [详细]
author-avatar
mobiledu2502885407
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有