【发布时间】:2016-01-11 20:03:25
【问题描述】:
好的...再次返回另一个 Excel 问题。
这一次,我有一个 Excel 工作簿,其中包含 800 种化学品/化合物的化学和物理特性。我有另一个工作簿,其中包含大约 200 种这些化学物质。
我需要在包含 800 种化学品的工作簿中只显示较小工作簿中显示的化学品。从技术上讲,我可以检查所有 800 种化学品并使用“过滤器”功能来取消选择我不想要的所有内容,但显然这需要很长时间,而且肯定有更快的方法。
以下是我认为需要发生的事情:
在两个工作簿中,CAS 编号都是其中一列。我已将我想要显示的化学品的所有 CAS 编号复制到较大工作簿的新列中。我想做的是有一些 VBA 代码,基本上是这样说的:“如果较大工作簿中的 CAS 编号等于较小工作簿中的 CAS 编号,则显示该化学物质。如果不是,则不要显示它.
如果这很难理解,那么我很抱歉,很难用语言表达。
This is what I started doing:
Sub HideRows()
BeginRow = 3
EndRow = 802
ChkCol = 3
For RowCnt = BeginRow To EndRow
If Cells(RowCnt, ChkCol).Value = "A3" Then
Cells(RowCnt, ChkCol).EntireRow.Hidden = True
Else
Cells(RowCnt, ChkCol).EntireRow.Hidden = False
End If
Next RowCnt
End Sub
但我认为这是不对的。有什么想法吗?
【问题讨论】: