Excelmacros
我需要编写一个excelmacros,以便在(a:a)的范围内,如果有任何值为Closed,那么应该隐藏整行。 如何做…
我不能告诉你如何做到这一点,因为我不知道什么是封闭的细胞,但让我们来看看如何find它。
当我想在一个程序化的macros程序中做某些事情时,我不知道代码,我创build一个loggingmacros,然后分析代码。 在你的情况下,我会做的是我会logging一个macros,我closures一个单元格(并取消closures检查发生在这两种情况下),然后我会select一行并隐藏它。 它可以是单元格closures的行。 停止macros,并检查代码。 它将按顺序排列,因此通常很容易查明所需的代码行。
伪Excel代码应该像这样
对于行= 1到MaxRow 对于col = 1到MaxCol 如果单元格(行,列).IsClosed然后'用macros代码来检查是否closures代码 行(行)。隐藏'用macros用于隐藏行的代码replace 万一 下一个col 下一行
希望有所帮助。
编辑:如果它与一个string值有关(例如当它写的很近),那么你定义一个范围并检查它的值(例如:Range(“A1”)。值应该给你单元格A1的值
目前尚不清楚“封闭”是什么意思。 这只是看你在工作表上,并没有限制的范围大小为@DavidBruenelle(这是更好的做法),但这个替代macros可能会更简单,让你明白
Sub hideClosed() For Each cell In Range("A:A") If cell = "Closed" Then Rows(cell.Row()).EntireRow.Hidden = True Next End Sub