gpt4 book ai didi

excel - 表格背景色灰度排序

转载 作者:行者123 更新时间:2023-12-04 21:53:42 24 4
gpt4 key购买 nike

我在 excel 中有一个名为 grayForm 的表单,我想自动更改灰度级以获取光度数据。我写了下面的代码,但它直到完成后才显示灰度颜色的变化——也就是当达到红色灰度级 255 时。改变“ sleep ”等待时间无济于事。但是,当我插入如图所示的“停止”并手动继续时,它会逐步执行“for 循环”,灰度级变化得很好,因此代码看起来是正确的。需要什么代码更改/添加才能使其更改而不会“停止”中断?

Private Sub CommandButton1_Click()

cOffset = 4
grayForm.Show 0
grayForm.TextBox1.BackColor = RGB(0, 0, 0)
For i = 0 To 16
temp1 = Str(i + cOffset)
temp1 = Replace(temp1, Chr(32), "") 'Remove space " "
nGray = Cells(i + cOffset, "B") 'reads values 0, 17, 31, ... 255 from column B
Range(temp).Select: ActiveCell.Value = nGray
grayForm.BackColor = RGB(nGray, 0, 0)
'Stop
Sleep 200 ' millisecond delay
Next i

End Sub

最佳答案

替换 StopDoEvents .
DoEvents将允许 Excel 自行“重新绘制”。 Sleep()停止执行,这可能是您甚至看不到重绘的原因。

所以试试这个:

For i = 0 To 16
temp1 = Str(i + cOffset)
temp1 = Replace(temp1, Chr(32), "") 'Remove space " "
nGray = Cells(i + cOffset, "B") 'reads values 0, 17, 31, ... 255 from column B
Range(temp).Select: ActiveCell.Value = nGray
grayForm.BackColor = RGB(nGray, 0, 0)
DoEvents
Next i

More informationDoEvents功能。

关于excel - 表格背景色灰度排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48975375/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com