Другие языки программирования и технологии
помогите с макросом
есть вот такой текст1234567марина1234567толяэто номера телефонов и имена, нужно с помощью макроса разделить их.Поставить между ними пробел или зпт.,текст в ворде
Sub Макрос4()
'
' Макрос4 Макрос
' Макрос записан 14.11.2008 Мананов Р. А.
'
Selection.Find.ClearFormatting
Selection.Find.Replacement.ClearFormatting
With Selection.Find
.Text = "^#^$"
.Replacement.Text = ",,,^&"
.Forward = True
.Wrap = wdFindContinue
.Format = False
.MatchCase = False
.MatchWholeWord = False
.MatchWildcards = False
.MatchSoundsLike = False
.MatchAllWordForms = False
End With
Selection.Find.Execute Replace:=wdReplaceAll
Selection.Find.ClearFormatting
Selection.Find.Replacement.ClearFormatting
With Selection.Find
.Text = ",,,^#"
.Replacement.Text = "^&,"
.Forward = True
.Wrap = wdFindContinue
.Format = False
.MatchCase = False
.MatchWholeWord = False
.MatchWildcards = False
.MatchSoundsLike = False
.MatchAllWordForms = False
End With
'
' Макрос4 Макрос
' Макрос записан 14.11.2008 Мананов Р. А.
'
Selection.Find.ClearFormatting
Selection.Find.Replacement.ClearFormatting
With Selection.Find
.Text = "^#^$"
.Replacement.Text = ",,,^&"
.Forward = True
.Wrap = wdFindContinue
.Format = False
.MatchCase = False
.MatchWholeWord = False
.MatchWildcards = False
.MatchSoundsLike = False
.MatchAllWordForms = False
End With
Selection.Find.Execute Replace:=wdReplaceAll
Selection.Find.ClearFormatting
Selection.Find.Replacement.ClearFormatting
With Selection.Find
.Text = ",,,^#"
.Replacement.Text = "^&,"
.Forward = True
.Wrap = wdFindContinue
.Format = False
.MatchCase = False
.MatchWholeWord = False
.MatchWildcards = False
.MatchSoundsLike = False
.MatchAllWordForms = False
End With
Вот эта функция
*********************************************************
Function InsertDelimiter(inputStr As String, _
Optional delimiter As String = ",") As String
Dim rv As String
rv = inputStr
Dim i As Integer
For i = 1 To Len(inputStr)
If (Not IsNumeric(Mid(inputStr, i, 1))) And (i > 1) Then
InsertDelimiter = Left(inputStr, i - 1) & delimiter & Mid(inputStr, i)
Exit Function
End If
Next i
InsertDelimiter = rv
End Function
*****************************************************
Принимает строку (как описано) и возвращает её с разделителем. По умолчанию это будет запятая, но можно передать функции другой разделитель как второй аргумент.
например: вот такой макрос
**************************************
Sub AnyMacro()
MsgBox InsertDelimiter("1234567марина")
End Sub
****************************************
выведет окошко с надписью
1234567,марина
а такой
************************************************
Sub AnyMacro()
MsgBox InsertDelimiter("1234567марина", "=")
End Sub
************************************************
с надписью
1234567=марина
===============================
*********************************************************
Function InsertDelimiter(inputStr As String, _
Optional delimiter As String = ",") As String
Dim rv As String
rv = inputStr
Dim i As Integer
For i = 1 To Len(inputStr)
If (Not IsNumeric(Mid(inputStr, i, 1))) And (i > 1) Then
InsertDelimiter = Left(inputStr, i - 1) & delimiter & Mid(inputStr, i)
Exit Function
End If
Next i
InsertDelimiter = rv
End Function
*****************************************************
Принимает строку (как описано) и возвращает её с разделителем. По умолчанию это будет запятая, но можно передать функции другой разделитель как второй аргумент.
например: вот такой макрос
**************************************
Sub AnyMacro()
MsgBox InsertDelimiter("1234567марина")
End Sub
****************************************
выведет окошко с надписью
1234567,марина
а такой
************************************************
Sub AnyMacro()
MsgBox InsertDelimiter("1234567марина", "=")
End Sub
************************************************
с надписью
1234567=марина
===============================
Похожие вопросы
- Помогите с макросами в Word 2007
- Помоги запустить макрос в OpenOffice
- Excel. Макрос. Найти в Листе1 значение активной ячейки из Листа2.
- Как написать макрос для Word 2003 чтобы выполнял сортировку чисел в квадратных скобках?
- Вопрос по макросам MS Excel
- VB. Макросы в MS Exel.
- Необходимо создать макрос для excel
- Подскажите строчку в макросах Ексель
- Макрос для excel - VBA (гиперссылка)
- Скрипт или макрос для удаления как сделать?