如何在 VBA 中删除文本 - 以编程方式?

Posted

技术标签:

【中文标题】如何在 VBA 中删除文本 - 以编程方式?【英文标题】:How to strikethrough text in VBA - Programmatically? 【发布时间】:2017-04-24 06:36:55 【问题描述】:

有没有办法以编程方式删除 VBA 中的文本(Access)

例如;当我点击一个按钮时,我想将Hello World! 更改为H̶e̶l̶l̶o̶ ̶w̶o̶r̶l̶d̶!̶


编辑 #1: 刚刚意识到 VBA 中没有删除线的可能性(据我所知),所以这个问题得到了回答。对于那些想知道这是否可能的人.. 很可能不是。

【问题讨论】:

有可能,你应该提到哪一个。 Excel/Word/etc.在Excel中,试试ActiveCell.Font.Strikethrough = True @PatricK 啊,对不起。我的意思是 Visual Basic for Applications (Access) 没学过Access VBA,从Acces MSDN开始 @PatricK 是的,我想哈哈。不过感谢您的回答。 【参考方案1】:

在谷歌搜索同一问题时发现了这个:

    创建 2 个名为 txtTexttxtOverlay 的文本框。 通过代码或手动使这 2 个文本框的大小完全相同。 再次将txtOverlay 放在txtText 的顶部,可以通过代码或 手动。

    在适当的地方运行以下代码:

    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

希望对你有帮助!

【讨论】:

以上是关于如何在 VBA 中删除文本 - 以编程方式?的主要内容,如果未能解决你的问题,请参考以下文章

如何以编程方式删除 Excel UDF

请教,使用Excel VBA编程,如何在文本框中具有右键功能?然后可以复制/粘贴。谢谢。

如何使用 VBA 以编程方式添加引用

如何以编程方式删除 UITextField 的内容?

如何以编程方式将 .xlam 插件(作为对象)添加到 vba?

vba中如何将单元格内容强制转换为文本类型?