imho.ws |
|
10.07.2005, 16:32 | # 1 |
Guest
Сообщения: n/a
|
обработка Excel
Долго думал, куда поместить эту тему...
Понадеялся, быть может найдется какое-то программерское решение... Есть некоторый файл Excel, заполненный ссылками, типа www.site.ru?id==5, нужно изменить все ссылки на http://www.site.ru?id==5&id2====5 Ссылок много... как это можно реализовать? |
11.07.2005, 08:45 | # 2 |
Junior Member
Регистрация: 20.10.2004
Адрес: Тюмень
Сообщения: 52
|
Если адреса все одинаковые т.е. все ссылки одинаковые: www.site.ru?id==5, то Правка->Заменить... В поле найти:www.site.ru?id==5, заменить на: http://www.site.ru?id==5&id2====5. Ну ижмём заменить всё.
__________________
Маленький, лысенький, да ещё и в очках |
11.07.2005, 10:52 | # 4 |
::VIP::
Регистрация: 19.10.2003
Адрес: Питер
Пол: Male
Сообщения: 1 467
|
wolandino
Using Regular Expressions Внизу прилеплен зиповский файл, там файл Excel с примерами regexp. Поизучай макросы, да попробуй на их основе свой накатать. |
11.07.2005, 16:50 | # 7 |
::VIP::
Регистрация: 19.10.2003
Адрес: Питер
Пол: Male
Сообщения: 1 467
|
wolandino
Создай в Excel макрос следующего содержания: Код:
Sub RegExp_Late_Execute_2() Dim RegEx As Object, RegMatchCollection As Object Dim Myrange As Range, C As Range, OutPutStr As String Dim i As Long Set RegEx = CreateObject("vbscript.regexp") With RegEx .Global = True .IgnoreCase = True .Pattern = "(\d)+" End With Set Myrange = ActiveSheet.Range("A1:A10") For Each C In Myrange OutPutStr = "" Set RegMatchCollection = RegEx.Execute(C.Value) If RegMatchCollection.Count > 0 Then OutPutStr = "" For i = 0 To RegMatchCollection.Count - 1 Step 1 OutPutStr = OutPutStr & " " & RegMatchCollection(i) Next C.Offset(0, 1) = "http://www.site.ru?id==" & RegMatchCollection(0) & "&id2====" & RegMatchCollection(0) End If Next Set RegMatchCollection = Nothing Set RegEx = Nothing Set Myrange = Nothing End Sub В итоге рядом с исходным столбцом получится желаемый. Делал из какого-то примера с уровнем знаний в данном вопросе = нулю, так что сильно не пинать. Главное работает как требуется. Код:
www.site.ru?id==1 http://www.site.ru?id==1&id2====1 www.site.ru?id==2 http://www.site.ru?id==2&id2====2 www.site.ru?id==3 http://www.site.ru?id==3&id2====3 www.site.ru?id==4 http://www.site.ru?id==4&id2====4 www.site.ru?id==5 http://www.site.ru?id==5&id2====5 www.site.ru?id==6 http://www.site.ru?id==6&id2====6 www.site.ru?id==7 http://www.site.ru?id==7&id2====7 www.site.ru?id==8 http://www.site.ru?id==8&id2====8 www.site.ru?id==9 http://www.site.ru?id==9&id2====9 www.site.ru?id==10 http://www.site.ru?id==10&id2====10 Последний раз редактировалось SergoZD; 11.07.2005 в 18:27. |