[算表] 如何用VBA將粗體字前後加上<b></b>
因表格內文字的粗體字跟細體字參雜,
要做成html前要將粗體字用<b></b>標註,
看網路上的寫法是
Sub Tester()
AddTags Range("A1")
End Sub
Sub AddTags(c As Range)
Dim p As Long, isB As Boolean
Do
p = p + 1
If p > Len(c.Value) Then Exit Do
If c.Characters(p, 1).Font.Bold And Not isB Then
'entering a bolded section
c.Characters(p, 0).Insert "<b>"
c.Characters(p, 3).Font.Bold = True
isB = True
p = p + 3 'skip the tag you just added
ElseIf Not c.Characters(p, 1).Font.Bold And isB Then
'leaving a bolded section
c.Characters(p, 0).Insert "</b>"
c.Characters(p, 4).Font.Bold = True
isB = False
p = p + 4 'skip the tag you just added
End If
Loop
'close any open tag
If isB Then c.Characters(p, 0).Insert "</b>"
End Sub
雖然當字都在同一行的時候可以執行,
但常遇到大寫後就換行的情況就會發生狀況,
例如
BBBaaa -> <b>BBB</b>aaa 可以順利執行
BBB <b>BBB
aaa -> </b>aaa
會變成上述情況
看程式裡面是說當遇到第一個非大寫的時候就插入</b>
請問要怎麼改成遇到換行符號的時候也可以在末端插入</b>
感謝
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 123.193.253.54 (臺灣)
※ 文章網址: https://www.ptt.cc/bbs/Office/M.1619481304.A.383.html
→
04/27 12:52,
3年前
, 1F
04/27 12:52, 1F
→
04/27 12:52,
3年前
, 2F
04/27 12:52, 2F
→
04/27 12:53,
3年前
, 3F
04/27 12:53, 3F
→
04/27 12:53,
3年前
, 4F
04/27 12:53, 4F
→
04/27 22:46,
3年前
, 5F
04/27 22:46, 5F
→
04/27 23:42,
3年前
, 6F
04/27 23:42, 6F
※ 編輯: enigma1001 (49.216.144.116 臺灣), 04/29/2021 02:13:29
Office 近期熱門文章
PTT數位生活區 即時熱門文章
-1
10