vba код для автоматической установки описанного знака во все столбцы строки, по которой щелкнули - PullRequest
0 голосов
/ 22 января 2020

если я дважды щелкаю в столбце g любой строки, которая определена, мне нужно, чтобы символ отображался в каждом столбце, например, h, i, j, k, l, m строки, дважды щелкаемой в столбце g моего кода VBA это

If Not Intersect(Target, Range("h3:m20")) Is Nothing Then

If Target.Value = "Ð" Then
Target.Value = "Ï"
Exit Sub
End If
If Target.Value = "x" Then Target.Value = "Ð"
If Target.Value = "Ï" Then Target.Value = "x"
If Target.Value = Empty Then Target.Value = "Ð"
End If

If Not Intersect(Target, Range("G3:G20")) Is Nothing Then
If Target.Value = "Ð" Then
Range("G" & Target.Row & "M" & Target.Row).Value = "Ï"
Exit Sub
End If
If Target.Value = "x" Then Range("G" & Target.Row & "M" & Target.Row).Value = "Ð"
If Target.Value = "Ï" Then Range("G" & Target.Row & "M" & Target.Row).Value = "x"
If Target.Value = Empty Then Range("G" & Target.Row & "M" & Target.Row).Value = "Ð"
End If
End Sub

это не работает ... пожалуйста, помогите .... спасибо

1 Ответ

0 голосов
/ 22 января 2020

В ваших Range ссылках отсутствует двоеточие. Вы также упомянули в своем объяснении:

"если я дважды щелкаю в столбце g любой строки, которая определена, мне нужно, чтобы символ отображался в каждом столбце"

Прямо сейчас вы проверяете по Intersect с неправильным Range. Вместо этого попробуйте следующее:

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)

'Only activate when its a cell in range `G3:G20`
If Intersect(Target, Range("G3:G20")) Is Nothing Then Exit Sub

'Do something here with your values and IF statements
Target.Offset(0, 1).Resize(1, 6).Value = "TEST" 'Purely to test

End Sub

Не законченный код, но вы сможете добавить недостающие фрагменты в головоломку внизу.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...