我有一个数组: - Dim arr(0到5,1到2)As Variant
我可以使用以下方法找到数组中的最小值: -
Debug.Print Application.Min(arr)
如何找到与最小值相邻的值?
答案 0 :(得分:0)
这是一种方式的逻辑(注意我从工作表中读取数组而不是已经指定了数组)。
我循环列,因为列数少于行数。我通过取第1列最小值<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div class="grid-item">2018-03-30</div>
<div class="grid-item">2018-04-29</div>
<div class="grid-item">2015-05-25</div>
<div class="grid-item">2015-07-26</div>
来确定初始有效最小值。如果未来的最小值小于现有值,我将此值设置为未来列的最小值。
var date = $(".grid-item").map(function() {return $(this).text().trim()}).get().sort(function(a, b) {
var f = function(d) {[m, d] = d.split("-");return [(new Date()).getFullYear(), m, d];}
var t = new Date();
return Math.abs(t.getTime() - new Date(...f(a)).getTime()) - Math.abs(t.getTime() - new Date(...f(b)).getTime());
});
//Assign Class
$(".grid-item").addClass('red').filter(function() {
return $(this).text().trim() === date[0];
}).removeClass('red').addClass('green');
用于slice数组。通过指定
索引(数组,0,1)我是逐列切片而不是索引(数组,1,0),这将是行方式。 Index将处理数组维度的限制。
Application.WorksheetFunction.Min(Application.WorksheetFunction.Index(arr, 0, 1))
输出为-3
版本2获取相邻值
Application.WorksheetFunction.Index