Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Помогите разобраться!.. / 25 сообщений из 25, страница 1 из 1
21.09.2003, 11:21
    #32271082
The¤Lexx
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите разобраться!..
Здраствуйте, помогите с вопросом плиз:

Есть форма, в ней 45 чекбоксов, если чекбокс выбирается, он находит ячейку в документе Excel которая содержит какое-то число. Как сделать, чтобы после того как нашлась эта ячека она вставлялась в новый открывшийся документ ворд. Проблема у меня возникла с вставкой содержимой найденой ячейки в ворд. Как описать такую процедуру. Я пробывал:

Код: plaintext
1.
2.
3.
4.
If CheckBox6.Value = True Then
Set cb6 = Cells.Find(What:= "06  -", After:=ActiveCell, LookIn:=xlFormulas, LookAt _
    :=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:= _
    False, SearchFormat:=False)
End If


а вставить в ворд:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
Dim AppWord As Word.Application
Dim AppDoc As Document

Set AppWord = CreateObject( "Word.Application" )
Set AppDoc = AppWord.Documents.Add

ActiveDocument.Range.Words( 1 ).InsertAfter  "" & cb6

AppWord.ActiveDocument.SaveAs " c:\Test.doc"
AppWord.Quit


Помогите плиз разобраться, может можно как-то подругому это описать?!..
Уже сроки поджимают а я в этом VBA очень плохо разбираюсь. Просто так получилось что пришлось заняться этим. Буду очень признателен если поможите разобраться!
...
Рейтинг: 0 / 0
21.09.2003, 12:29
    #32271103
Shkurenko Alexander
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите разобраться!..
The¤Lexx
Не волнуйся, попробуем разобраться.

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
If CheckBox6.Value = True Then
Set cb6 = Cells.Find(What:= "06  -", After:=ActiveCell, LookIn:=xlFormulas, LookAt _
    :=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:= _
    False, SearchFormat:=False)
    ' здесь должна быть проверка нашли мы искомое или нет, что-то вроде этого'
    if cb6 Is Nothing Then
        Debug.Print  "Значение не найдено!" 
        Exit Sub ' Exit Function или Exit Property
    End If
End If

движемся далее
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
Dim AppWord As Word.Application
Dim AppDoc As Document

Set AppWord = CreateObject( "Word.Application" )
Set AppDoc = AppWord.Documents.Add

'->> ActiveDocument.Range.Words(1).InsertAfter "" & cb6
' ActiveDocument можно было бы использовать, если твой макрос работал бы в Word'е
' ты же создаешь объект документ - через него и работай
AppDoc.Range.Words( 1 ).InsertAfter  "" & cb6.Value
AppWord.ActiveDocument.SaveAs " c:\Test.doc"
AppWord.Quit

вроде всё.
...
Рейтинг: 0 / 0
21.09.2003, 17:42
    #32271159
The¤Lexx
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите разобраться!..
Спасибо большое что согласился помочь!

Но всеравно не хочет вставлять это в ворд, ненравится ему эта строчка:

Код: plaintext
AppDoc.Range.Words( 1 ).InsertAfter "" & cb6.Value


:((((((((
...
Рейтинг: 0 / 0
21.09.2003, 18:20
    #32271172
Shkurenko Alexander
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите разобраться!..
> Спасибо большое что согласился помочь!
Пока не за что :-(

Можно я тебя немного "поэкзаменую"?

1. В каком приложение работает твой макрос? (Excel, Word, Access)
2. Приведи текст ошибки дословно.
3. Попробуй убрать зловредную строку и выполнить макрос. Документ на диске C создается?
Если да перед этой строкой вставь строку
Код: plaintext
Debug.Print cb6.Value.

Значение выводится в окне отладки ? Если опять да, попробуй следующую cтроку
Код: plaintext
AppDoc.Words( 1 ).InsertAfter CStr(cb6.Value)

4. Ничего не получается? Тогда код полностью в студию.
...
Рейтинг: 0 / 0
21.09.2003, 21:01
    #32271190
The¤Lexx
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите разобраться!..
- Макрос работает в Exсel.
- Ошибка времени исполнения:

Run-time error (424)
Object required


- Если убрать строку или убрать с конца .Value то документ создается, но пустой.
- Вствлял строку:
Код: plaintext
Debug.Print cb6.Value


Выдает точно такуюже ошибку!

- Значение выводится в окне отладке. Если изменяю на строку:

Код: plaintext
AppDoc.Words( 1 ).InsertAfter CStr(cb6.Value)


Выдает опять точно такуюже ошибку.

- Код полность (формы):

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
Private Sub Cancel_button_Click()

    Dim Msg, Title, Response As String

    Msg =  "текс?" 

    Style = vbYesNo + vbCritical + vbDefaultButton2
    Title =  "текс" 
    Response = MsgBox(Msg, Style, Title)

    If Response = vbYes Then
        Unload Me
    End If
    
End Sub

..... остальные чекбоксы

Private Sub CheckBox6_Click()
If CheckBox6.Value = True Then
Set cb6 = Cells.Find(What:= "06  -", After:=ActiveCell, LookIn:=xlFormulas, LookAt _
    :=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:= _
    False, SearchFormat:=False)
    If cb6 Is Nothing Then
        Debug.Print  "текс!" 
        Exit Sub
    End If
End If
End Sub

..... остальные чекбоксы


Private Sub OK_button_Click()
    Unload Me
End Sub


- Код макроса:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
Sub FormaExele()

Form1.Show

Dim AppWord As Word.Application
Dim AppDoc As Document

Set AppWord = CreateObject( "Word.Application" )
Set AppDoc = AppWord.Documents.Add

AppDoc.Words( 1 ).InsertAfter CStr(cb6.Value)

AppWord.ActiveDocument.SaveAs  "c:\Test.doc" 
AppWord.Quit


End Sub
...
Рейтинг: 0 / 0
21.09.2003, 22:58
    #32271202
Shkurenko Alexander
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите разобраться!..
Ладно. По моему мне ясна твоя проблема. Как я и предполагал объектная переменная cb6, в момент записи в документ Word'а у тебя неинициализирована. Попробую объяснить на пальцах

1. Запускаешь макрос FormaExele
2. Открывается форма
3. Ты кликаешь СheckBox6, при клике запускается обработчик событий, в котором находится определенная область/ячейка листа, содержащая искомое значение. И эта область присваивается переменной cb6 .
4. Далее ты нажимаешь кнопку ОК, происходит выгрузка формы. В этот момент происходит также очистка всех переменных объявленных в модуле формы, в том числе и cb6 ! Хотя я сомневаюсь, что эта переменная вообще была объявлена. (Советую почитать про область видимости и время жизни переменных). И в тот момент, когда происходит обращение в этой злополучной строке, эта переменная равна Empty.
5. Самым простым (но необязательно правильным) решением будет объявить глобальную переменную в том модуле, где находится макрос FormaExele
Код: plaintext
Public cb6 As Excel.Range


Все на сегодня хватит, пора спать.
...
Рейтинг: 0 / 0
21.09.2003, 23:33
    #32271215
The¤Lexx
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите разобраться!..
Хм.. тогда щас попробывал cделать так, в код формы вписал это, до выгрузки формы:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
Private Sub OK_button_Click()
Dim cb6 As Excel.Range
Dim AppWord As Word.Application
Dim AppDoc As Document

Set AppWord = CreateObject( "Word.Application" )
Set AppDoc = AppWord.Documents.Add

Rem AppDoc.Range.Words( 1 ).InsertAfter  "" & cb6.Value

AppWord.ActiveDocument.SaveAs " c:\Test.doc"
AppWord.Quit

    Unload Me
End Sub


Всеравно результат тотже.. причем Public cb6 As Excel.Range тоже нехочет понимать.. :(((
...
Рейтинг: 0 / 0
22.09.2003, 08:49
    #32271287
Shkurenko Alexander
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите разобраться!..
ОК. Давай разбираться с временем жизни переменных. Приведу пример.

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
' --------------------  Module1.bas ------------------'
Public Sub Test1()
    Dim a As String
    a =  "что-нибудь" 
End Sub

Public Sub Test2()
    Call Test1
    Debug.Print a
End Sub

'  --------------------  Module2.bas ------------------
 
Dim a As String

Public Sub Test1()
    a =  "что-нибудь" 
End Sub

Public Sub Test2()
    Call Test1
    Debug.Print a
End Sub


В обоих модулях запускай макрос Test2 и проанализируй результаты. После этого подумай, куда тебе нужно вставить строку
Код: plaintext
Dim cb6 As Excel.Range

Пока не буду подсказывать, если сам не разберешься тогда помогу.
...
Рейтинг: 0 / 0
22.09.2003, 12:29
    #32271552
The¤Lexx
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите разобраться!..
Я правда не очень хорошо разобрался с твоими примерами, но просмотрев их понял куда нужно вставить
Код: plaintext
Dim cb6 As Excel.Range

Все заработало! :)

Спасибо огромное за помощь, ничего если я еще походу что-нибудь у тебя спрошу?
...
Рейтинг: 0 / 0
22.09.2003, 12:36
    #32271565
The¤Lexx
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите разобраться!..
Я так понял, если Dim стоит в начале модуля, то эту переменную могут использоваться все модули в макросе данном, а если только в нутри какого-то модуля то только этот модуль, внутри которого стоит обозначение переменной!..

Вот у меня еще возник вопрос походу, как убрать ошибку возникающюю если выбирается другой чекбокс, потому как из всех чекбоксов не всегда должны будут выбиратсья все чекбоксы, только несколько!.. А он выдает ошибку что чекбокс не выбран :(
...
Рейтинг: 0 / 0
22.09.2003, 12:53
    #32271591
The¤Lexx
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите разобраться!..
Вроди тоже разобрался вставил обработчик ошибок:

Код: plaintext
1.
2.
3.
On Error GoTo err

err:
Resume Next


.. :)
...
Рейтинг: 0 / 0
22.09.2003, 14:03
    #32271720
The¤Lexx
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите разобраться!..
Блин.. все ок.. только вот еще проблема: когда он вставляет несколько абзацев в ворд то пони крива вставляются, получается каша, когда один абзац нормально а если несколько:

Код: plaintext
1.
2.
3.
 06   09  - шмекс, шмекс, шмекс, шмекс, шмекс, шмекс, шмекс, шмекс, шмекс, шмекс, шмекс, шмекс, шмекс, шмекс, шмекс, шмекс, шмекс, шмекс, шмекс, шмекс, шмекс, шмекс, шмекс, шмекс, шмекс, шмекс, шмекс, шмекс, шмекс, шмекс, шмекс, шмекс, шмекс, шмекс, шмекс, шмекс, шмекс, шмекс, шмекс, шмекс, шмекс, шмекс, шмекс, шмекс, шмекс, шмекс, шмекс, шмекс, шмекс, шмекс, шмекс, шмекс, шмекс, шмекс, шмекс, шмекс, шмекс, шмекс, шмекс, шмекс, шмекс, шмекс, шмекс, шмекс, шмекс, шмекс, шмекс, шмекс, шмекс, шмекс, шмекс, шмекс, шмекс.
 08  - текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст.
 07  - текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст.
- текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст.


В экселе они по порядку стоят:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
 06  - текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст.

 07  - текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст.

 08  - текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст, текст.

 09  - шмекс, шмекс, шмекс, шмекс, шмекс, шмекс, шмекс, шмекс, шмекс, шмекс, шмекс, шмекс, шмекс, шмекс, шмекс, шмекс, шмекс, шмекс, шмекс, шмекс, шмекс, шмекс, шмекс, шмекс, шмекс, шмекс, шмекс, шмекс, шмекс, шмекс, шмекс, шмекс, шмекс, шмекс, шмекс, шмекс, шмекс, шмекс, шмекс, шмекс, шмекс, шмекс, шмекс, шмекс, шмекс, шмекс, шмекс, шмекс, шмекс, шмекс, шмекс, шмекс, шмекс, шмекс, шмекс, шмекс, шмекс, шмекс, шмекс, шмекс, шмекс, шмекс, шмекс, шмекс, шмекс, шмекс, шмекс, шмекс, шмекс, шмекс, шмекс, шмекс, шмекс.
...
Рейтинг: 0 / 0
22.09.2003, 15:39
    #32271879
Shkurenko Alexander
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите разобраться!..
Все заработало! :)

Рад за тебя!

Спасибо огромное за помощь, ничего если я еще походу что-нибудь у тебя спрошу?

Хорошо, только давай договоримся, что сначала ты попробуешь решить проблемы собственными силами (т.е. основательно подумать, почитать HELP или умные книги) и только в случае ступора задавать вопросы в форум. Хорошо?

Блин.. все ок.. только вот еще проблема: когда он вставляет несколько абзацев в ворд то пони крива вставляются

Тебе нужно, чтобы значения начинались с нового абзаца и шли по порядку?
На твоем месте я бы сделал так.(пока не предлагаю использовать массивы и коллекции)
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
' ----------------------- модуль  формы ------------------------'
Dim cb1 As Excel.Range
Dim cb2 As Excel.Range
Dim cb3 As Excel.Range
' ...............'
Dim cb45 As Excel.Range

Sub SaveInWord()
    Dim appWord As Word.Application
    Dim doc As Document
    
    Set appWord = CreateObject( "Word.Application" )
    Set doc = appWord.Documents.Add

    If Not (cb1 Is Nothing) And ChekBox1.Value = True Then
        doc.Words(doc.Words.Count).InsertAfter CStr(cb1.Value)
        doc.Paragraphs.Add
    End If
    
    If Not (cb2 Is Nothing) And ChekBox2.Value = True Then
        doc.Words(doc.Words.Count).InsertAfter CStr(cb2.Value)
        doc.Paragraphs.Add
    End If
    
    ' ............'
    
    If Not (cb45 Is Nothing) And ChekBox3.Value = True Then
        doc.Words(doc.Words.Count).InsertAfter CStr(cb45.Value)
    End If
    
    doc.SaveAs  "c:\temp.doc" 
    appWord.Quit
    
End Sub
...
Рейтинг: 0 / 0
22.09.2003, 16:06
    #32271916
The¤Lexx
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите разобраться!..
Такаяже проблема как с переменными, ругается по поводу строчки:

Код: plaintext
    If Not (cb1 Is Nothing) And ChekBox1.Value = True Then


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

А что значит cb1 Is Nothing? Немножко непонял я этот цикл.
...
Рейтинг: 0 / 0
22.09.2003, 16:11
    #32271925
Shkurenko Alexander
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите разобраться!..
> Такаяже проблема как с переменными, ругается по поводу строчки:
If Not (cb1 Is Nothing) And ChekBox1.Value = True Then


Я описался. Нужно
If Not (cb1 Is Nothing) And Che c kBox1.Value = True Then

cb1 Is Nothing - про это чуть-чуть попозже расскажу.
...
Рейтинг: 0 / 0
22.09.2003, 16:14
    #32271926
The¤Lexx
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите разобраться!..
А какая разница? :)
...
Рейтинг: 0 / 0
22.09.2003, 16:16
    #32271930
The¤Lexx
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите разобраться!..
А сорри... все пойду отдыхать.. невижу синтаксических ошибок.. савсем плохо :)
...
Рейтинг: 0 / 0
22.09.2003, 16:20
    #32271937
The¤Lexx
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите разобраться!..
Спасибо огромнейшее!!!
...
Рейтинг: 0 / 0
25.09.2003, 17:48
    #32275910
The¤Lexx
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите разобраться!..
Помоги пожалуйста еще разобраться.
Нужно выделенную область ячеек (в Excel`е) вставить в ворд. Пробывал через переменную не получается пробывал через буфер, получилось только вствить как таблицу, а именно текст не получилось.
Вроди содержимое ячейки: Range("A1:A20").Formula
Вобщем я очень много вариантов перепробывал, подскажи плиз как это сделать можно?
...
Рейтинг: 0 / 0
25.09.2003, 22:13
    #32276159
Shkurenko Alexander
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите разобраться!..
Нужно выделенную область ячеек (в Excel`е) вставить в ворд

Ну это совсем просто :)

Код: plaintext
1.
ActiveSheet.Range( "A1:A20" ).Copy
doc.Range.PasteAndFormat wdFormatPlainText


Range("A1:A20").Formula - тебе нужны в Word'e формулы ( =СУММ(A2:D2) )?
...
Рейтинг: 0 / 0
29.09.2003, 14:44
    #32278371
The¤Lexx
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите разобраться!..
Спасибо огромное за предыдущие ответы.
Сейчас вот возникла проблема в Excel ХР все прекрасно работает, но при попытки запуска в Excel 2000 не все идет гладко проблема с последней частью во сновном не понимает вот эту строчку:

Код: plaintext
doc.Range.PasteAndFormat wdFormatPlainText


Сейчас сижу с утра пытаюсь найти в Объектах Екселя похожие значения но не получается, это вобще совместимо с 2000 и подскажи если не сложно как можно исправить эту ошибку?

Остальной код мне удалось немного изменить, и все работает нормально, только вот с этим никак не могу разобраться. :(

Заранее еще раз огромное спасибо!
...
Рейтинг: 0 / 0
29.09.2003, 17:46
    #32278688
Shkurenko Alexander
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите разобраться!..
Сейчас сижу с утра пытаюсь найти в Объектах Екселя похожие значения но не получается

The¤Lexx ты работаешь с объектом Word'a, а ищешь в объектах Excell'я?

это вобще совместимо с 2000 и подскажи если не сложно как можно исправить эту ошибку?

Эх... я думал обойдется малой кровью. Посмотрел Help, да действительно метод PasteAndFormat появился только в Office XP. Но ты на всякий случай посмотри в объектной модели Word'а 2000, а вдруг я ошибаюсь? Если нет, тогда придется делать все ручками.
...
Рейтинг: 0 / 0
02.10.2003, 08:56
    #32281410
The¤Lexx
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите разобраться!..
Я ошибся когда писал, в объектах Ворда я искал конечно же.
Существует только похожая PasteFormat но она не подошла или же может я просто неправильно её вствил, я всякие варианты перепробывал не работает.

Извени что нервы порчю...

Но поясни еще что значит "придется делать все ручками"?
В 2000 неполучится этого сделать?
...
Рейтинг: 0 / 0
02.10.2003, 21:57
    #32282625
Shkurenko Alexander
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите разобраться!..
Простецкий пример.

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
Public Sub Test
    Dim s As String
    Dim i As Integer, k As Integer, nRow As Integer, nColumn As Integer

    nRow = 3 ' количество строк
    nColumn = 3 ' количество колонок
    For i = 1 To nRow
        s = ""
        For k = 1 To nColumn
            s = s & " " & CStr(ActiveSheet.Cells(i, k).Value)
        Next
        s = Mid$(s, 2)
        Debug.Print s ' здесь должна быть запись в документ Word'а
    Next
End Sub


Думаю должен разобраться.
...
Рейтинг: 0 / 0
06.10.2003, 13:06
    #32284917
The¤Lexx
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите разобраться!..
Спасибо большое за пример. У меня такая проблема при выполнение кода вставляется в ворд только последняя строка выбранная в nRow = 20 . Немогу разобраться почему.
Впринцепе не нужно проходить какие-то еще колонки кроме первой (А), вся информация содержится только в первой колонке и где-то в 20 строках. Поэтому может сразу описать чтобы текс брался только с первой колонки, если конечно это не сложнее сделать. Может кокраз в этом загвоздка?

Мне ужасно не удобно доставлять тебе столько лишней головной боли из-за себя, но я был бы очень признателен если бы ты подсказал мне еще не много.
Заранее огромное спасибо.
...
Рейтинг: 0 / 0
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Помогите разобраться!.. / 25 сообщений из 25, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]