我目前有一列数据(命名范围VoyCode_NoBlanks
),它使用以下公式从另一列(范围VoyCode_Blanks
)合并:
{=IF(ROW()-ROW(VoyCode_NoBlanks)+1>ROWS(VoyCode_Blanks)-COUNTBLANK(VoyCode_Blanks),"",INDIRECT(ADDRESS(SMALL((IF(VoyCode_Blanks<>"",ROW(VoyCode_Blanks),ROW()+ROWS(VoyCode_Blanks))),ROW()-ROW(VoyCode_NoBlanks)+1),COLUMN(VoyCode_Blanks),4)))}
(感谢@ForwardEd公式,Dynamic ranges again - once more, with text strings)
我有什么方法可以修改它以按升序列出这些值而不仅仅是它们出现的顺序?
我想避免额外的列或行,VBA
答案 0 :(得分:1)
width
这是上一个公式的数组版本。请记住使用 CONTROL + SHIFT + ENTER 输入。当你在公式栏中看到公式时,你会知道你已经做到了。您无法手动输入这些内容。这可以是单个单元阵列公式。这意味着你在B2中做到了。然后将其复制到B3或从列表末尾拖到B3。
不确定是否需要上面的单元格是否为空白。我从website中取出它。
进行一些阅读,只要B1中的值不是列表的appart,就有可能前一个常规公式和这个数组公式都能正常工作。