VBA的新手。
在每张纸上,我试图复制适合RGB轮廓的单元格并将其粘贴到同一张纸的T2中。
模块正在运行,但是什么也没发生。
预先感谢
Sub CopyColor()
Dim rCell As Range
For Each rCell In ActiveSheet.UsedRange
If rCell.Interior.ColorIndex = RGB(112, 173, 71) Then
rCell.Select
rCell.Copy
rCell("T2").PasteSpecial Paste:=xlPasteFormats
End If
Next rCell
End Sub
更新:糟糕,我的意思是PasteValues。让它在活动工作表上运行,但我需要它遍历整个工作簿。尝试了此修改,但无效:
Sub CopyColor()
Dim rCell As Range
Dim wk As Worksheet
For Each wk In ThisWorkbook.Worksheets
For Each rCell In ActiveSheet.UsedRange
If rCell.Interior.Color = RGB(112, 173, 71) Then
rCell.Copy
Range("T2").PasteSpecial Paste:=xlPasteValues
Application.CutCopyMode = False
End If
Next rCell
Next wk
End Sub
答案 0 :(得分:0)
尝试以下操作:
resolve() {
return this.itemsService.getAll()
.pipe(
tap(
filter(items=>items.length > 0)
do(items=>this.itemSelectedService.setAsSelected(items[0]))
)
);
}
另一种可能性:
Sub CopyColor()
Dim rCell As Range
For Each rCell In ActiveSheet.UsedRange
If rCell.Interior.Color = RGB(112, 173, 71) Then
rCell.Copy
Range("T2").PasteSpecial Paste:=xlPasteFormats
Application.CutCopyMode = False
End If
Next rCell
End Sub
答案 1 :(得分:0)
您的代码很少有问题:
ColorIndex
是一种颜色索引,与RGB值相反rCell.Select
不执行任何操作rCell("T2")
对我来说没有任何意义,应为Range(...)
因此,更正的版本可能是:
Sub CopyColor()
Dim rCell As Range
For Each rCell In ActiveSheet.UsedRange
If rCell.Interior.Color = RGB(112, 173, 71) Then
rCell.Copy
Range("C1").PasteSpecial Paste:=xlPasteFormats
End If
Next rCell
End Sub