Как зачеркнуть текст в VBA - программно?

Есть ли способ зачеркнуть текст в VBA (Access) программно?

Например; Когда я нажимаю кнопку, я хочу изменить Hello World! на H̶e̶l̶l̶o̶ ̶w̶o̶r̶l̶d̶!̶


Редактировать № 1: Только что понял, что в VBA нет возможности зачеркивания (насколько я знаю), поэтому на этот вопрос дан ответ. Для тех, кому интересно, возможно ли это... Скорее всего, нет.


person Paramone    schedule 24.04.2017    source источник
comment
Возможно, вы должны указать, какой именно. Excel/Word/и т. д. В Excel попробуйте ActiveCell.Font.Strikethrough = True   -  person PatricK    schedule 24.04.2017
comment
@PatricK Ах, извини. Я имею в виду Visual Basic для приложений (Access)   -  person Paramone    schedule 24.04.2017
comment
Не работали с Access VBA, начните с Acces MSDN   -  person PatricK    schedule 24.04.2017
comment
@PatricK Да, я понял, ха-ха. Однако спасибо за ваш ответ.   -  person Paramone    schedule 24.04.2017


Ответы (1)


Нашел это, когда гуглил по той же проблеме:

  1. Создайте 2 текстовых поля с именами txtText и txtOverlay.
  2. Сделайте эти 2 текстовых поля одинакового размера либо с помощью кода, либо вручную.
  3. Поместите txtOverlay точно поверх txtText, опять же, либо с помощью кода, либо вручную.
  4. Запустите следующий код, где это необходимо:

    Const conTransparent = 0
    
    'Should be a Fixed Width Font
    Me![txtText].FontName = "Courier New"
    Me![txtText].FontSize = 12
    Me![txtText] = "Your text"
    
    Me![txtOverlay].FontName = "Courier New"
    Me![txtOverlay].FontSize = 12
    Me![txtOverlay].BackStyle = conTransparent
    Me![txtOverlay] = String(Len(Me![txtText]), "-")
    

Кредит принадлежит тому, кто это придумал: https://bytes.com/topic/access/answers/722250-strikethrough-text

Надеюсь, поможет!

person Angelin Calu    schedule 24.04.2017