当前位置: 首页 > 知识库问答 >
问题:

工作簿的Sheet1包含基于某些条件的其他工作表的名称

聂风史
2023-03-14
Sub CheckColor()
Dim Row
For Row = 2 To tsheet.UsedRange.Rows.Count
For chkcol = 1 To Sheet1.UsedRange.Columns.Count
If tsheet.Cells(Row, chkcol).Interior.ColorIndex = 3 Then
    'How to report the corresponding sheet name in sheet 1???
End If
Next
Next Row

共有1个答案

程卓君
2023-03-14

首先,我认为将range.find()与FindFormat一起使用会更加高效:

Private Sub test()
    Application.FindFormat.Clear
    Application.FindFormat.Interior.ColorIndex = 3

    Range("A1:C3").Find(What:="", LookAt:=xlPart, SearchFormat:=True).Value = "test"
End Sub

对于您的主要问题,我认为您首先需要确定是要为所有工作表执行代码,还是要为子集执行代码。如果是针对所有工作表,那么您可以简单地将上面的代码包装在Worksheets集合的for each循环中。

如果您需要对工作表的子集执行此代码,那么您可以使用规则(前4个字符=“ABCD”)或在数组中硬编码它们。

 类似资料:
  • 我得到了这个错误: 工作簿已包含此名称的工作表 行应该检查工作簿是否已经包含此名称的工作表,但它不工作。我仍然有错误。 谢谢你的帮助!

  • 我从学习Spring开始,创建基本项目,创建数据库,插入值,然后在web浏览器中打印。我的问题是,当我把RestController放在同一个包中,就像main class一样--这是可以的,但是我想把它分发到其他包中,并且当我创建新包时,移动RestController就不起作用了。让met解释: 我的项目看起来像: 我的pom.xml看起来像 它是自动生成的,我只写一个依赖项

  • 本文向大家介绍excel-vba 检索活动工作簿中的所有工作表名称,包括了excel-vba 检索活动工作簿中的所有工作表名称的使用技巧和注意事项,需要的朋友参考一下 示例            

  • 我使用这段代码将工作簿中的每一张工作表复制到一个新的工作簿中,它工作得很好,但它颠倒了工作表的顺序,是否有任何办法阻止它这样做? 我正在复制所有的工作表,这样我就可以将它保存为不同的文件扩展名,这是我发现唯一有效的方法。

  • 我有一个工作簿,宏不起作用,基本上只是从单元格A3上下复制每个工作表中的值,然后连续将每个值粘贴到新的摘要工作表中。 当我真的创建了一个新工作簿,并将我所有的工作表复制粘贴到新工作簿中时,一切都很好。但如果我继续写旧的工作手册,就会出现错误 选择工作表类的方法失败 在我使用与我复制的完全相同的工作表创建的其他2个工作簿中,它没有失败...为什么是这个特定的工作簿? 我关闭所有其他工作簿以避免Act