краткость, конечно, сестра таланта - но не до такой же степени. Предлагаете угадать на какой строке и какая именно ошибка? Откуда что вызываете тоже надо угадать? Вы куда и что вставляете? Что здесь у Вас Word, что Excel? Если слева Word, то основной посыл в том, что там нет объекта Cells - есть Cell.
Из Эксель создаю ворд и слева уже ворд справа хочу из Эксель значение, видимо полное имя надо. Вторая строка без ошибки, в первой попытался из Эксель дать значение
Ну вообщем сидеть гадать и ожидать вменяемого описания времени нет. Возможно, в активной книге Excel нет листа "Лист1". Больше без текста ошибки сказать нечего вообще.
Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы...
Sub TABL_Word()
On Error GoTo Instr
Dim myWord As New Word.Application, _
myDocument As Word.Document, _
myTable As Word.Table, myInt As Integer
Set myDocument = myWord.Documents.Add
myWord.Visible = True
With myDocument
'Вставляем заголовок таблицы
.Range.InsertAfter "Вставка таблицы" & vbCr
myInt = .Range.Characters.Count - 1
'Присваиваем заголовку стиль
.Range(0, myInt).Style = "Обычный"
'Создаем таблицу
Set myTable = .Tables.Add(.Range(myInt, myInt), 4, 4)
End With
With myTable
'Отображаем сетку таблицы
.Borders.OutsideLineStyle = wdLineStyleSingle
.Borders.InsideLineStyle = wdLineStyleSingle
'Форматируем первую и четвертую строки
.Rows(1).Range.Bold = True
.Rows(4).Range.Bold = True
'Заполняем первый столбец
.Columns(1).Cells(1).Range = Sheets("Лист1").Range("А" & 1).Value 'Не работает если поставить "АААА" то пойдет
.Columns(1).Cells(2).Range = Sheets("Лист1").Range("B" & 1).Value 'Не работает если поставить "ББББ" то пойдет
.Columns(1).Cells(3).Range = "ВВВВ" 'Так работает
.Columns(1).Cells(4).Range = "ГГГГ" 'Так работает
End With
'Освобождаем переменные
Set myDocument = Nothing
Set myWord = Nothing
'Завершаем процедуру
Exit Sub
'Обработка ошибок
Instr:
If Err.Description <> "" Then
MsgBox "Произошла ошибка: " & Err.Description
End If
If Not myWord Is Nothing Then
myWord.Quit
Set myDocument = Nothing
Set myWord = Nothing
End If
End Sub
код - в модуль, в Лист1 в A1 и B1 что-нибудь и библиотеку Word 16.0 подключить ! Тут не верно: .Columns(1).Cells(1).Range = Sheets("Лист1").Range("А" & 1).Value Второй момент дабы темы не плодить возможно ли заполнить таблицу после заполнения заголовков оставшиеся строки заполнить циклом или массивом из A2:D4