2014-05-12 33 views
-1

我有来自郊区,这发生在我的按字母顺序排列的电子表格的列表中的源及其数据的ActiveX组合框。郊区有一个分配给他们一个级别,但它是重要的是,他们从我的组合框中出现的顺序是根据排名。他们需要按照字母顺序保留在电子表格中。排序的ActiveX框列表数据

有没有在Excel这样做,有或没有VBA的一种方式?

+0

我认为有两种方式。你是对的,一个是'VBA',另一个是使用'Helper Range',你有另一个基于等级的列表。你可以写一个公式,它根据等级排列列表。 – L42

+0

谢谢L42。你的意思是采取我目前的名单,根据排名(其他地方)对它进行排序,然后将组合框引用到该列表中? – Nimo

+0

很酷。这是正确的。或者你可以尝试什么让张贴:) – L42

回答

0

一种方式是按等级进行排序,填充框,然后重新按字母顺序排序恢复到原来的状态。

Set r = Sheet1.Range("C4:D7") ' or wherever your data is located 
r.Sort r.Columns(2), xlAscending ' sort by rank 
Sheet1.ComboBox1.List = WorksheetFunction.Transpose(r.Columns(1)) 
r.Sort r.Columns(1), xlAscending ' sort by suburb name 
+0

感谢您的建议。我想我可能会在其他地方有一个“隐藏的”帮助名单,这些名单可以排在第一位。 – Nimo