Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Word
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 22.02.2010, 01:02   #21
viter.alex
Балуюсь кодами
Участник клуба
 
Аватар для viter.alex
 
Регистрация: 09.01.2009
Сообщений: 1,837
По умолчанию

Цитата:
Сообщение от Алекс14 Посмотреть сообщение
Старался как можно подробнее.
Лучше пример файла приложите, который должен получиться.
Лучше день потерять — потом за пять минут долететь!©
viter.alex вне форума Ответить с цитированием
Старый 22.02.2010, 01:18   #22
Алекс14
Пользователь
 
Регистрация: 23.12.2009
Сообщений: 21
По умолчанию

вот собственно
Только там дурацкие кавычки <<>> я заменю на "" кнокой поиска и замены в текстовом редакторе.
Вложения
Тип файла: doc text_1000.doc (25.5 Кб, 11 просмотров)
Алекс14 вне форума Ответить с цитированием
Старый 22.02.2010, 02:59   #23
Sasha_Smirnov
Особый статус
Участник клуба
 
Аватар для Sasha_Smirnov
 
Регистрация: 24.11.2008
Сообщений: 1,535
По умолчанию Воп с галёрки

А чего ж вам сразу не разбить текст на закавыченные фрагменты по 1000±10 знаков?

ПС: ворд не тупит — а следует своим настройкам. Смотрите рис. или используйте
Код:
Sub Макрос()
Options.AutoFormatAsYouTypeReplaceQuotes = False
End Sub

Последний раз редактировалось Sasha_Smirnov; 23.02.2010 в 01:47.
Sasha_Smirnov вне форума Ответить с цитированием
Старый 22.02.2010, 10:11   #24
viter.alex
Балуюсь кодами
Участник клуба
 
Аватар для viter.alex
 
Регистрация: 09.01.2009
Сообщений: 1,837
По умолчанию

Вот так:
Код:
Sub Quote1000()
  Dim i As Long 'счётчик символов
  Dim c As Long 'счётчик замен
  Dim delim As String 'Вставляемый разделитель
  Dim InsertAfter As Boolean
  Dim DlgResult As Integer
  
  delim = ChrW(34) & vbCr & ChrW(34)
   
  DlgResult = MsgBox("Если Кавычка попадёт в середину слова, вставить её после этого слова?" & vbCr & "Нажмите ""Нет"", чтобы вставить кавычку перед словом.", vbYesNoCancel + vbDefaultButton1)
  Select Case DlgResult
    Case vbYes
      InsertAfter = True
    Case vbNo
      InsertAfter = False
    Case vbCancel
      Exit Sub
  End Select
  
  Application.ScreenUpdating = False
  ActiveDocument.StoryRanges(wdMainTextStory).InsertBefore ChrW(34)
  For i = 1000 To ActiveDocument.StoryRanges(wdMainTextStory).Characters.Count Step 1000
    ActiveDocument.Range(i + Len(delim) * c, i + Len(delim) * c).Select
    With Selection
      If InsertAfter Then
        .MoveEnd wdWord
        .Collapse wdCollapseEnd
        If .Characters.First.Previous.Text = " " Then .MoveLeft
      Else
        .MoveStart wdWord, -1
        .Collapse wdCollapseStart
      End If
      .TypeText delim
    End With
    c = c + 1
  Next
  
  Application.ScreenUpdating = True
  
  MsgBox ("Работа завершена. " & "Вставлено " & c & " пар кавычек.")
End Sub
Лучше день потерять — потом за пять минут долететь!©

Последний раз редактировалось viter.alex; 22.02.2010 в 10:16.
viter.alex вне форума Ответить с цитированием
Старый 22.02.2010, 12:35   #25
Sasha_Smirnov
Особый статус
Участник клуба
 
Аватар для Sasha_Smirnov
 
Регистрация: 24.11.2008
Сообщений: 1,535
По умолчанию Тест-драйв

Интервалы по ≈1000 знаков (с пробелами) обрубал перед словом. Т. е. в программе Quote1000 выбрал «Нет».
Изображения
Тип файла: png РядИспыт.png (6.9 Кб, 86 просмотров)

Последний раз редактировалось Sasha_Smirnov; 22.02.2010 в 20:30.
Sasha_Smirnov вне форума Ответить с цитированием
Старый 22.02.2010, 13:30   #26
Алекс14
Пользователь
 
Регистрация: 23.12.2009
Сообщений: 21
По умолчанию

Sasha_Smirnov, нашел кнопку и заменил.
Теперь вставляет кавычки как надо. Спасибо.
Последний пост со статистикой не понял.

viter.alex, это именно то, что мне и нужно.
Огромное спасибо, что помогли.
Алекс14 вне форума Ответить с цитированием
Старый 23.02.2010, 00:01   #27
Sasha_Smirnov
Особый статус
Участник клуба
 
Аватар для Sasha_Smirnov
 
Регистрация: 24.11.2008
Сообщений: 1,535
По умолчанию

В посте #25 я исследовал отклонения от 1000 знаков при разбивке текста. Ведь в любом анализе важно знать, насколько он точен.
Sasha_Smirnov вне форума Ответить с цитированием
Старый 23.02.2010, 14:11   #28
Алекс14
Пользователь
 
Регистрация: 23.12.2009
Сообщений: 21
По умолчанию

Цитата:
Сообщение от Sasha_Smirnov Посмотреть сообщение
В посте #25 я исследовал отклонения от 1000 знаков при разбивке текста. Ведь в любом анализе важно знать, насколько он точен.
Ясно.
10 букоф
Алекс14 вне форума Ответить с цитированием
Старый 23.02.2010, 14:53   #29
Sasha_Smirnov
Особый статус
Участник клуба
 
Аватар для Sasha_Smirnov
 
Регистрация: 24.11.2008
Сообщений: 1,535
По умолчанию

Э, нет! 16. Нормально?
Sasha_Smirnov вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Asm. Разбивка строки на две части levis07 Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 4 30.03.2010 14:30
Форматирование текста (разбивка и выравнивание) regAlex3 Общие вопросы C/C++ 1 03.01.2010 16:29
Разбивка на страницы Busine2009 Microsoft Office Word 2 12.08.2009 09:33
Разбивка текста Vinslova Microsoft Office Excel 3 30.10.2008 12:49
Вывод части текста из файла CoDeR Общие вопросы Delphi 10 16.08.2007 14:30