【发布时间】:2022-02-01 10:28:15
【问题描述】:
我正在尝试遍历工作表并查找字体大小为 22 的单元格。这是我目前所拥有的,但是我不断返回第一个找到的术语的值,因为它遍历床单。我假设我需要在某个地方合并一个 FindNext?
Sub FindFormatCell()
Dim ws As Worksheet
Dim rngFound As Range
With Application.FindFormat.Font
.Size = 22
End With
For Each ws In Worksheets
If ws.Tab.ColorIndex = 20 And ws.Visible = xlSheetVisible Then
Set rngFound = Cells.Find(What:="", SearchFormat:=True)
Debug.Print rngFound
End If
Next ws
Application.FindFormat.Clear
End Sub
【问题讨论】:
-
Cells.Find()将默认为活动表,因此您需要使用ws.Cells.Find()。是的,您确实需要在循环中运行 Find(),并存储找到的第一个单元格的地址,这样您就知道 Find() 何时循环回来。例如参见stackoverflow.com/a/55349092/478884(您需要修改它以添加您的FindFormat条件)