Всем Доброго времени суток! Можно ли в VBA сделать так, чтобы при копировании значения в ячейке, затем оно вставлялось во все ячейки одного и того же цвета, но только в одну строку???
Всем Доброго времени суток! Можно ли в VBA сделать так, чтобы при копировании значения в ячейке, затем оно вставлялось во все ячейки одного и того же цвета, но только в одну строку???Dмитрий
Private Sub Worksheet_SelectionChange(ByVal Target As Range) Static x Dim cl As Range If Len(x) Then For Each cl In Intersect(Rows(Target.Row), Me.UsedRange) If cl.Interior.Color = vbYellow Then cl.Value = x Next x = "" Else x = Target.Value End If End Sub
[/vba]
Без привязки к диапазонам копирования. [vba]
Код
Private Sub Worksheet_SelectionChange(ByVal Target As Range) Static x Dim cl As Range If Len(x) Then For Each cl In Intersect(Rows(Target.Row), Me.UsedRange) If cl.Interior.Color = vbYellow Then cl.Value = x Next x = "" Else x = Target.Value End If End Sub
Круто!!! А почему не работает через кнопку? Может можно убрать Worksheet_SelectionChange? Если можно побольше комментариев - хочу разобраться. [vba]
Код
Private Sub Worksheet_SelectionChange(ByVal Target As Range) If Me.CheckBox1 Then пример End Sub
Private Sub пример() Static x Dim cl As Range If Len(x) Then For Each cl In Intersect(Rows(Target.Row), Me.UsedRange) If cl.Interior.Color = vbYellow Then cl.Value = x Next x = "" Else x = Target.Value End If End Sub
[/vba]
Круто!!! А почему не работает через кнопку? Может можно убрать Worksheet_SelectionChange? Если можно побольше комментариев - хочу разобраться. [vba]
Код
Private Sub Worksheet_SelectionChange(ByVal Target As Range) If Me.CheckBox1 Then пример End Sub
Private Sub пример() Static x Dim cl As Range If Len(x) Then For Each cl In Intersect(Rows(Target.Row), Me.UsedRange) If cl.Interior.Color = vbYellow Then cl.Value = x Next x = "" Else x = Target.Value End If End Sub