VBA içinde, PPT slaydında hepsi aynı metin kutusu (WarningData) içinde çıktılarının olduğu birden çok alt birimim var. Örneğin, Sub 1 bir kullanıcı seçimini (bir GUI içindeki bir açılır menüden yaptıkları bir seçim) alır ve bunu metin kutusunun üst kısmına ekler. Alt 2, bu satırın altında başka bir metin satırı ekler. Alt 3, bunun altında ek metin ekler. Aynı yazı tipine sahip olmak için Sub 1 ve 2'ye ihtiyacım var, ancak Sub 3'ün farklı bir fontu olması gerekiyor. VB VBA'da aynı Metin Kutusu'ndaki Metin Yazı Tipini Değiştir
Private Sub 3()
Call Dictionary.Call2Action
ComboBoxList = Array(CStr(ComboBox7))
For Each Ky In ComboBoxList
On Error Resume Next
'If nothing is selected in ComboBox7 and TextBox9, do nothing and exit this sub.
If ComboBox7 = "" And TextBox9 = "" Then
Exit Sub
'Otherwise, if either has a selection, insert selected text.
ElseIf ComboBox7 <> "" And TextBox9 = "" Then
ActiveWindow.Selection.SlideRange.Shapes("WarningData").TextFrame2.TextRange = _
ActiveWindow.Selection.SlideRange.Shapes("WarningData").TextFrame2.TextRange & vbCrLf & vbCrLf & dict7.Item(Ky)(0)
ElseIf ComboBox7 = "" And TextBox9 <> "" Then
ActiveWindow.Selection.SlideRange.Shapes("WarningData").TextFrame2.TextRange = _
ActiveWindow.Selection.SlideRange.Shapes("WarningData").TextFrame2.TextRange & vbCrLf & vbCrLf & TextBox9
End If
Next
Set dict7 = Nothing
End Sub
bu Herhangi bir fikir
eğer
:Private Sub 1() 'Sub 2 is very similar.
Call Dictionary.WindInfo
'Sets the font for the warning information text.
With ActiveWindow.Selection.SlideRange.Shapes("WarningData").TextFrame2.TextRange.Font
.Size = 24
.Name = "Calibri"
.Bold = msoTrue
.Shadow.Visible = True
.Glow.Radius = 10
.Glow.Color = RGB(128, 0, 0)
End With
ComboBoxList = Array(CStr(ComboBox3), CStr(ComboBox4))
For Each Ky In ComboBoxList
On Error Resume Next
'If nothing is selected in ComboBox4, do nothing and exit this sub.
If ComboBox4 = "" Then
Exit Sub
ElseIf ComboBox3 = "" Then
ActiveWindow.Selection.SlideRange.Shapes("WarningData").TextFrame2.TextRange = _
ActiveWindow.Selection.SlideRange.Shapes("WarningData").TextFrame2.TextRange & dict3.Item(Ky)(0)
'Otherwise, if it has a selection, insert selected text.
ElseIf ComboBox3 <> "" Then
ActiveWindow.Selection.SlideRange.Shapes("WarningData").TextFrame2.TextRange = _
ActiveWindow.Selection.SlideRange.Shapes("WarningData").TextFrame2.TextRange & vbCrLf & vbCrLf & dict3.Item(Ky)(0)
End If
Next
Set dict3 = Nothing
End Sub
aşağıdaki alt ben farklı yazı tipi stili olması gerekir biridir: Burada
neyi Alt 1 ve Alt 2 bakmak gibidir mümkün?Teşekkürler!
ben ** şiddetle ** Eğer anlamlı isimler verin öneriyoruz kontrollerin. 'TextBox9' ve 'ComboBox7' kod içinde hiçbir şey ifade etmiyor ve VBA kodunuzun bakımını yapıyor ... boynundaki bir ağrı. –
İyi nokta. Bunu kesinlikle yapacağım. Teşekkürler. – hunter21188