Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/excel/27.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/sorting/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Excel中数据的自动提取和排序_Excel_Sorting_Vba - Fatal编程技术网

Excel中数据的自动提取和排序

Excel中数据的自动提取和排序,excel,sorting,vba,Excel,Sorting,Vba,我有一个债务表(名称、等级、描述、余额、FMV、IR和付款/生产任务)。我希望能够在此表中输入债务信息(我们称之为表1),然后自动将数据填充到另一个表中(我们称之为表2),并按债务值升序自动排序。我桌上只允许有30笔债务。我想忽略表1中空白的任何债务,而不是将其纳入表2中。现在我正在使用VLOOKUP=VLOOKUP(1,$I$9:$N$41,3,0)和RANK=RANK(K9,K9:K41,1)(当然是示例)的组合进行拉取,但当我有重复的列组时(我正试图避免),这会留下一堆N/a。这是我的桌子

我有一个债务表(名称、等级、描述、余额、FMV、IR和付款/生产任务)。我希望能够在此表中输入债务信息(我们称之为表1),然后自动将数据填充到另一个表中(我们称之为表2),并按债务值升序自动排序。我桌上只允许有30笔债务。我想忽略表1中空白的任何债务,而不是将其纳入表2中。现在我正在使用VLOOKUP
=VLOOKUP(1,$I$9:$N$41,3,0)
和RANK
=RANK(K9,K9:K41,1)
(当然是示例)的组合进行拉取,但当我有重复的列组时(我正试图避免),这会留下一堆N/a。这是我的桌子:

表1:

表2:


我需要一些帮助。

为了让您开始,这里有一些关于如何完成您所要求的内容的高级说明

  • 查看工作表更改事件。使用此技术可以检测何时更改表1中的单元格(添加或删除债务)。这将触发更新表2的宏
  • 一旦检测到表1中的变化,应发生以下情况:

  • 清除表2中的所有数据

  • 循环遍历表1中的所有债务,并将单元格值写入表2(债务)

  • 重新组织表2中的数据


  • 由于您在vba中操作数据,我将避免使用工作表函数,如“vlookup”和表2中的其他函数。您不需要任何工作表函数。您的最终产品表2将显示为您手动输入的数据。

    我还没有使用VBA,但认为它可能有用。你能不能碰巧知道一些好的消息来源让我绞尽脑汁呢?stackoverflow是我的首选消息来源,所以你说得对,但你需要知道该问什么。如果您以前从未编写过代码,那么开始编写代码将非常困难。您使用excel vba标记了您的问题,因此我认为您可能有一些背景知识。可以在excel中录制宏,然后在vba编辑器(ALT+F11)中查看录制器生成的vba代码。这是一个很好的起点。对于使用vba的初学者来说,最痛苦的事情是Excel的vba编辑器没有自动完成或自动格式化功能。祝你好运