通过以下输入,我可以成功地修改单个或一组普通单元:
.Range("C" & i) _
.Characters(WorksheetFunction.Find("NOTE:", Range("C" & i).Value, 1), 100) _
.Font.Bold = True
沿C列的长度移动,并在“ NOTE:”之后加粗所有内容(特别是100个字符,包括找到的文本字符串)
问题是-如果C列中有任何合并的单元格,它将忽略它。我已经进行了一些快速测试-它识别出单元格中有文本,并且我可以将合并后的单元格的内容打印到一个单元格中,该单元格稍后可以找到文本字符串,但对于某些单元格则找不到“注意:”合并单元格本身中的原因
只需从合并范围中取出第一个(左上方)单元格,然后继续执行您的代码即可:
With .Range("C" & i).MergeArea.Cells(1, 1)
lngFound = InStr(1, .Value2, "NOTE:", vbTextCompare)
If lngFound > 0 Then
.Characters(lngFound, 100).Font.Bold = True
End If
End With
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句