VBA代码在Excel中,选择基于两个标准
我希望发生的是“PP1 & PP2缺乏列表”上按下一个按钮电池。VBA代码在Excel中,选择基于两个标准
当这个按钮被按下我想要的微距拍摄距离D5和F5的值,然后找到这两个值出现在“PP1油漆计划”单独的列行。
然后将突出列A:AF找到的行下面的所有内容复制并粘贴此回至A2。
我已经尝试了一些循环代码,找到代码,但到目前为止,我还没有运气,我希望你们中的一个辉煌的人们可以摆脱对这个问题的一些新思维。
R3uk是正确的,但你正在寻找新的想法。
为什么不结合一个公式,可以发现对与使用行号下面复制一切简单的宏您的条件匹配“PP1油漆计划”的行号。不需要循环!
将下面的公式放入与D5和F5单元相同的工作表上的空单元格中。我在宏中使用了A1。更改搜索列accoridingly(我使用$ D:$ D和$ F:$ F)。重要提示:按SHIFT + CTRL + ENTER将{}添加到此公式。
= MATCH(D5 & F5, 'PP1油漆计划' $ d:$ d & 'PP1油漆计划' $ F:$ F,0)
下一页复制这些代码,按需要进行更改。它将一个名为intFoundRow的变量设置为包含该公式的单元格(将A1更改为您的单元格引用)。然后它复制该行下面的所有内容并将其粘贴到目标表单中。我不确定这是什么,所以请更改文字。
Sub CopyShortageData()
intFoundRow = Sheets("PP1 & PP2 Shortage list").Range("A1").Value
Range(Sheets("PP1 Paint plan").Range("A" & intFoundRow & ":AF" & intFoundRow), Sheets("PP1 Paint plan").Range("A" & intFoundRow & ":AF" & intFoundRow).End(xlDown)).Copy
Sheets("Your destination sheet").Range("A2").PasteSpecial xlPasteAll
End Sub
感谢戈登,我得到一个运行时错误1004在这行代码表(“PP1油漆计划”)范围(“A”&intFoundRow&“:AF”和intFoundRow)。选择 –
你好,对不起,我没有测试过代码,也没有使用“select”语句,所以我更改了代码并测试了它的工作原理。 – Gordon
戈登你是一个明星! 在模块中完美工作,但在单击activeX按钮时从未工作。但是,现在已经通过在按钮本身上编码来解决这个问题: Module2.CopyShortageDataPP1 无论如何非常感谢和问候。 乔 –
请告诉我们你已经尝试了什么,你不会有这样的答案...在这里看到一个例子:http://stackoverflow.com/a/30162390/4628637 – R3uK
参见[如何提问](http://stackoverflow.com/help/how-to-ask)来学习如何设置问题以获得有效的答案。 –