excel - 用于查找范围内所有彩色单元格的脚本

标签 excel vba

我需要创建一个脚本,在给定范围内的每个彩色单元格中键入一个值 我对这一切都很陌生,所以请原谅我的无知。 根据我的阅读,我得出了这个

Sub Macro1()
    Dim colors As Range, found As Boolean

    Set colors = ActiveSheet.Range("D19:CV68")

            found = VBA.IsNull(colors.DisplayFormat.Interior.ColorIndex)
            
            colors = IIf(found, "1", " ")
End Sub

这让我非常接近我所需要的,但不是将 1 仅仅放置在彩色单元格中,而是将 1 放置在范围内的每个单元格中。 我确信有一种非常基本的方法可以做到这一点,但我只是不知道。 我很感激我能得到的任何帮助。 谢谢!

最佳答案

您需要遍历范围中的每个单元格来测试是否没有颜色。

    Dim colors As Range
    Dim cell As Range

    Set colors = Range("D19:CV68")
    
    For Each cell In colors
        If cell.Interior.ColorIndex = xlColorIndexNone Then
            cell.Value = ""
        Else
            cell.Value = 1
        End If
    Next cell

关于excel - 用于查找范围内所有彩色单元格的脚本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/72177151/

相关文章:

python - 如何使用python xlsxwriter将列表列表添加到excel中

html - 通过 F5 或 F8 运行一次/两次但随后出现多个错误的代码

Excel-VBA : Variable Names, 匈牙利符号和变量命名最佳实践

vba - 如何将类名作为参数传递?

vba - Excel VBA : Need Workaround for 255 Transpose Character Limit When Returning Variant Array to Selected Range

vba - CheckSpelling 函数中的类型不匹配

excel - 运行时错误 '1004' : Select method of Range Class failed using ThisWorkbook

android - 在 Android 中从 Web View 编辑 Google 文档

javascript - 将值从 Javascript 复制到 Excel 工作表时出现类型不匹配错误 13

c# - 使用下面行而不是上面行的格式插入 Excel 行