powered by simpleCommunicator - 2.0.56     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Помогите разобраться!..
25 сообщений из 25, страница 1 из 1
Помогите разобраться!..
    #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
Помогите разобраться!..
    #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
Помогите разобраться!..
    #32271159
The¤Lexx
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Спасибо большое что согласился помочь!

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

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


:((((((((
...
Рейтинг: 0 / 0
Помогите разобраться!..
    #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
Помогите разобраться!..
    #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
Помогите разобраться!..
    #32271202
Shkurenko Alexander
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ладно. По моему мне ясна твоя проблема. Как я и предполагал объектная переменная cb6, в момент записи в документ Word'а у тебя неинициализирована. Попробую объяснить на пальцах

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


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

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

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

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

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

err:
Resume Next


.. :)
...
Рейтинг: 0 / 0
Помогите разобраться!..
    #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
Помогите разобраться!..
    #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
Помогите разобраться!..
    #32271916
The¤Lexx
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Такаяже проблема как с переменными, ругается по поводу строчки:

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


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

А что значит cb1 Is Nothing? Немножко непонял я этот цикл.
...
Рейтинг: 0 / 0
Помогите разобраться!..
    #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
Помогите разобраться!..
    #32271926
The¤Lexx
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
А какая разница? :)
...
Рейтинг: 0 / 0
Помогите разобраться!..
    #32271930
The¤Lexx
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
А сорри... все пойду отдыхать.. невижу синтаксических ошибок.. савсем плохо :)
...
Рейтинг: 0 / 0
Помогите разобраться!..
    #32271937
The¤Lexx
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Спасибо огромнейшее!!!
...
Рейтинг: 0 / 0
Помогите разобраться!..
    #32275910
The¤Lexx
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Помоги пожалуйста еще разобраться.
Нужно выделенную область ячеек (в Excel`е) вставить в ворд. Пробывал через переменную не получается пробывал через буфер, получилось только вствить как таблицу, а именно текст не получилось.
Вроди содержимое ячейки: Range("A1:A20").Formula
Вобщем я очень много вариантов перепробывал, подскажи плиз как это сделать можно?
...
Рейтинг: 0 / 0
Помогите разобраться!..
    #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
Помогите разобраться!..
    #32278371
The¤Lexx
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Спасибо огромное за предыдущие ответы.
Сейчас вот возникла проблема в Excel ХР все прекрасно работает, но при попытки запуска в Excel 2000 не все идет гладко проблема с последней частью во сновном не понимает вот эту строчку:

Код: plaintext
doc.Range.PasteAndFormat wdFormatPlainText


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

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

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

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

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

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

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

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

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


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