【问题标题】:MS Access 2007 VBA - Can I Add font properties in VB Format$ functionMS Access 2007 VBA - 我可以在 VB Format$ 函数中添加字体属性吗
【发布时间】:2011-03-08 06:33:39
【问题描述】:

如果我有一个 DAO 记录集返回值,并且我使用 Format$,有没有办法设置仅包含在 Format$ 部分中的字体属性?

例如我有这个:

"Metric #43 = " & Format$(rs!Metric43, "Yes/No")

所以这实际上是用于 ppt 自动化,而不是访问表单。我希望第一个字符串是非粗体的,并且返回的值是粗体的。所以我有一个 ppt 模板用于完成此操作,其中包含我引用的文本框。默认情况下,文本框设置为非粗体,我想知道是否可以在 Format$ 部分中设置一些字体属性来获得我想要的位置??

可能完全关闭,但只是想知道

谢谢 贾斯汀

【问题讨论】:

  • SQL 没有字体属性,所以这是一个表示层问题。无论如何,这不是一个访问问题。
  • 哦...format$函数是SQL的一部分吗??我不知道。我想我只是将问题命名为访问问题,因为我使用访问表单来触发事件,使用 SQL 语句创建将数据移动到 ppt 的记录集,而 rs!metric#43 是其中的一部分......虽然我没有意识到 Format$ 是 SQL 的一部分
  • Format() 不是 SQL 的一部分,但如果您在 Access 中运行的 SQL 语句中使用它,则 Access 表达式服务会负责处理它的使用。你说你在记录集中使用它,所以这是一个 SQL 上下文。我不确定从 PowerPoint 执行的 SQL 是否会使用 Access/Jet/ACE 表达式服务。如果您使用 ODBC,我敢肯定它不会,但使用 DAO 记录集,那就是另一回事了。
  • 无论如何,字体是表示层的问题,而不是数据检索层的问题。
  • 啊....我明白了。好吧,我不知道我问的时候是否离题,但我认为这是可能的。不过我明白了……谢谢!

标签: ms-access vba automation ms-access-2007


【解决方案1】:

你不能使用format命令,但是你可以使用power point中的文本框对象,设置字体和文本以及框。

这段代码来自PP内部,但只是为了自动化而修改它:

Dim strT     As String
Dim sp       As Shape

strT = "Yes/No"

Set sp = Application.ActivePresentation.Slides(1).Shapes(2)

sp.TextFrame.TextRange = strT
sp.TextFrame.TextRange.Characters(1, 3).Font.Bold = True
sp.TextFrame.TextRange.Characters(1, 3).Font.Name = "Arial"
sp.TextFrame.TextRange.Characters(1, 3).Font.Size = 18

所以,可以设置字体、字体名称和大小。

【讨论】:

  • 是的,效果很好!非常感谢!实际上,我已经在进行引用,就像您在上面传递数据时所做的那样,只需要添加 .cahracter 等!我很感激!
猜你喜欢
  • 2017-01-16
  • 1970-01-01
  • 2017-09-17
  • 2018-07-06
  • 1970-01-01
  • 1970-01-01
  • 2016-11-25
  • 1970-01-01
  • 2013-05-03
相关资源
最近更新 更多