Страницы: 1
RSS
пометка Х в первой колонке
 
В ячейку A2 исходной таблицы пишу формулу:
Код
=ЕСЛИ(ЯЧЕЙКА("строка";)=СТРОКА(A2);"Х";"")
Далее планирую растянуть на всю колонку, предназначенную для пометок,
затем добавлю макрос к листу:
Код
Private Sub Worksheet_SelectionChange(ByVal Target As Range) ActiveCell.Calculate End Sub

Хочу добиться чтобы пометка Х ставилась в первой колонке напротив любой активной ячейки на листе, но мне выдает ошибку. Можете ли подсказать в чем ошибка?
 
ошибка в том, что вы не обьясняете в чем задача
формула
=ЕСЛИ(ЯЧЕЙКА("строка";)=СТРОКА(A2);"Х";"")
поставит Х только в строке 2, а в чем ваша задача - загадка
и вообще зачем нужна формула если решили использовать макрос
Изменено: Ігор Гончаренко - 24.09.2022 22:53:46
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете!
 
https://www.planetaexcel.ru/techniques/7/93/

пытаюсь по этому примеру сделать акт.

И самый верхний пост в комментарии девушка написала что можно не в писывать х а использовать данную формулу
 
а без этого примера у вас свои слова есть?
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете!
 
вот что пишет
Изменено: easyfrag 321 - 25.09.2022 00:03:47
 
Цитата
easyfrag 321 написал: Хочу добиться чтобы пометка Х ставилась в первой колонке напротив любой активной ячейки
Если задача в этом, то зачем формула? Ставьте симвод в коде.
И использовать для этого событие SelectionChange - плохая идея: случайно выделили ячейку, и тут же слева появится пометка.
Используйте событие BeforeDoubleClick
 
easyfrag 321,  не вставляйте скопированное - посмотрите, что получилось. Прикрепляйте рисунок файлом.  А если это пример, то нужен не рисунок, а Excel-файл.
Исправьте свой пост.
 
и как оформить это в коде? Можете ли помочь
 
Проверьте двойной клик в диапазоне В2:В100
Код
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
    If Not Intersect(Target, Range("B2:B100")) Is Nothing Then
        Target.Offset(0, -1) = "х" 'русская
        Cancel = True
    End If
End Sub
 
Цитата
easyfrag 321 написал:
и как оформить это в коде? Можете ли помочь
что оформить в коде? как вам помочь? какую задачу решаете?
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете!
 
пишет такую ошибку при 2 клике
Изменено: easyfrag 321 - 25.09.2022 00:03:30
 
У меня работает без ошибки.
Не могу прочитать сообщение об ошибке. А Вы перевести сообщение не в состоянии? Ведь в сети полно переводчиков.
 
Все заработало спасибо, а как чтобы по этому же двойному клику смог удалиться символ x
 
обьясняете задачу - получаете решение
нет задачи - нет решения: это аксиома
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете!
 
Код
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
    If Not Intersect(Target, Range("B2:B100")) Is Nothing Then
        With Target.Offset(0, -1)
          If .Value <> "х" Then
            .Value = "х"  'русская
        Else
                .Value = ""
            End If
        End With
        Cancel = True
    End If
End Sub
 
спасибо
 
Universial
Код
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
    Const char$ = "a"    ' символ для вставки
    Const FontName$ = "Marlett"    ' шрифт (опционально, при "" шрифт не меняется)
    Const marc = 1    ' ячейка для вставки номер или буква столбца  ("B")
'    отслеживаемый диапазон
    Const rAddr$ = "A5:B10"
    ':::::::::::::::::::
    If Not Intersect(Target, Range(rAddr$)) Is Nothing Then
        Cancel = True
        With Target.EntireRow
            .Cells(1, marc).Value = Empty & Chr(-Asc(char) * (.Cells(1, marc).Value = ""))
            If Len(FontName) Then
                If Len(.Cells(1, marc)) Then .Cells(1, marc).Font.Name = FontName Else .Cells(1, marc).Style = "Normal"
            End If
        End With
    End If
End Sub


Мяу - пометил тему  :)
Изменено: RAN - 25.09.2022 17:33:56
 
off
Цитата
RAN написал:
Universial
это на каком языке, если кошачий не считать?
По вопросам из тем форума, личку не читаю.
 
Не знаю.
translate.google.ru принял за пиндосный

А я так вообще только буковки знаю, и то через одну или две.
 
off
Цитата
RAN написал:
translate.google.ru принял
да, но все ж Universal
По вопросам из тем форума, личку не читаю.
 
Off
Вот где надо проверять английские слова: https://www.merriam-webster.com/dictionary/universal
Там вверху страницы строка поиска есть
Изменено: New - 25.09.2022 23:53:32
Страницы: 1
Наверх