Vba 将所选内容下移一行,并在更改其他工作表时将字体颜色从红色更改为黑色
我有一个vba代码,当发生更改时,它可以很好地将一张图纸的选择保持在同一单元格中 现在,我需要一个vba代码来将所选内容下移一行,并在另一张纸(sheet1 a列)中的字体颜色从红色更改为黑色 当前代码:Vba 将所选内容下移一行,并在更改其他工作表时将字体颜色从红色更改为黑色,vba,excel,Vba,Excel,我有一个vba代码,当发生更改时,它可以很好地将一张图纸的选择保持在同一单元格中 现在,我需要一个vba代码来将所选内容下移一行,并在另一张纸(sheet1 a列)中的字体颜色从红色更改为黑色 当前代码: Private Sub Worksheet_Change(ByVal Target As Range) If Not Intersect(Target, Me.Range("A4")) Is Nothing Then Application.EnableEvents = False Me.Ra
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Me.Range("A4")) Is Nothing Then
Application.EnableEvents = False
Me.Range("A5").Value = Target.Value
Target.Select
Application.EnableEvents = True
End If
End Sub
因此,当对Sheet7单元格A4进行更改时,我需要Sheet1列a中的选择删除一行,并将字体颜色从红色更改为黑色。请帮助 我还没有测试过这个,但应该是这样的
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Me.Range("A4")) Is Nothing Then
Application.EnableEvents = False
Me.Range("A5").Value = Target.Value
Target.Select
Sheet1.Range("A" & Target.row + 1).Interior.Color = RGB(0, 0, 0)
Application.EnableEvents = True
End If
End Sub
试试这个。同样,未经测试。但我注释掉了颜色变化,以防Sheet1列A中的文本为黑色。如果是的话,你就看不到文本了
Private Sub Worksheet_Change(ByVal Target As Range)
Dim lastRow As Long
lastRow = .Cells(.Rows.Count, "A").End(xlUp).Row
If Not Intersect(Target, Me.Range("A4")) Is Nothing Then
Application.EnableEvents = False
Me.Range("A5").Value = Target.Value
Target.Select
Sheet1.Range("A" & lastRow + 1).Value = Target.Value
' Sheet1.Range("A" & lastRow + 1).Interior.Color = vbBlack
Application.EnableEvents = True
End If
End Sub
你试过什么?难道你不需要在那里写一行字,比如说
Sheets(“Sheet1”).Range(“a”&Target.row”).Offset(1,0)。Font.Color=RGB(0,0,0)
。。。你把这个工作表\u Change()
事件放在哪张纸上了?嗨,布鲁斯。这对我不起作用。工作表更改在我的工作表7中。谢谢这只工作了一次。每次更改后,它都应该下移一行,最后创建一个列表。有什么建议吗?谢谢@lstrick-不清楚-是否希望颜色向下移动一个单元格,而不考虑表单7中的目标
单元格?这就是问题所在。。。。第一个问题不清楚。如果在Sheet7中选择同一单元格,则希望sheet1中的黑色单元格再向下增加一行,而不仅仅是一行?当目标单元格发生变化时(由于内容被扫描到excel中而发生变化),它会将目标A4中的数字拉到另一张表中。我需要从A4扫描这些数字,形成一个列表。在其他地方,数字会被一遍又一遍地扫描到excel中。当有更改时,原始VBA代码将单元格选择保持在原位,以节省人员扫描的时间。但是现在,我们想要形成一个所有“是”产品的列表(我根据C4中的输出判断是否是)。这些“是”产品,我需要输入一个列表。当扫描仪不需要停止时,我正在努力使其成为一个连续的过程。