powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / word-excel
17 сообщений из 17, страница 1 из 1
word-excel
    #37226324
PlanB
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
добрый денть!
напомните, пожалуйста, можно ли тянуть данные из excel в word встроенными средствами, или же для этого нужно писать код vba?
в любом случае - пример, пожалуйста, простейшей связки: автообновляемая таблица в ворде с данными из excel
спасибо
...
Рейтинг: 0 / 0
word-excel
    #37226608
Фотография Stepler
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PlanB,

Если идет речь о "ручном" обновлении вставленной табл. Экселя в Ворд как "объекта", то следует войти в объект как изменение его и "Правка-Связи-Обновить"....
...
Рейтинг: 0 / 0
word-excel
    #37226679
PlanB
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SteplerPlanB,

Если идет речь о "ручном" обновлении вставленной табл. Экселя в Ворд как "объекта", то следует войти в объект как изменение его и "Правка-Связи-Обновить"....ну, задумка какая: программно создается шаблон, cword связанный с excel. туда падают данные из excel. как сделать просто и качественно?
...
Рейтинг: 0 / 0
word-excel
    #37226815
PlanB,
в Экселе скопировать диапазон, в Ворде Правка - Специальная вставка
...
Рейтинг: 0 / 0
word-excel
    #37226834
Поторопился. Так будет работать только до закрытия файла Эксель
...
Рейтинг: 0 / 0
word-excel
    #37226875
Фотография Stepler
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
пробуй камнем,

Даже при открытом файле Экселя такое работать не должно...
Я исчо раньше убеждался, что обновления лучше тока вручную и при ентом делать ссылку на ячейку/диапазон Экселя (а не пробуй камнемв Экселе скопировать диапазон, в Ворде Правка - Специальная вставка) типа:
Код: plaintext
='\\Oz-3\d$\[Нормы на металл.xls]Лист3'!B5

а далее, как говорил раньше...
...
Рейтинг: 0 / 0
word-excel
    #37227057
Stepler,
Даже при открытом файле Экселя такое работать не должно...Но работает. Данные не обновляются только если выбрать тип вставки "Word Hyperlink". Со всеми остальными типами, включая "Точечный рисунок", как ни уивительно, но обновление происходит.
...
Рейтинг: 0 / 0
word-excel
    #37227074
PlanB
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
господа, небольшой офф
поделитесь строкой подклюсения и самим запросом к sql-серваку из excel. вместо динозавра, записанного макрорекордером, хотелось бы что-то более жизнеспособное получить


Код: 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.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
Sub Ìàêðîñ 1 ()

'
    Sheets("CS_balance").Select
    With ActiveWorkbook.Connections( _
        "M2010012000501_SQLEXPRESS Bank_RUR balance201005").OLEDBConnection
        .BackgroundQuery = True
        .CommandText = Array("""Bank_RUR"".""sys_anl"".""balance201005""")
        .CommandType = xlCmdTable
        .Connection = Array( _
        "OLEDB;Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=True;Data Source=M2010012000501\SQLEXPRESS;Use Procedure for " _
        , _
        "Prepare=1;Auto Translate=True;Packet Size=4096;Workstation ID=M2010012000501;Use Encryption for Data=False;Tag with column colla" _
        , "tion when possible=False;Initial Catalog=Bank_RUR")
        .RefreshOnFileOpen = False
        .SavePassword = False
        .SourceConnectionFile = _
        "C:\Users\...\Documents\Ìîè èñòî÷íèêè äàííûõ\M2010012000501_SQLEXPRESS Bank_RUR balance201005.odc"
        .SourceDataFile = ""
        .ServerCredentialsMethod = xlCredentialsMethodIntegrated
        .AlwaysUseConnectionFile = False
        .ServerFillColor = False
        .ServerFontStyle = False
        .ServerNumberFormat = False
        .ServerTextColor = False
    End With
    With ActiveWorkbook.Connections( _
        "M2010012000501_SQLEXPRESS Bank_RUR balance201005")
        .Name = "M2010012000501_SQLEXPRESS Bank_RUR balance201005"
        .Description = ""
    End With
    With ActiveSheet.ListObjects.Add(SourceType:= 0 , Source:=Array( _
        "OLEDB;Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=True;Data Source=M2010012000501\SQLEXPRESS;Use Procedure for " _
        , _
        "Prepare=1;Auto Translate=True;Packet Size=4096;Workstation ID=M2010012000501;Use Encryption for Data=False;Tag with column colla" _
        , "tion when possible=False;Initial Catalog=Bank_RUR"), Destination:=Range( _
        "$A$1")).QueryTable
        .CommandType = xlCmdTable
        .CommandText = Array("""Bank_RUR"".""sys_anl"".""balance201005""")
        .RowNumbers = False
        .FillAdjacentFormulas = False
        .PreserveFormatting = True
        .RefreshOnFileOpen = False
        .BackgroundQuery = True
        .RefreshStyle = xlInsertDeleteCells
        .SavePassword = False
        .SaveData = True
        .AdjustColumnWidth = True
        .RefreshPeriod =  0 
        .PreserveColumnInfo = True
        .SourceConnectionFile = _
        "C:\Users\...\Documents\Ìîè èñòî÷íèêè äàííûõ\M2010012000501_SQLEXPRESS Bank_RUR balance201005.odc"
        .ListObject.DisplayName = _
        "Òàáëèöà_M2010012000501_SQLEXPRESS_Bank_RUR_balance201005"
        .Refresh BackgroundQuery:=False
    End With
End Sub
...
Рейтинг: 0 / 0
word-excel
    #37227075
PlanB
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
сам запрос такой:
Код: plaintext
select * from sys_anl.balance201005
...
Рейтинг: 0 / 0
word-excel
    #37235138
PlanB
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
что-то по основной теме я, конечно, написал
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
Sub CopyFromWord()
Dim wdApp As Object
Dim wdDoc As Object

Set wdApp = CreateObject("Word.Application")
With wdApp
    .Visible = True
    Set wdDoc = .Documents.Add()
End With

ThisWorkbook.Worksheets("Analytical_balance").Range("A5:K65").Copy
wdApp.Selection.PasteExcelTable False, False, False

wdDoc.Close
wdApp.Quit

Set wdDoc = Nothing
Set wdApp = Nothing
End Sub
НО: мне нужно создать след. структуру документа:
в заранее подготовленный шаблон повставлять таблички (разного размера) в определенные места (иежду таблицами текст)
...
Рейтинг: 0 / 0
word-excel
    #37235255
Фотография The_Prist
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PlanB,

Не так давно делал заказ, так там точь-в-точь тоже самое требовалось: подставить в шаблон Word таблицы из Excel(точнее это была часть необоходимого). Таблицы в шаблоне были заранее вставлены и имели фиксированные заголовки. Путем перебора таблиц в Excel я подставлял их в Word.
Могу поделиться наработкой через личку - может пригодится чего.
...
Рейтинг: 0 / 0
word-excel
    #37235641
PlanB
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
The_Prist, отписал
...
Рейтинг: 0 / 0
word-excel
    #37244150
PlanB
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
подскажите, пожалуйста, как прописать код таким образом, чтобы в таблицу ворда вставлялись только значение. дело в том, что у меня пропадает форматирование при вставке (проценты дробями и т.д.)

код такой
Код: 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.
Sub CopyFromWord()
Dim wdApp As Object
Dim wdDoc As Object
Dim i, j As Integer
'Dim wdDoc As Document


Set wdApp = CreateObject("Word.Application")
Set wdDoc = wdApp.Documents.Open(Filename:="C:\Users\skutenko\Desktop\Øàáëîí Âîðäà.docx")

wdApp.Visible = True
'Manipulate
With wdDoc.Tables( 1 )
    For i =  1  To  65 
        For j =  1  To  5 
            .Cell(i +  1 , j +  2 ) = ThisWorkbook.Worksheets("Analytical_balance").Cells(i +  5 , j +  6 )
        Next j
    Next i
End With




wdDoc.Close
wdApp.Quit

Set wdDoc = Nothing
Set wdApp = Nothing
End Sub
...
Рейтинг: 0 / 0
word-excel
    #37244166
PlanB
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
и моя традиционная рубрика "ответы на свои же вопросы":
Код: plaintext
.Cell(i +  1 , j +  2 ) = ThisWorkbook.Worksheets("Analytical_balance").Cells(i +  5 , j +  6 ).Text
...
Рейтинг: 0 / 0
word-excel
    #37246887
PlanB
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
и снова по теме
с таблицами всё ясно: заполняются на ура. а как мне организовать прочедуру внедрения текста в определенное место документа?

спасибо!
...
Рейтинг: 0 / 0
word-excel
    #37247263
Фотография The_Prist
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PlanB ,

А в моем примере такое было: банальные закладки Word-а могут помочь. Распихиваете их в любое место документа, а из Excel ссылаетесь на них и вставляете любой текст какой вздумается.
...
Рейтинг: 0 / 0
word-excel
    #37247364
PlanB
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
The_Prist PlanB ,

А в моем примере такое было: банальные закладки Word-а могут помочь. Распихиваете их в любое место документа, а из Excel ссылаетесь на них и вставляете любой текст какой вздумается.да, я ознакомился. спасибо ещё раз за него!
просто подумал, что может быть иной способ. по Вашему методу уже работа идет =)))
...
Рейтинг: 0 / 0
17 сообщений из 17, страница 1 из 1
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / word-excel
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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