以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  EXCEL报表字体颜色  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=187416)

--  作者:atlas77
--  发布时间:2023/7/16 22:06:00
--  EXCEL报表字体颜色
同一单元格内不同变量能设置不同颜色吗?
--  作者:有点蓝
--  发布时间:2023/7/16 22:14:00
--  
这种就无法在模板处理了。可以生成报表后,另外使用vba代码区控制:http://www.foxtable.com/webhelp/topics/2121.htm
--  作者:atlas77
--  发布时间:2023/7/16 22:22:00
--  
能举个简单的例子吗?

比如说这个:
<"编号:" & [编号]>
[此贴子已经被作者于2023/7/16 22:24:05编辑过]

--  作者:有点蓝
--  发布时间:2023/7/16 22:39:00
--  
都说无法在模板里处理了。要生成结果后,再另外使用vba打开报表,找到对应的单元格,然后使用vba去控制单元格里的字符

设置单元格字符串中一部分字符的字体格式:

利用Range对象的Characters属性,定位到要设置格式的字符,然后利用Font对其进行设置。Characters中的第一个参数为起始位置,第二个参数为字符长度。如,下面的代码就是对“Foxtable操控Excel全攻略”中的“操控”两字进行格式设置:

Dim App As New MSExcel.Application
Dim Wb As MSExcel.WorkBook = App.WorkBooks.Open("D:\\Report.xls")
Dim Ws As MSExcel.WorkSheet = Wb.WorkSheets(1)
Dim Rg As MSExcel.Range = Ws.Range("A1")
Rg.Value = "Foxtable操控Excel全攻略"
Dim Chr As MSExcel.Characters = Rg.Characters(9,2)
With Chr.Font
    .Name = "黑体" \'字体
    .Size = 20 \'字号
    .Bold = True   \'加粗
    .Italic = True \'斜体
    .ColorIndex = 3\'颜色
End With
App.Visible = True