---恢復內容開始---
標題格式:一級標題 中文數字加、例如 一、
二級標題 中文數字加: 例如二:
三級標題 小寫數字加、 例如3、
使用方法: 打開PPT 按alt+f11,打開vb編輯框,選擇插入模塊
把代碼復制進去按F5就ok了
代碼如下
1 Sub Change() 2 Dim s As Slide 3 Dim shp As Shape 4 Dim trng As TextRange 5 Dim i As Integer 6 Dim JudgeBit '判斷的位數 7 JudgeBit = 4 8 'Slides.Shapes(1).AddShape(msoShapeRectangle, 0, 0, 250, 140).TextFrame 9 10 ' Slides.Shapes(1).TextFrame.TextRange.Characters.Text = "文sadasd字" 11 ' /* 遍歷活動窗口中打開的演示文稿中的幻燈片. */ 12 For Each s In ActivePresentation.Slides 13 ' /* 遍歷當前幻燈片中的形狀對象. */ 14 For Each shp In s.Shapes 15 ' /* 當前幻燈片中的當前形狀含有文本框架. */ 16 If shp.HasTextFrame Then 17 ' /* 當前幻燈片中的當前形狀包含文本. */ 18 If shp.TextFrame.HasText Then 19 ' 引用文本框架中的文本. 20 21 Set trng = shp.TextFrame.TextRange 22 For i = 1 To JudgeBit 'trng.Characters.Count 23 '判斷是否為大標題 格式是 一、 24 If trng.Characters(i).Text = "一" _ 25 Or trng.Characters(i).Text = "二" _ 26 Or trng.Characters(i).Text = "三" _ 27 Or trng.Characters(i).Text = "四" _ 28 Or trng.Characters(i).Text = "五" _ 29 Or trng.Characters(i).Text = "六" _ 30 Or trng.Characters(i).Text = "七" _ 31 Or trng.Characters(i).Text = "八" _ 32 Or trng.Characters(i).Text = "九" _ 33 Or trng.Characters(i).Text = "十" _ 34 Then 35 If (trng.Characters(i + 1).Text = "、") Then 36 i = JudgeBit 37 '設置字體格式 38 trng.Font.NameFarEast = "微軟雅黑" '設置中文字體 39 trng.Font.Name = "微軟雅黑" '設置英文字體 40 trng.Font.Size = "32" 41 trng.Font.Color.RGB = RGB(Red:=50, Green:=50, Blue:=150) 42 43 '文本框在當頁的位置 44 shp.Top = 20 45 shp.Left = 20 46 47 '設置文本屬性 48 With shp 49 .TextFrame.HorizontalAnchor = msoAnchorNone 50 .TextFrame.MarginTop = 0 '字體在邊框中的位置 51 .TextFrame.MarginBottom = 0 52 .TextFrame.MarginLeft = 0 53 .TextFrame.MarginRight = 0 54 .TextFrame.VerticalAnchor = msoAnchorMiddle '設置垂直對齊方式 55 .TextFrame2.TextRange.ParagraphFormat.Alignment = msoAlignLeft '設置對齊方式 56 57 'shp.TextFrame.Orientation '設置文本框方向 58 'shp.TextFrame.WordWrap '自動換行 59 60 End With 61 '判斷二級標題 62 ElseIf (trng.Characters(i + 1).Text = ":") Then 63 i = JudgeBit 'trng.Characters.Count 64 '設置字體格式 65 trng.Font.NameFarEast = "微軟雅黑" '設置中文字體 66 trng.Font.Name = "微軟雅黑" '設置英文字體 67 trng.Font.Size = "20" 68 trng.Font.Color.RGB = RGB(Red:=100, Green:=0, Blue:=0) 69 70 '文本框在當頁的位置 71 shp.Top = 80 72 shp.Left = 20 73 74 '設置文本屬性 75 With shp 76 .TextFrame.HorizontalAnchor = msoAnchorNone 77 .TextFrame.MarginTop = 0 '字體在邊框中的位置 78 .TextFrame.MarginBottom = 0 79 .TextFrame.MarginLeft = 0 80 .TextFrame.MarginRight = 0 81 .TextFrame.VerticalAnchor = msoAnchorMiddle '設置垂直對齊方式 82 .TextFrame2.TextRange.ParagraphFormat.Alignment = msoAlignLeft '設置對齊方式 83 84 'shp.TextFrame.Orientation '設置文本框方向 85 'shp.TextFrame.WordWrap '自動換行 86 End With 87 End If 88 89 90 '判斷三級標題 格式是 1. 91 ElseIf trng.Characters(i).Text = "1" _ 92 Or trng.Characters(i).Text = "2" _ 93 Or trng.Characters(i).Text = "3" _ 94 Or trng.Characters(i).Text = "4" _ 95 Or trng.Characters(i).Text = "5" _ 96 Or trng.Characters(i).Text = "6" _ 97 Or trng.Characters(i).Text = "7" _ 98 Or trng.Characters(i).Text = "8" _ 99 Or trng.Characters(i).Text = "9" _ 100 Or trng.Characters(i).Text = "10" _ 101 Then 102 103 If (trng.Characters(i + 1).Text = "、") Then 104 i = JudgeBit 105 '設置字體格式 106 trng.Font.NameFarEast = "微軟雅黑" '設置中文字體 107 trng.Font.Name = "微軟雅黑" '設置英文字體 108 trng.Font.Size = "20" 109 trng.Font.Color.RGB = RGB(Red:=0, Green:=100, Blue:=0) 110 111 '文本框在當頁的位置 112 shp.Top = 120 113 shp.Left = 30 114 115 '設置文本屬性 116 With shp 117 .TextFrame.HorizontalAnchor = msoAnchorNone 118 .TextFrame.MarginTop = 0 '字體在邊框中的位置 119 .TextFrame.MarginBottom = 0 120 .TextFrame.MarginLeft = 0 121 .TextFrame.MarginRight = 0 122 .TextFrame.VerticalAnchor = msoAnchorMiddle '設置垂直對齊方式 123 .TextFrame2.TextRange.ParagraphFormat.Alignment = msoAlignLeft '設置對齊方式 124 125 'shp.TextFrame.Orientation '設置文本框方向 126 'shp.TextFrame.WordWrap '自動換行 127 End With 128 End If 129 Else 130 trng.Font.NameFarEast = "黑體" '設置中文字體 131 trng.Font.Name = "黑體" '設置英文字體 132 End If 133 134 Next 135 ' /* 遍歷文本框架中的每一個字符. */ 136 137 138 End If 139 End If 140 Next 141 Next 142 End Sub
效果
---恢復內容結束---