<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
	<title type="html"><![CDATA[Серый форум &mdash; Использование объекта Word в модулях Excel]]></title>
	<link rel="self" href="http://forum.script-coding.com/extern.php?action=feed&amp;tid=8313&amp;type=atom" />
	<updated>2013-05-20T08:08:03Z</updated>
	<generator>PunBB</generator>
	<id>http://forum.script-coding.com/viewtopic.php?id=8313</id>
		<entry>
			<title type="html"><![CDATA[Re: Использование объекта Word в модулях Excel]]></title>
			<link rel="alternate" href="http://forum.script-coding.com/viewtopic.php?pid=72276#p72276" />
			<content type="html"><![CDATA[<div class="quotebox"><cite>alexii пишет:</cite><blockquote><p>Что ж там такое, хоть намекните?</p></blockquote></div><p>Существует великое множество проектной документации, так вот этот проект один из этих множеств, и как в любом проекте есть типовые слова, а есть умозаключения, которые по своей сути логика на основании нормативных документов и тех или иных условий. Как итог, то что пишу Я, возможность в несколько кликов создать проектик, или получить желаемые главы проекта, естественно задав условия необходимые по проекту.</p>]]></content>
			<author>
				<name><![CDATA[arcnik]]></name>
				<uri>http://forum.script-coding.com/profile.php?id=25972</uri>
			</author>
			<updated>2013-05-20T08:08:03Z</updated>
			<id>http://forum.script-coding.com/viewtopic.php?pid=72276#p72276</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Использование объекта Word в модулях Excel]]></title>
			<link rel="alternate" href="http://forum.script-coding.com/viewtopic.php?pid=72274#p72274" />
			<content type="html"><![CDATA[<div class="quotebox"><blockquote><p>Проект около 200 страниц.</p></blockquote></div><p>Что ж там такое, хоть намекните?</p>]]></content>
			<author>
				<name><![CDATA[alexii]]></name>
				<uri>http://forum.script-coding.com/profile.php?id=1844</uri>
			</author>
			<updated>2013-05-20T07:21:46Z</updated>
			<id>http://forum.script-coding.com/viewtopic.php?pid=72274#p72274</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Использование объекта Word в модулях Excel]]></title>
			<link rel="alternate" href="http://forum.script-coding.com/viewtopic.php?pid=72273#p72273" />
			<content type="html"><![CDATA[<div class="quotebox"><cite>alexii пишет:</cite><blockquote><p>&nbsp; (один вопрос — что такого может быть в процедуре, чтобы выйти за рамки ограничений?)</p></blockquote></div><p>Проект около 200 страниц.</p><p>Большое спасибо за помощь и &quot;Болванку&quot;!</p>]]></content>
			<author>
				<name><![CDATA[arcnik]]></name>
				<uri>http://forum.script-coding.com/profile.php?id=25972</uri>
			</author>
			<updated>2013-05-20T06:47:21Z</updated>
			<id>http://forum.script-coding.com/viewtopic.php?pid=72273#p72273</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Использование объекта Word в модулях Excel]]></title>
			<link rel="alternate" href="http://forum.script-coding.com/viewtopic.php?pid=72271#p72271" />
			<content type="html"><![CDATA[<p><strong>arcnik</strong>, на днях было: <a href="http://forum.script-coding.com/viewtopic.php?id=8264">VBA: MSWord инициализация большого массива</a>. Так что, решение разбить код процедуры на несколько — совершенно правильно (один вопрос — что такого может быть в процедуре, чтобы выйти за рамки ограничений?).</p><div class="quotebox"><blockquote><p>Проблема: …</p></blockquote></div><p>Создавайте объект Word.Application и объект документа в основной процедуре, привязанной к кнопке создания отчёта. Затем вызывайте N процедур, передавая им объект документа в качестве параметра. По завершении отработки процедур — закрывайте в основной процедуре документ, делайте выход из приложения, затем очищайте объекты документа и приложения.</p><p>Болванка кода:<br /></p><div class="codebox"><pre><code>Option Explicit

Sub Кнопка1_Щелкнуть()
    Dim objWord As Word.Application
    Dim objDocument As Word.Document
    
    Set objWord = CreateObject(&quot;Word.Application&quot;)
    Set objDocument = objWord.Documents.Add()
    
    &#039;…
    
    Call MySub1(objDocument)
    Call MySub2(objDocument)
    
    &#039;…
    
    objDocument.Close
    objWord.Quit
    
    Set objDocument = Nothing
    Set objWord = Nothing
End Sub

Sub MySub1(objDoc As Word.Document)
    &#039;…
End Sub

Sub MySub2(objDoc As Word.Document)
    &#039;…
End Sub
</code></pre></div><p>P.S. Не забудьте сделать в редакторе VBA ссылку на объектную модель Word&#039;а.</p>]]></content>
			<author>
				<name><![CDATA[alexii]]></name>
				<uri>http://forum.script-coding.com/profile.php?id=1844</uri>
			</author>
			<updated>2013-05-20T05:45:44Z</updated>
			<id>http://forum.script-coding.com/viewtopic.php?pid=72271#p72271</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Использование объекта Word в модулях Excel]]></title>
			<link rel="alternate" href="http://forum.script-coding.com/viewtopic.php?pid=72270#p72270" />
			<content type="html"><![CDATA[<p>Задача:<br />1) Построить отчет в формате Word (в одном файле *.doc), по данным из таблице Excel.<br />Решил:<br />1) Создал Excel;<br />1.1) Пишу макрос к форме с условиями;<br />1.2) Оформляю код к кнопке отчет:<br />1.2.1) Создаю &quot;Sub a()&quot; вызывающий Word (см. код представленный мною выше);<br />1.2.2) Начинаю этот &quot;Sub a()&quot; заполнять условиями текстом и прочим..., что будет опубликовано в документе Word.<br />Проблема:<br />1.2.2) Код всего &quot;Sub a()&quot; слишком большой в строк этак тысячу.<br />Решил:<br />1.2.1) Создать &quot;Sub b()&quot; с продолжением кодов, условий текстом к &quot;Sub a()&quot;.<br />Проблема:<br />&quot;Sub b()&quot; создает новый документ Word и пишет текст в него, а надо продолжить публикацию в первый созданный документ Word.</p>]]></content>
			<author>
				<name><![CDATA[arcnik]]></name>
				<uri>http://forum.script-coding.com/profile.php?id=25972</uri>
			</author>
			<updated>2013-05-20T04:57:41Z</updated>
			<id>http://forum.script-coding.com/viewtopic.php?pid=72270#p72270</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Использование объекта Word в модулях Excel]]></title>
			<link rel="alternate" href="http://forum.script-coding.com/viewtopic.php?pid=72225#p72225" />
			<content type="html"><![CDATA[<p><strong>arcnik</strong>, ещё раз, и, пожалуйста, по-русски: что, откуда, где создаётся. И зачем.</p>]]></content>
			<author>
				<name><![CDATA[alexii]]></name>
				<uri>http://forum.script-coding.com/profile.php?id=1844</uri>
			</author>
			<updated>2013-05-17T15:01:07Z</updated>
			<id>http://forum.script-coding.com/viewtopic.php?pid=72225#p72225</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Использование объекта Word в модулях Excel]]></title>
			<link rel="alternate" href="http://forum.script-coding.com/viewtopic.php?pid=72208#p72208" />
			<content type="html"><![CDATA[<p>Проблема в том что создв объекта Ворд:<br /></p><div class="codebox"><pre><code>
Sub a ()
Dim objWrd As Object, objDoc As Object
   Set objWrd = CreateObject(&quot;Word.Application&quot;)
   Set objDoc = objWrd.Documents
    objDoc.Add DocumentType:=wdNewBlankDocument
objDoc(1).Application.Selection.TypeText Text:=&quot;Какой то текст&quot;
objDoc(1).Application.Selection.TypeText Text:=&quot;Еще какой то текст&quot;
objDoc(1).Application.Selection.TypeText Text:=&quot;И так практически до бесконечности с различным текстом&quot;
objWrd.Visible = True
End Sub
</code></pre></div><p>Происходит так сказать переполнение которое не позволяет выполнить данный макрос.<br />При создании подобного макроса с продолжением текста, сам текст уже идет в другом документе ворд (так как я понимаю создается еще один объект), а надо чтоб продолжился в первом созданном документе, но получается из другова макроса того же документа ексель.</p>]]></content>
			<author>
				<name><![CDATA[arcnik]]></name>
				<uri>http://forum.script-coding.com/profile.php?id=25972</uri>
			</author>
			<updated>2013-05-17T12:15:46Z</updated>
			<id>http://forum.script-coding.com/viewtopic.php?pid=72208#p72208</id>
		</entry>
</feed>
