Замена персонажа каретным возвратом в почту - PullRequest
0 голосов
/ 09 апреля 2019

Я получаю автоматически сгенерированное электронное письмо в Outlook из системы, форматирование которой невозможно контролировать.Я хочу заменить каждую запятую в электронном письме на возврат каретки, что позволит легко читать и обрабатывать вывод.Я думал о том, чтобы сделать это с помощью сценария VB

. Я могу сделать это в Word OK через VB, используя приведенный ниже сценарий, но не знаю эквивалента в outlook

Sub Macro2()
'
' Macro2 Macro
'
'
    Selection.Find.ClearFormatting
    Selection.Find.Replacement.ClearFormatting
    With Selection.Find
        .Text = ","
        .Replacement.Text = "^l"
        .Forward = True
        .Wrap = wdFindContinue
        .Format = False
        .MatchCase = False
        .MatchWholeWord = False
        .MatchWildcards = False
        .MatchSoundsLike = False
        .MatchAllWordForms = False
    End With
    Selection.Find.Execute Replace:=wdReplaceAll
End Sub

, что я хочуконвертирует почту:

Request ID: 527
Results: [06-641-20_XABY_C-terminally designated_region A, 46-643-00_AASC_C-terminally designated_region C, 06-642-60_TTTS_C-terminally designated_region S] 

в:

Request ID: 527
Results: [06-641-20_XABY_C-terminally designated_region A<br>
 46-643-00_AASC_C-terminally designated_region C<br>
 06-642-60_TTTS_C-terminally designated_region S] 

Таким образом, каждый результат выстраивается в ряд - очень часто есть десятки результатов!

1 Ответ

0 голосов
/ 09 апреля 2019

То, что вы хотите, это простая замена, например:

Option Explicit

Sub test()
    Dim textFromEmail As String
    textFromEmail = "Request ID: 527" & vbNewLine & _
                    "Results: [06-641-20_XABY_C-terminally designated_region A, 46-643-00_AASC_C-terminally designated_region C, 06-642-60_TTTS_C-terminally designated_region S] "
    Debug.Print Replace(textFromEmail, ",", vbNewLine)
End Sub
...