Новости:

Теперь на форум можно залогиниться / зарегистрироваться с помощью ВКонтакте. Уже существующие пользователи могут связать свою учетную запись с аккаунтом ВКонтакте одним кликом в профиле пользователя http://forum.msexcel.ru/index.php?action=profile;area=account

Главное меню

Автозавершение ввода в ячейку.

Автор GWolf, 09.02.2021, 07:21

« назад - далее »

GWolf

Доброго времени суток, друзья!

Решил облегчить себе жизнь. И сваял вот такой код:               

sumOplat = 600
vidOplat="Кс"

With ActiveCell
     If sumOplat > 0 Then
         If .Text <> "" Then
              .FormulaR1C1 = .FormulaR1C1 & "+" & sumOplat & "+" & "Ч(" & Chr(34) & vidOplat & Chr(34) & ")"
         Else
              .FormulaR1C1 = "=" & sumOplat & "+" & "Ч(" & Chr(34) & vidOplat & Chr(34) & ")"
         End If
     End If
     'эмуляция нажатия клавиш
     'App.SendKeys ("{F2}")
     'App.SendKeys ("{Enter}")
     Cancel = True 'отменить выделение ячейки
End With

результатом этого действа должно стать:
- в ячейке: =600+Ч("Кс")
- пользователь видит в ячейке: 600.
Оно так и происходит, НО, только после того, как я нажимаю F2 и Enter.
А хотелось бы, что бы макрос сам отрабатывал все чисто. Эмуляция нажатия клавишь не помогла: - результат работы макроса:
- в ячейке: =600+Ч("Кс")
- пользователь видит в ячейке: #ИМЯ?

Что то я упустил, а вот что? Не подскажут знатоки?
Всем откликнувшимся, Большое Спасибо!
Путей к вершине - множество. Этот один из многих!

Serge 007

Здравствуйте

.FormulaLocalдолжно помочь

Типа так:
sumOplat = 600
vidOplat = "Кс"

With ActiveCell
     If sumOplat > 0 Then
         If .Text <> "" Then
              .FormulaLocal = .FormulaR1C1 & "=+" & sumOplat & "+" & "Ч(" & Chr(34) & vidOplat & Chr(34) & ")"
         Else
              .FormulaLocal = "=" & sumOplat & "+" & "Ч(" & Chr(34) & vidOplat & Chr(34) & ")"
         End If
     End If
End With
Бесплатная помощь: www.excelworld.ru
Платная помощь: sergeyizotov@excelworld.ru
Ю-money: 41001419691823 | WMR:126292472390

GWolf

СУПЕР! Спасибо! Все сработало!
Путей к вершине - множество. Этот один из многих!