Excel 更改工作表中随机单元格的颜色

Excel 更改工作表中随机单元格的颜色,excel,vba,Excel,Vba,我想随机选择一个单元格并将其绘制成一种颜色,但我不知道如何随机选择一个单元格,我在谷歌上搜索了一下,但没有发现任何有用的东西,我尝试了谷歌提供的所有示例,但没有任何效果 我想将随机生成的单元格保存在一个变量中,然后能够更改其颜色、值等。我们如何才能做到这一点 亚随机细胞 x='随机单元' Rangex.Interior.Color=RGB255,0,0'红色' 端接头 或者甚至返回生成的单元格 Function RandomCell As Cell’单元格的数据类型是什么` x='随机单元' R

我想随机选择一个单元格并将其绘制成一种颜色,但我不知道如何随机选择一个单元格,我在谷歌上搜索了一下,但没有发现任何有用的东西,我尝试了谷歌提供的所有示例,但没有任何效果

我想将随机生成的单元格保存在一个变量中,然后能够更改其颜色、值等。我们如何才能做到这一点

亚随机细胞 x='随机单元' Rangex.Interior.Color=RGB255,0,0'红色' 端接头 或者甚至返回生成的单元格

Function RandomCell As Cell’单元格的数据类型是什么` x='随机单元' Rangex.Interior.Color=RGB255,0,0'红色' 随机单元=x 端函数
例如,您可以输入自己的号码

Dim ColumnNum As Long
Dim RowNum As Long

ColumnNum = WorksheetFunction.RandBetween(1, 50);
RowNum = WorksheetFunction.RandBetween(1, 5000);

' x = Cells(RowNum, ColumnNum)
' x.Interior.Color = RGB(255, 0, 0) ' Red '

' Or do it immediately:
Cells(Row, Column).Interior.Color = RGB(255, 0, 0) ' Red '

使用rnd函数确定行和列

公式为IntuperBound-lowerbound+1*Rnd+lowerbound

因此,假设您可以看到大约25行25列:

    Dim r As Long
    Dim c As Long
    
    r = Int((25 * Rnd) + 1)
    c = Int((25 * Rnd) + 1)
    Debug.Print "row: " & r, "column: " & c
    Cells(r, c).Interior.Color = vbRed
返回单元格:

Function randomizecell() As Range
    Dim r As Long
    Dim c As Long
    
    r = Int((25 * Rnd) + 1)
    c = Int((25 * Rnd) + 1)
    
    Set randomizecell = Cells(r, c)
End Function

Sub colorcell()
    Dim cell As Range
    
    Set cell = randomizecell()
    cell.Interior.Color = vbRed
End Sub

你没有什么电池的规格吗?例如,它也可以是XFD1048576,就像您目前表述问题的方式一样。@JvdV Afaik,一个单元格就是一个单元格。从A1到其他任何地方。谢谢,我如何在不涂漆的情况下返回生成的单元格?所以我可以在函数外部绘制它。