Форум программистов «Весельчак У»
  *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

  • Рекомендуем проверить настройки временной зоны в вашем профиле (страница "Внешний вид форума", пункт "Часовой пояс:").
  • У нас больше нет рассылок. Если вам приходят письма от наших бывших рассылок mail.ru и subscribe.ru, то знайте, что это не мы рассылаем.
   Начало  
Наши сайты
Помощь Поиск Календарь Почта Войти Регистрация  
 
Страниц: [1]   Вниз
  Печать  
Автор Тема: Передача данных из Excel в Word  (Прочитано 16204 раз)
0 Пользователей и 2 Гостей смотрят эту тему.
GeoHunter
Гость
« : 13-09-2006 12:16 » 

Всем привет!
Просто запустить Ворд  из Ексела и что-то накропать - получается при помощи
поздней привязки
_________________
Dim WordApp As Object
Set WordApp = CreateObject("Word.Application")
    With WordApp
    .Documents.Add
   .With. Selection
   .Font.Size = 14
             .TypeText Text = "ого!"
End With
    End With
WordApp.Visible = True
__________________
НО ХОТЬ УБЕЙТЕ НЕМОГУ СОЗДАТЬ ТАБЛИЦУ, а тем паче форматировать её и вставл. данные
А ОЧЕНЬ НАДО! ОПЫТА МАЛО!
ПОМОЖИТЕ
Записан
HandKot
Молодой специалист

ru
Offline Offline

« Ответ #1 : 13-09-2006 13:35 » 

пожалуйста

Код:
Public Sub Test()
    Dim WordApp As Object
       
    Set WordApp = CreateObject("Word.Application")
    WordApp.Visible = True
    With WordApp
        .Documents.Add
        With .Selection
            .Font.Size = 14
            .TypeText Text:="ого"
        End With
        .Documents(1).Tables.Add Range:=.Selection.Range, NumRows:=2, NumColumns:= _
            5, DefaultTableBehavior:=wdWord9TableBehavior, AutoFitBehavior:= _
            wdAutoFitFixed
               
        .Documents(1).Tables(1).Cell(1, 1).Range.Text = "111"
        .Documents(1).Tables(1).Cell(1, 2).Range.Text = "222"
        .Documents(1).Tables(1).Cell(2, 1).Range.Text = "333"
        .Documents(1).Tables(1).Cell(2, 5).Range.Text = "444"
    End With
   
    WordApp.Quit
    Set WordApp = Nothing
    Set doc = Nothing
End Sub

совет: на этапе разработки сделайте "раннее связывание" чтобы видеть все методы и св-ва
Записан

I Have Nine Lives You Have One Only
THINK!
GeoHunter
Гость
« Ответ #2 : 13-09-2006 14:10 » 

Спасибо большое HandKot! Похоже это как раз, что надо.
Ранняя привязка, это :VBE--Tools--References-- а дальше ..., плз
У меня вроде всё подключено, но методы не отображались...
Это первый опыт автоматизации с Вордом, хотя конечно и в Екселе далеко не мэтр, но всеже
Еще раз благодарю Внимание! Говорит и показывает...
Записан
HandKot
Молодой специалист

ru
Offline Offline

« Ответ #3 : 13-09-2006 14:20 » new

заменить
Dim WordApp As Object
 на
Dim WordApp As Word.Application

и в Tools--References- ссылку на Microsoft Word
Записан

I Have Nine Lives You Have One Only
THINK!
GeoHunter
Гость
« Ответ #4 : 13-09-2006 14:40 » 

Ну вот вроде всё работает, но теперь немогу выйти из созданной таблицы, чтобы что-то ниже написать и вставить новую таблицу Скромно так...
Надо книжку искать по вордовскому VBA Здесь была моя ладья...
Записан
HandKot
Молодой специалист

ru
Offline Offline

« Ответ #5 : 14-09-2006 05:46 » 

можно попробовать так

Код:
.Documents(1).Words.Last.Select
встанет на конец документа
а потом уже через Selections писать

Код:
With .Selection
            .Font.Size = 14
            .TypeText Text:="огоГОГОГОГОГО"
End With
Записан

I Have Nine Lives You Have One Only
THINK!
Страниц: [1]   Вверх
  Печать  
 

Powered by SMF 1.1.21 | SMF © 2015, Simple Machines