Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/excel/24.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
Vba 查找单元格值并根据单元格值填充其他单元格_Vba_Excel - Fatal编程技术网

Vba 查找单元格值并根据单元格值填充其他单元格

Vba 查找单元格值并根据单元格值填充其他单元格,vba,excel,Vba,Excel,设置: 我有一个值x,可以通过表a单元格中的下拉菜单进行更改。 检查表B中是否存在相同的值,并返回下面同一列中列出的单元格内容,直到第一个空白单元格。再次将这些单元格复制到工作表A 例如: 第1页A列包含一个单元标题。列B有一个employees标题。 从该单元字段中,我可以通过下拉功能选择几个单元销售、营销、编程等 在表B中,您可以找到一组迷你表 每个建筑都有列出的单元。在这6栋建筑中,每列1栋建筑,A-F在同一列中列出了自己的单元。这些单位列出了一些员工的姓名,并以空白单元格作为下一个单位的

设置: 我有一个值x,可以通过表a单元格中的下拉菜单进行更改。 检查表B中是否存在相同的值,并返回下面同一列中列出的单元格内容,直到第一个空白单元格。再次将这些单元格复制到工作表A

例如:

第1页A列包含一个单元标题。列B有一个employees标题。 从该单元字段中,我可以通过下拉功能选择几个单元销售、营销、编程等

在表B中,您可以找到一组迷你表

每个建筑都有列出的单元。在这6栋建筑中,每列1栋建筑,A-F在同一列中列出了自己的单元。这些单位列出了一些员工的姓名,并以空白单元格作为下一个单位的分隔符结束

第2张:A栏

建筑物1-销售 彼得 朱迪 弗兰兹 里科

建筑1-营销 桑迪 亚伦 弗雷德

构建1-编程 谢尔顿 劳拉

表2 B列与Building2-销售相同

现在在工作表A的下拉列表中,我选择值 建筑1-营销 表A中的B栏现在应该填写1号楼营销部门的员工姓名,即桑迪、艾伦和弗雷德

虽然这是一个例子,但第二页中的顺序是这样的

我读到了关于菲尔顿的报道,我认为这是错误的。我也可以在B表中找到X,在下一个值之前计算空白,然后使用值来选择、复制和粘贴这些值。 如何做到这一点

rgds

我希望这能给你一个想法。 您必须根据您的工作表名称和dropdownlist名称等进行一些修改


祝您好运

请向我们展示一些代码,然后我们可以帮助您解决遇到的任何问题。这就是它的工作原理。类似的东西就是我的项目现在看起来的样子。它现在已经可以工作了。工作不是在这台电脑上,虽然我的语法可能是错误的。。。我将在这里尝试:dim cellfinder set cellfinder=某个特定单元格的值dim rngX set rngX=工作表Building1.RangeA:A.findcellfinder set rngY=工作表Building1.RangerngX.EndxlDown worksheetbuilding1.RangerngX,rngY.Copy x destination:=工作表员工.RangeB1。每栋建筑都是这样的。在过去的几天里,我对vba的了解比以往任何时候都多:
Sub Macro1()

Sheets("Feuil2").Select 'selects sheet 2

'finds what you chose in the dropdown list
Cells.Find(What:=Feuil1.MyDropDownList1.value, After:=ActiveCell, LookIn:= _
    xlFormulas, LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:= _
    xlNext, MatchCase:=False, SearchFormat:=False).Activate

'selects from the line below till the line before blank
Range(ActiveCell(2, 1), Range(ActiveCell.End(xlDown).Address)).Select

Selection.Copy 
Sheets("Feuil1").Select
Range("B1").Select
ActiveSheet.Paste

End Sub