En un form con un RichTextBox (RichTextBox1) oculto, un Common Dialog (CMD) y un Command button (Command1):
Eso me funciona bastante bien...
Código [Seleccionar]
Dim rtf1 As RichTextBox
Private Sub Command1_Click()
'crea un RTF en la pos 60,60
Set rtf1 = Controls.Add("RichText.RichTextCtrl.1", "txt")
rtf1.Left = 60
rtf1.Top = 60
rtf1.Visible = True
'Carga un Common Dialog con los valores de la FONT del RTF
CMD.Flags = cdlCFBoth
CMD.FontBold = rtf1.Font.Bold
CMD.FontItalic = rtf1.Font.Italic
CMD.FontName = rtf1.Font.Name
CMD.FontSize = rtf1.Font.Size
CMD.FontStrikethru = rtf1.Font.Strikethrough
CMD.FontUnderline = rtf1.Font.Underline
CMD.ShowFont
'Pone la FONT del RTF a los valores que devuelve el CMD
rtf1.Font.Bold = CMD.FontBold
rtf1.Font.Italic = CMD.FontItalic
rtf1.Font.Name = CMD.FontName
rtf1.Font.Size = CMD.FontSize
rtf1.Font.Strikethrough = CMD.FontStrikethru
rtf1.Font.Underline = CMD.FontUnderline
End Sub
Eso me funciona bastante bien...