我正在尝试使用VBA将一些文本插入到PowerPoint TextRange
中,我使用这样的内容:
ActiveWindow.Selection.SlideRange.Shapes("rec1").TextFrame.TextRange.Text = "Hi"
但是,我无法弄清楚如何以编程方式应用粗体,斜体和下划线(我没有看到.RichText属性或类似的东西)。
我所拥有的是一些简单的HTML文字,其中包含我希望转换的粗体,斜体和带下划线的文字。
怎么做?
答案 0 :(得分:8)
使用TextRange
的{{1}},Characters
,Words
,Sentences
和Runs
对象可轻松完成此操作Paragraphs
对象设置Bold,Underline和Italic(以及其他属性)。例如:
Font
答案 1 :(得分:4)
尝试查看MSDN's documentation上的TextRange object。它包含如何访问TextRange对象的Font属性的示例。
编辑:您可以通过以下方式以编程方式访问Bold和Italics等内容:
TextRange.Font.Bold = msoTrue
编辑编辑:有几种方法可以只选择文本范围内的某些文本。请参阅以下内容:
根据this link中的相同内容,您可以使用这些方法之一选择文本的一部分,并以编程方式设置字体。例如:
Application.ActiveDocument.Pages(1).Shapes(2) _
.TextFrame.TextRange.Words(Start:=2, Length:=3) _
.Font.Bold = True
该例子来自Words Method链接。
答案 2 :(得分:3)
除了上面的答案之外,你应该尝试命名你将要改变的对象,因为在演示文稿中选择它们可能会使PowerPoint表现得很奇怪。创建一个新的TextRange对象并将其设置为这样。
dim mytextrange As TextRange
Set mytextrange = ActiveDocument.Pages(1).Shapes(2).TextFrame.TextRange
mytextrange.Words...
答案 3 :(得分:0)
您可以通过以下方法更改特定文本的字体:
CloudStorageAccount storageAccount = CreateStorageAccountFromConnectionString(storageConnectionString);
CloudTableClient tableClient = storageAccount.CreateCloudTableClient(new TableClientConfiguration());
CloudTable table = tableClient.GetTableReference("order_details");
if (await table.CreateIfNotExistsAsync())
{
Console.WriteLine("Created Table named: order_details");
}
else
{
Console.WriteLine("Table order_details already exists");
}