Копирование

Программирование на Visual Basic for Applications
FLAGER
Обычный пользователь
Обычный пользователь
Аватара пользователя
 
Сообщения: 67
Зарегистрирован: 12.09.2005 (Пн) 13:49

Копирование

Сообщение FLAGER » 25.09.2005 (Вс) 16:51

Если в Ворде открыты два разных файла, как скопировать из каждого по нужному кусочку текста и поместить все это в третий документ??
Помогите, товарищи, поделитесь опытом.

GSerg
Шаман
Шаман
 
Сообщения: 14286
Зарегистрирован: 14.12.2002 (Сб) 5:25
Откуда: Магадан

Сообщение GSerg » 25.09.2005 (Вс) 17:10

Макрос записать не пробовал?
Как только вы переберёте все варианты решения и не найдёте нужного, тут же обнаружится решение, простое и очевидное для всех, кроме вас

FLAGER
Обычный пользователь
Обычный пользователь
Аватара пользователя
 
Сообщения: 67
Зарегистрирован: 12.09.2005 (Пн) 13:49

Сообщение FLAGER » 25.09.2005 (Вс) 19:21

Пробовал, но чегото не получаеться, поэтому и спрашываю помощи.

FLAGER
Обычный пользователь
Обычный пользователь
Аватара пользователя
 
Сообщения: 67
Зарегистрирован: 12.09.2005 (Пн) 13:49

Сообщение FLAGER » 25.09.2005 (Вс) 19:23

Может, подскажеш?

GSerg
Шаман
Шаман
 
Сообщения: 14286
Зарегистрирован: 14.12.2002 (Сб) 5:25
Откуда: Магадан

Сообщение GSerg » 25.09.2005 (Вс) 19:27

Получается.
Если не получается, значит, не пробовал.
Подробно расскажи, что пробовал и что получилось, даже если получилось не то, что пробовал, всё равно расскажи.


ЗЫ: ненавижу, когда не ставят мягкий знак после шипящих во втором числе... патологически не переношу...
Как только вы переберёте все варианты решения и не найдёте нужного, тут же обнаружится решение, простое и очевидное для всех, кроме вас

FLAGER
Обычный пользователь
Обычный пользователь
Аватара пользователя
 
Сообщения: 67
Зарегистрирован: 12.09.2005 (Пн) 13:49

Сообщение FLAGER » 25.09.2005 (Вс) 23:04

2GSerg: не нравиться мой русский? Извини, я из Украины, там же написано, и так еще нормально по русски разговариваю, а с грамматикой немного проблемы - нигде же русский не изучал.

Про макрос напишу завтра, детально...

GSerg
Шаман
Шаман
 
Сообщения: 14286
Зарегистрирован: 14.12.2002 (Сб) 5:25
Откуда: Магадан

Сообщение GSerg » 25.09.2005 (Вс) 23:15

FLAGER писал(а):из Украины

Мои извинения.
Как только вы переберёте все варианты решения и не найдёте нужного, тут же обнаружится решение, простое и очевидное для всех, кроме вас

FLAGER
Обычный пользователь
Обычный пользователь
Аватара пользователя
 
Сообщения: 67
Зарегистрирован: 12.09.2005 (Пн) 13:49

Сообщение FLAGER » 26.09.2005 (Пн) 14:28

Вот мой макрос. В нем тут все ясно, но как сделать его универсальным, для запуска из формы?
Код: Выделить всё
Sub Макрос1()
'
' Макрос1 Макрос
' Макрос записан 26.09.2005 FLAGER
'
    Selection.GoTo What:=wdGoToLine, Which:=wdGoToFirst, Count:=4, Name:=""
    Selection.Find.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
    Selection.Copy
    Documents.Add DocumentType:=wdNewBlankDocument
    Windows("Документ2").Activate
    Selection.GoTo What:=wdGoToLine, Which:=wdGoToFirst, Count:=5, Name:=""
    Selection.Find.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
    Selection.PasteAndFormat (wdPasteDefault)
    Selection.Copy
    Windows("Документ3").Activate
    Selection.HomeKey Unit:=wdStory
    Selection.MoveRight Unit:=wdCharacter, Count:=3
    Selection.TypeText Text:=" "
    Selection.PasteAndFormat (wdPasteDefault)
    Selection.TypeParagraph
End Sub

lord0n
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 845
Зарегистрирован: 30.06.2005 (Чт) 9:55
Откуда: Moskow

Сообщение lord0n » 27.09.2005 (Вт) 7:58

тебе каким то образом придется определять от куда копировать и куда вставлять
можно сделать так: пользователь выделяет какой кусок ему надо, нажимает на кнопку и этот кусок вставляется в какое-нить место (например в конец документа)
Теория - это когда что-то не работает и известно почему.
Практика - это когда что-то работает, но неизвестно почему.
Нам удалось совместить теорию с практикой, теперь ничего не работает и неизвестно почему.

FLAGER
Обычный пользователь
Обычный пользователь
Аватара пользователя
 
Сообщения: 67
Зарегистрирован: 12.09.2005 (Пн) 13:49

Сообщение FLAGER » 27.09.2005 (Вт) 15:28

Ну это мне понятно.
У меня есть конкретная задача: чтобы в бланк билета на екзамен вставлять вопросы. По теории все ясно, а по практике никак.

lord0n
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 845
Зарегистрирован: 30.06.2005 (Чт) 9:55
Откуда: Moskow

Сообщение lord0n » 27.09.2005 (Вт) 15:42

FLAGER писал(а):Ну это мне понятно.
У меня есть конкретная задача: чтобы в бланк билета на екзамен вставлять вопросы. По теории все ясно, а по практике никак.


я так понимаю на листе находятся несколько бланков и между ними равное растояние, если это так, то я не вижу каких либо трудностей
копируешь один вопрос из документа, переходишь к бланкам, делаешь смещение до определенного билета в цикле, вставляешь
и снова все по новой.
всего два цикла
Теория - это когда что-то не работает и известно почему.
Практика - это когда что-то работает, но неизвестно почему.
Нам удалось совместить теорию с практикой, теперь ничего не работает и неизвестно почему.

FLAGER
Обычный пользователь
Обычный пользователь
Аватара пользователя
 
Сообщения: 67
Зарегистрирован: 12.09.2005 (Пн) 13:49

Сообщение FLAGER » 27.09.2005 (Вт) 15:52

Немного сложнее. Бланк один - в одном документе. Вопросы в другом. И готовые билеты должны быть в третьем.

lord0n
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 845
Зарегистрирован: 30.06.2005 (Чт) 9:55
Откуда: Moskow

Сообщение lord0n » 27.09.2005 (Вт) 15:54

ну поставь запись макроса, на пустом листе сконструируй форму билета, а потом в цикле вставляй в пустой документ
Теория - это когда что-то не работает и известно почему.
Практика - это когда что-то работает, но неизвестно почему.
Нам удалось совместить теорию с практикой, теперь ничего не работает и неизвестно почему.

FLAGER
Обычный пользователь
Обычный пользователь
Аватара пользователя
 
Сообщения: 67
Зарегистрирован: 12.09.2005 (Пн) 13:49

Сообщение FLAGER » 27.09.2005 (Вт) 20:15

Да я уже половину проги сделал, то есть у меня в чистый документа вставляеться бланк, потом там где надо в этот же бланк в третьем документе вставляються вопросы. Но не знаю, как сделать так, чтобы потом уже заповненые билеты отличались от еще не заполненых вопросами, как задать распознавание?

lord0n
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 845
Зарегистрирован: 30.06.2005 (Чт) 9:55
Откуда: Moskow

Сообщение lord0n » 28.09.2005 (Ср) 7:23

FLAGER писал(а):Да я уже половину проги сделал, то есть у меня в чистый документа вставляеться бланк, потом там где надо в этот же бланк в третьем документе вставляються вопросы. Но не знаю, как сделать так, чтобы потом уже заповненые билеты отличались от еще не заполненых вопросами, как задать распознавание?


чет я недогоняю:
если билет пустой то в него можно вставлять вопрос, если заполнен то незя.
вот в этом месте я совсем туплю: в чем проблема?

Код: Выделить всё

if Selection.TypeText Text:="" then Selection.TypeText Text:="Вопрос"


или я не ток понял?
Теория - это когда что-то не работает и известно почему.
Практика - это когда что-то работает, но неизвестно почему.
Нам удалось совместить теорию с практикой, теперь ничего не работает и неизвестно почему.

FLAGER
Обычный пользователь
Обычный пользователь
Аватара пользователя
 
Сообщения: 67
Зарегистрирован: 12.09.2005 (Пн) 13:49

Сообщение FLAGER » 28.09.2005 (Ср) 7:40

2lord0n: Всё, прогу я сделал. Даже с вариантами: сколько билетов, сколько вопросов в каждом и т.д.
Но нужна помощь еще лиш в одном вопросе: как сделать еще и случайный выбор билетов из файла вопросов, но так, чтобы уже выбраные не повторялись???

lord0n
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 845
Зарегистрирован: 30.06.2005 (Чт) 9:55
Откуда: Moskow

Сообщение lord0n » 28.09.2005 (Ср) 7:50

FLAGER писал(а):2lord0n: Всё, прогу я сделал. Даже с вариантами: сколько билетов, сколько вопросов в каждом и т.д.
Но нужна помощь еще лиш в одном вопросе: как сделать еще и случайный выбор билетов из файла вопросов, но так, чтобы уже выбраные не повторялись???


я вижу это так: создаешь массив с вопросами, рендомом выбираешь вопрос, вставляешь его в билет, затираешь строку в массиве, снова выбираешь вопрос, если строка пустая, выбираешь следующий и так далее пова не кончатся вопросы
Теория - это когда что-то не работает и известно почему.
Практика - это когда что-то работает, но неизвестно почему.
Нам удалось совместить теорию с практикой, теперь ничего не работает и неизвестно почему.

FLAGER
Обычный пользователь
Обычный пользователь
Аватара пользователя
 
Сообщения: 67
Зарегистрирован: 12.09.2005 (Пн) 13:49

Сообщение FLAGER » 28.09.2005 (Ср) 14:11

Спасибо, попробую позже.

FLAGER
Обычный пользователь
Обычный пользователь
Аватара пользователя
 
Сообщения: 67
Зарегистрирован: 12.09.2005 (Пн) 13:49

Сообщение FLAGER » 28.09.2005 (Ср) 21:21

Идея помогла.

FLAGER
Обычный пользователь
Обычный пользователь
Аватара пользователя
 
Сообщения: 67
Зарегистрирован: 12.09.2005 (Пн) 13:49

Сообщение FLAGER » 29.09.2005 (Чт) 7:46

Все, прога готова. Спасибо всем, кто помогал мне!!!

lord0n
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 845
Зарегистрирован: 30.06.2005 (Чт) 9:55
Откуда: Moskow

Сообщение lord0n » 29.09.2005 (Чт) 7:49

FLAGER писал(а):Все, прога готова. Спасибо всем, кто помогал мне!!!


да ради бога
обращайся ещё :)
Теория - это когда что-то не работает и известно почему.
Практика - это когда что-то работает, но неизвестно почему.
Нам удалось совместить теорию с практикой, теперь ничего не работает и неизвестно почему.


Вернуться в VBA

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 45

    TopList