Домашняя страница Undo Do Save Карта сайта Обратная связь Поиск по форуму
МИР MS EXCEL - Гость.xls

Вход

Регистрация

Напомнить пароль

 

= Мир MS Excel/Ссылки типа на авторство через определенный интервал - Мир MS Excel

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: _Boroda_, китин  
Ссылки типа на авторство через определенный интервал
Badass Дата: Вторник, 03.12.2013, 14:18 | Сообщение № 1
Группа: Пользователи
Ранг: Новичок
Сообщений: 12
Репутация: 0 ±
Замечаний: 0% ±

Excel 2013
Нужно вставить в текст ссылки на авторство. типа www.excelworld.ru в случайных местах, например 2-3 на страницу (или в % соотношении без разницы)? Ну или подскажите как просто текст в случайных местах вставить с опеределенным интервалом.возможен такой макрос? спасибо!
 
Ответить
СообщениеНужно вставить в текст ссылки на авторство. типа www.excelworld.ru в случайных местах, например 2-3 на страницу (или в % соотношении без разницы)? Ну или подскажите как просто текст в случайных местах вставить с опеределенным интервалом.возможен такой макрос? спасибо!

Автор - Badass
Дата добавления - 03.12.2013 в 14:18
wild_pig Дата: Вторник, 03.12.2013, 16:52 | Сообщение № 2
Группа: Проверенные
Ранг: Обитатель
Сообщений: 518
Репутация: 97 ±
Замечаний: 0% ±

2003, 2013
[offtop]Спам какой-то[/offtop]
 
Ответить
Сообщение[offtop]Спам какой-то[/offtop]

Автор - wild_pig
Дата добавления - 03.12.2013 в 16:52
Badass Дата: Вторник, 03.12.2013, 16:58 | Сообщение № 3
Группа: Пользователи
Ранг: Новичок
Сообщений: 12
Репутация: 0 ±
Замечаний: 0% ±

Excel 2013
где какой спам? очень нужно..


Сообщение отредактировал Badass - Вторник, 03.12.2013, 16:58
 
Ответить
Сообщениегде какой спам? очень нужно..

Автор - Badass
Дата добавления - 03.12.2013 в 16:58
SkyPro Дата: Вторник, 03.12.2013, 18:19 | Сообщение № 4
Группа: Друзья
Ранг: Старожил
Сообщений: 1206
Репутация: 255 ±
Замечаний: 0% ±

2010
А вы пример приложите, ответ быстрее найдется.


skypro1111@gmail.com
 
Ответить
СообщениеА вы пример приложите, ответ быстрее найдется.

Автор - SkyPro
Дата добавления - 03.12.2013 в 18:19
Badass Дата: Вторник, 03.12.2013, 23:15 | Сообщение № 5
Группа: Пользователи
Ранг: Новичок
Сообщений: 12
Репутация: 0 ±
Замечаний: 0% ±

Excel 2013
пример в атаче (можно вставлять даже между букв в слове, не принципально где)
К сообщению приложен файл: 5749086.doc (29.5 Kb)
 
Ответить
Сообщениепример в атаче (можно вставлять даже между букв в слове, не принципально где)

Автор - Badass
Дата добавления - 03.12.2013 в 23:15
Badass Дата: Вторник, 03.12.2013, 23:33 | Сообщение № 6
Группа: Пользователи
Ранг: Новичок
Сообщений: 12
Репутация: 0 ±
Замечаний: 0% ±

Excel 2013
 
Ответить
Сообщение

Автор - Badass
Дата добавления - 03.12.2013 в 23:33
anvg Дата: Среда, 04.12.2013, 02:48 | Сообщение № 7
Группа: Друзья
Ранг: Ветеран
Сообщений: 581
Репутация: 271 ±
Замечаний: 0% ±

2016, 365
Можно так
[vba]
Код
Public Sub InsertHyper()
     Const afterWords As Long = 20
     Const Address As String = "http://www.excelworld.ru/forum/4"
     Const textToDisplay As String = "CopyRight"
     Dim i As Long, insCount As Long
     Dim insRange As Word.Range, curWord As Long
     insCount = CLng(ActiveDocument.Words.Count / afterWords)
     For i = 1 To insCount
         curWord = i * afterWords + 1
         If curWord > ActiveDocument.Words.Count Then curWord = ActiveDocument.Words.Count
         Set insRange = ActiveDocument.Words(curWord)
         ActiveDocument.Hyperlinks.Add Anchor:=insRange, Address:=Address, textToDisplay:=textToDisplay
     Next
End Sub
[/vba]
 
Ответить
СообщениеМожно так
[vba]
Код
Public Sub InsertHyper()
     Const afterWords As Long = 20
     Const Address As String = "http://www.excelworld.ru/forum/4"
     Const textToDisplay As String = "CopyRight"
     Dim i As Long, insCount As Long
     Dim insRange As Word.Range, curWord As Long
     insCount = CLng(ActiveDocument.Words.Count / afterWords)
     For i = 1 To insCount
         curWord = i * afterWords + 1
         If curWord > ActiveDocument.Words.Count Then curWord = ActiveDocument.Words.Count
         Set insRange = ActiveDocument.Words(curWord)
         ActiveDocument.Hyperlinks.Add Anchor:=insRange, Address:=Address, textToDisplay:=textToDisplay
     Next
End Sub
[/vba]

Автор - anvg
Дата добавления - 04.12.2013 в 02:48
Badass Дата: Среда, 04.12.2013, 11:34 | Сообщение № 8
Группа: Пользователи
Ранг: Новичок
Сообщений: 12
Репутация: 0 ±
Замечаний: 0% ±

Excel 2013
Спасибо! а без гиперссылки, просто текст в тексте, возможно?


Сообщение отредактировал Badass - Среда, 04.12.2013, 11:34
 
Ответить
СообщениеСпасибо! а без гиперссылки, просто текст в тексте, возможно?

Автор - Badass
Дата добавления - 04.12.2013 в 11:34
anvg Дата: Среда, 04.12.2013, 14:40 | Сообщение № 9
Группа: Друзья
Ранг: Ветеран
Сообщений: 581
Репутация: 271 ±
Замечаний: 0% ±

2016, 365
Можно и просто текст
[vba]
Код
Public Sub InsertHyper()
     Const afterWords As Long = 20
     Const Address As String = "http://www.excelworld.ru/forum/4"
     Const textToDisplay As String = " CopyRight "
     Dim i As Long, insCount As Long
     Dim insRange As Word.Range, curWord As Long
     insCount = CLng(ActiveDocument.Words.Count / afterWords)
     For i = 1 To insCount
         curWord = i * afterWords + 1
         If curWord > ActiveDocument.Words.Count Then curWord = ActiveDocument.Words.Count
         Set insRange = ActiveDocument.Words(curWord)
         insRange.Text = insRange.Text & textToDisplay
     Next
End Sub
[/vba]
 
Ответить
СообщениеМожно и просто текст
[vba]
Код
Public Sub InsertHyper()
     Const afterWords As Long = 20
     Const Address As String = "http://www.excelworld.ru/forum/4"
     Const textToDisplay As String = " CopyRight "
     Dim i As Long, insCount As Long
     Dim insRange As Word.Range, curWord As Long
     insCount = CLng(ActiveDocument.Words.Count / afterWords)
     For i = 1 To insCount
         curWord = i * afterWords + 1
         If curWord > ActiveDocument.Words.Count Then curWord = ActiveDocument.Words.Count
         Set insRange = ActiveDocument.Words(curWord)
         insRange.Text = insRange.Text & textToDisplay
     Next
End Sub
[/vba]

Автор - anvg
Дата добавления - 04.12.2013 в 14:40
Badass Дата: Среда, 04.12.2013, 16:30 | Сообщение № 10
Группа: Пользователи
Ранг: Новичок
Сообщений: 12
Репутация: 0 ±
Замечаний: 0% ±

Excel 2013
[vba]
Код
Const Address As String = "http://www.excelworld.ru/forum/4"
[/vba]
это похоже лишнее.

Пробую добавить символ юникода в текст, он выдает его как текст :D, как отделить символ от текста? например символ 0394 ?
 
Ответить
Сообщение[vba]
Код
Const Address As String = "http://www.excelworld.ru/forum/4"
[/vba]
это похоже лишнее.

Пробую добавить символ юникода в текст, он выдает его как текст :D, как отделить символ от текста? например символ 0394 ?

Автор - Badass
Дата добавления - 04.12.2013 в 16:30
Badass Дата: Среда, 04.12.2013, 16:49 | Сообщение № 11
Группа: Пользователи
Ранг: Новичок
Сообщений: 12
Репутация: 0 ±
Замечаний: 0% ±

Excel 2013
[vba]
Код
" CopyRight " & ChrW(0394) -
[/vba] так не получается
 
Ответить
Сообщение[vba]
Код
" CopyRight " & ChrW(0394) -
[/vba] так не получается

Автор - Badass
Дата добавления - 04.12.2013 в 16:49
anvg Дата: Четверг, 05.12.2013, 05:08 | Сообщение № 12
Группа: Друзья
Ранг: Ветеран
Сообщений: 581
Репутация: 271 ±
Замечаний: 0% ±

2016, 365
Приведите пример требуемого символа, а так
[vba]
Код
Public Sub InsertHyper()
     Const afterWords As Long = 20
     Const Address As String = "http://www.excelworld.ru/forum/4"
     Const textToDisplay As String = " CopyRight"
     Dim i As Long, insCount As Long, addedText As String
     Dim insRange As Word.Range, curWord As Long
     insCount = CLng(ActiveDocument.Words.Count / afterWords)
     addedText = textToDisplay & ChrW(&H394) & " "
     For i = 1 To insCount
         curWord = i * afterWords + 1
         If curWord > ActiveDocument.Words.Count Then curWord = ActiveDocument.Words.Count
         Set insRange = ActiveDocument.Words(curWord)
         insRange.Text = insRange.Text & addedText
     Next
End Sub
[/vba]
 
Ответить
СообщениеПриведите пример требуемого символа, а так
[vba]
Код
Public Sub InsertHyper()
     Const afterWords As Long = 20
     Const Address As String = "http://www.excelworld.ru/forum/4"
     Const textToDisplay As String = " CopyRight"
     Dim i As Long, insCount As Long, addedText As String
     Dim insRange As Word.Range, curWord As Long
     insCount = CLng(ActiveDocument.Words.Count / afterWords)
     addedText = textToDisplay & ChrW(&H394) & " "
     For i = 1 To insCount
         curWord = i * afterWords + 1
         If curWord > ActiveDocument.Words.Count Then curWord = ActiveDocument.Words.Count
         Set insRange = ActiveDocument.Words(curWord)
         insRange.Text = insRange.Text & addedText
     Next
End Sub
[/vba]

Автор - anvg
Дата добавления - 05.12.2013 в 05:08
Badass Дата: Четверг, 05.12.2013, 13:10 | Сообщение № 13
Группа: Пользователи
Ранг: Новичок
Сообщений: 12
Репутация: 0 ±
Замечаний: 0% ±

Excel 2013
да классно, и последний вопрос как прямо в слове ссылку с символом вставить (а не после слов)
 
Ответить
Сообщениеда классно, и последний вопрос как прямо в слове ссылку с символом вставить (а не после слов)

Автор - Badass
Дата добавления - 05.12.2013 в 13:10
anvg Дата: Четверг, 05.12.2013, 16:13 | Сообщение № 14
Группа: Друзья
Ранг: Ветеран
Сообщений: 581
Репутация: 271 ±
Замечаний: 0% ±

2016, 365
Можно и так, сделал для случая, если слово больше 4 символов
[vba]
Код
Public Sub InsertHyper()
     Const afterWords As Long = 20
     Const Address As String = "http://www.excelworld.ru/forum/4"
     Const textToDisplay As String = " CopyRight"
     Dim i As Long, insCount As Long, addedText As String
     Dim insRange As Word.Range, curWord As Long, curText As String
     insCount = CLng(ActiveDocument.Words.Count / afterWords)
     addedText = textToDisplay & ChrW(&H394) & " "
     For i = 1 To insCount
         curWord = i * afterWords + 1
         If curWord > ActiveDocument.Words.Count Then curWord = ActiveDocument.Words.Count
         Set insRange = ActiveDocument.Words(curWord)
         curText = insRange.Text
         If Len(curText) > 4 Then
             insCount = Len(curText) \ 2
             insRange.Text = Mid$(curText, 1, insCount) & addedText & Mid$(curText, insCount + 1)
         Else
             insRange.Text = curText & addedText
         End If
     Next
End Sub
[/vba]
 
Ответить
СообщениеМожно и так, сделал для случая, если слово больше 4 символов
[vba]
Код
Public Sub InsertHyper()
     Const afterWords As Long = 20
     Const Address As String = "http://www.excelworld.ru/forum/4"
     Const textToDisplay As String = " CopyRight"
     Dim i As Long, insCount As Long, addedText As String
     Dim insRange As Word.Range, curWord As Long, curText As String
     insCount = CLng(ActiveDocument.Words.Count / afterWords)
     addedText = textToDisplay & ChrW(&H394) & " "
     For i = 1 To insCount
         curWord = i * afterWords + 1
         If curWord > ActiveDocument.Words.Count Then curWord = ActiveDocument.Words.Count
         Set insRange = ActiveDocument.Words(curWord)
         curText = insRange.Text
         If Len(curText) > 4 Then
             insCount = Len(curText) \ 2
             insRange.Text = Mid$(curText, 1, insCount) & addedText & Mid$(curText, insCount + 1)
         Else
             insRange.Text = curText & addedText
         End If
     Next
End Sub
[/vba]

Автор - anvg
Дата добавления - 05.12.2013 в 16:13
Badass Дата: Воскресенье, 15.12.2013, 14:35 | Сообщение № 15
Группа: Пользователи
Ранг: Новичок
Сообщений: 12
Репутация: 0 ±
Замечаний: 0% ±

Excel 2013
anvg, объясните , если не сложно, зачем это : Const afterWords As Long = 20, да и вообще afterWords
 
Ответить
Сообщениеanvg, объясните , если не сложно, зачем это : Const afterWords As Long = 20, да и вообще afterWords

Автор - Badass
Дата добавления - 15.12.2013 в 14:35
anvg Дата: Понедельник, 16.12.2013, 03:30 | Сообщение № 16
Группа: Друзья
Ранг: Ветеран
Сообщений: 581
Репутация: 271 ±
Замечаний: 0% ±

2016, 365
afterWords задаёт через сколько слов в тексте вставлять требуемую фразу
 
Ответить
СообщениеafterWords задаёт через сколько слов в тексте вставлять требуемую фразу

Автор - anvg
Дата добавления - 16.12.2013 в 03:30
Badass Дата: Понедельник, 16.12.2013, 08:27 | Сообщение № 17
Группа: Пользователи
Ранг: Новичок
Сообщений: 12
Репутация: 0 ±
Замечаний: 0% ±

Excel 2013
просто понимаете, если есть "длинное" слово (пропущен пробел(ы)), то выпадает ошибка, он не может пропустить такое слово. можно как то убрать проверку или изменить, чтобы он вставлял например после определенного числа символов? спасибо
 
Ответить
Сообщениепросто понимаете, если есть "длинное" слово (пропущен пробел(ы)), то выпадает ошибка, он не может пропустить такое слово. можно как то убрать проверку или изменить, чтобы он вставлял например после определенного числа символов? спасибо

Автор - Badass
Дата добавления - 16.12.2013 в 08:27
Badass Дата: Среда, 18.12.2013, 21:22 | Сообщение № 18
Группа: Пользователи
Ранг: Новичок
Сообщений: 12
Репутация: 0 ±
Замечаний: 0% ±

Excel 2013
в общем проблемма в том, что если я ставлю например через 20 слов, и попадается слово больше 20 символов (до него копирайты расставляются), то появляется ошибка:
 
Ответить
Сообщениев общем проблемма в том, что если я ставлю например через 20 слов, и попадается слово больше 20 символов (до него копирайты расставляются), то появляется ошибка:

Автор - Badass
Дата добавления - 18.12.2013 в 21:22
RAN Дата: Четверг, 19.12.2013, 11:43 | Сообщение № 19
Группа: Друзья
Ранг: Экселист
Сообщений: 5660
Репутация: 1163 ±
Замечаний: 0% ±

2010
[vba]
Код
On Error Resume Next
[/vba]
Должно помочь.


Быть или не быть, вот в чем загвоздка!
 
Ответить
Сообщение[vba]
Код
On Error Resume Next
[/vba]
Должно помочь.

Автор - RAN
Дата добавления - 19.12.2013 в 11:43
Badass Дата: Четверг, 19.12.2013, 17:24 | Сообщение № 20
Группа: Пользователи
Ранг: Новичок
Сообщений: 12
Репутация: 0 ±
Замечаний: 0% ±

Excel 2013
RAN, спасибо опробую
 
Ответить
СообщениеRAN, спасибо опробую

Автор - Badass
Дата добавления - 19.12.2013 в 17:24
  • Страница 1 из 1
  • 1
Поиск:

Яндекс.Метрика Яндекс цитирования
© 2010-2024 · Дизайн: MichaelCH · Хостинг от uCoz · При использовании материалов сайта, ссылка на www.excelworld.ru обязательна!