analitica.jimdo.com
Интеграция с другими программами — Макросы в Excel
9-13 минут
Не стоит забывать и о возможностях интеграции VBA с другими приложениями. Монополия это конечно плохо, но в данном случае именно монопольное положение Microsoft дало нам столько возможностей по интеграции различных приложений друг в друга.
Итак, с чем и как можно интегрировать VBA?
Текстовый файл
Текстовые переменные, если они большие, можно хранить в текстовом файле. Это удобно еще и потому, что в этом случае любой человек может редактировать текст, не влезая в код, а значит и не имея возможности его сломать.
‘ объявляем о начале использования такого типа объекта
Set fso = CreateObject(«scripting.filesystemobject»)
‘ открываем нужный файл
Set tS = fso.OpenTextFile(full_name_of_txt-file, 1, True)
‘ присваиваем стринговой переменной весь текст, содержащийся в файле
msg_text = tS.ReadAll
‘ закрываем текстовый файл
tS.Close
Просмотр файлов в папке
Средствами VBA можно получить список файлов, находящихся в папке, причем не только файлов MS Office, но и всех остальных. Это бывает нужно, например, чтобы открыть все файлы и напечатать, открыть несколько стандартных файлов и агрегировать хранящуюся в них информацию или чтобы просто получить список имеющихся файлов. Для этого можно воспользоваться функцией Dir(путь, тип файла). Функция возвращает имена файлов из папки.
При первом запуске функция выдает имя первого по порядку подходящего файла из указанной папки. Важно указывать на конце папки, иначе функция выдаст ошибку либо пустое значение. После того, как мы получили имя файла, мы можем его открыть и работать с ним. Потом нам нужно открыть следующий файл из папки. Для этого снова вызываем Dir, но без аргументов. А когда файлы закончатся, функция выдаст пустое значение — «».
Работу функции проще понять на примере.
Допустим, в папке «C:Documents and Settings» лежит три Excel-файла, и мы хотим их открыть.
Тогда наш макрос будет выглядеть так:
dr = Dir(«C:Documents and Settings», vbNormal)
Do While dr <> «»
Workbooks.Open(«C:Documents and Settings» & dr)
dr = Dir()
Loop
SQL-server
Подключение VBA к SQL может потребоваться в куче разных мест. Например у меня оно понадобилось совсем внезапно: caption полей в кубе и их key не совпадали. То есть когда я хотела проставить какие-то вещи, я имела их «человеческий» список, а в макрос мне нужно было подставлять «компьютерный». Соответствие одного с другим я и получала в базе.
Итак приступим.
Сначала запомним в переменную строку подключения, которую будем использовать потом. Её легче всего получить, настроив такое же подключение в Excel и потом просто скопировать оттуда готовую. Она будет примерно такая:
cnstr = «Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=True;Data Source=MyServerName;Use Procedure for Prepare=1;Auto Translate=True;Packet Size=4096;Workstation ID=MyCompName;Use Encryption for Data=False;Tag with column collation when possible=False;Initial Catalog=MyDatabaseName»
‘ делаем коннект
Set cn = New ADODB.Connection
‘ указываем, что в этом коннекте у нас будет recordset с именем rs
Set rs = New ADODB.Recordset
‘ открываем коннект с нашей строкой подключения
cn.Open cnstr
Затем получаем данные. Обратите внимание, что так как скрипт это всего лишь строка, вы можете подставлять туда разные переменные и др., полученные до этого в коде.
rs.Open «select * from table», cn
Пробег по строчкам recordset-а описывается достаточно странно, работать с ним неудобно. Гораздо удобнее перезаписать данные в массив VBA. Поэтому бежим по строчкам recordset-а
i = 0
Do While Not rs.EOF
ReDim Preserve arr(i)
arr(i) = rs.Fields(0).Value
rs.MoveNext
i = i + 1
Loop
Если вам не нужно получать данные, а нужно просто выполнить код, то можно воспользоваться командой execute
StrSql = «insert into ReportByIdList(ID,Name) values(1, report)»
cn.Execute StrSql
LotusNotes и другие Lotus-приложения.
LotusNotesявляется почтовым клиентом, однако, позволяет делать еще массу других вещей, например, он также является браузером и календарем. Можно совершать различные действия в Lotus, не выходя из Excel’я или Word’а. Скрипт достаточно труден, а подсказок в интернете не так уж и много, но иногда результат оправдывает все потраченные силы.
Начать сессию можно двумя способами.
Способ 1. Надо поставить галочку в Tools — References на объекты Лотуса, чтоб VBA подгрузил команды и справку Lotus’а. Лучше только одну галку, а то всё будет дублироваться
Dim session As New NotesSession
session.Initialize
Способ 2 (в дальнейшем все команды представлены для способа 2)
Dim NotesSession As Object
Dim NotesDB As Object
Dim NotesDOC As Object
Dim rrr As Object
Dim vview As Object
Set NotesSession = CreateObject(«Notes.Notessession»)
Далее нужно обозначить, в какой базе данных Лотуса мы будем работать. Можно работать в текущей базе, т.е. в последней открытой
Setdb = NotesSession.CurrentDatabase
Или обозначить базу, используя имя сервера и путь к файлу, который хранит базу
Set db = NotesSession.GetDatabase(«Server22 «, «organization.nsf»)
Такая база может быть не открыта, тогда её надо открыть (уточнить, open или openmail)
If db.IsOpen = False Then db.OPENMAIL
В базах есть разные представления данных (например, входящие письма, исходящие письма и др). Нужно выбрать, из какого представления нам нужны документы. К представлению можно обратиться по имени
Set vview = db.GetView(«($Sent)»)
А можно перебрать все имеющиеся в базе представления (здесь именно View, а не абы что, иначе не работает)
For Each View In db.Views
MsgBox (View.Name)
Next
Далее из выбранных вьюх можно вытащить помещенные в них документы
Set rrr = vview.GetFirstDocument
или соответственно
Set rrr = View.GetFirstDocument
Чтобы перейти к следующему документу, пишем
Set rrr = vview.GetFirstDocument(rrr)
или
Set rrr = View.GetFirstDocument(rrr)
У документа есть поля. Их имена можно посмотреть, щелкнув п.к.м по документу (письму, записи о сотруднике, служебке и т.д.), открыв «свойства документа» и выбрав вторую иконку (треугольничек)
Значение тех или иных полей можно получить, например, так
MsgBox (rrr.GetItemValue(«Name»)(0))
MsgBox (rrr.GetItemValue(«Branch»)(0))
MsgBox (rrr.GetItemValue(«Sendto»)(0))
Поля — это массивы. Отсюда и (0) в конце — это просто обращение к конкретному элементу массива. Каков размер этих массивов можно узнать функцией ubound. Поэтому тот же результат можно получить через присваивание массиву:
Dim doc() As String
doc = rrr.GetItemValue(«$Name»)
MsgBox (doc(0))
Можно создавать новые документы (по крайней мере письма можно, остальное, возможно, зависит от наличия админских прав). Пример создания письма:
Set NotesDOC = NotesDB.CreateDocument
Call NotesDOC.ReplaceItemValue(«From», «адрес отправителя»)
With NotesDOC
.Form = «Memo»
.sendto = «тут адрес получателя»
.Principal = «тут адрес отправителя»
.subject = «Тема письма»
.body = «Текст письма»
.SAVEMESSAGEONSEND = True
.PostedDate = Now()
.Send 0
EndWith
Можно делать вложения файлов в письмо. Для этого после создания письма нужно определить файлы, которые будут вложены. Получим:
Set NotesDOC = NotesDB.CreateDocument
‘ первое вложение
Set NotesAttachment = NotesDOC.CreateRichTextItem(«stFileName»)
Set NotesEmbedObject = NotesAttachment.EmbedObject(1454, «», stFileName, stFileName2) ‘1454 — параметр lotus (attachment)
‘ второе вложение
Set NotesAttachment2 = NotesDOC.CreateRichTextItem(«stFileName2»)
Set NotesEmbedObject2 = NotesAttachment.EmbedObject(1454, «», stFileName2)
и т.д.
После этого идут все те же строки отправки:
Call NotesDOC.ReplaceItemValue(«From», «адрес отправителя»)
With NotesDOC
.Form = «Memo»
.sendto = «тут адрес получателя»
.Principal = «тут адрес отправителя»
.subject = «Тема письма»
.body = «Текст письма»
.SAVEMESSAGEONSEND = True
.PostedDate = Now()
.Send 0
EndWith
Отправлять письмо сразу нескольким получателям можно, записав адреса получателей в массив и указав этот массив в строке sendto. Например:
resipients = Split(«test1, test2, test3»)
.SendTo = resipients
или
resipients[0] = «test1»
resipients[1] = «test2»
resipients[2] = «test3»
.SendTo = resipients
Свойства баз Lotus
Сервер и путь к файлу базы данных можно посмотреть где-то в свойствах, а можно сначала войти в неё через
Setdb = NotesSession.CurrentDatabase,
а потом вытащить её свойства:
MsgBox (db.Server)
MsgBox (db.FilePath)
Есть еще другие свойства, и если поставлена галочка в Tools — References на объекты Лотуса, то их можно смотреть в ObjectBrowser.
Кроме того, в параметрах Excel(Файл -> Параметры) есть некоторые настройки, связанные с Lotus, которые могут быть полезны.
Содержание
- MS EXCEL. Использование электронного табличного процессора excel: построение графиков. Взаимодействие excel с другими приложениями windows
- Лабораторная работа №20 Совместная работа приложений Excel и Word
- Совместная работа приложений Mіcrosoft Excel и Word
- 20.1 Теоретические сведения
- 20.2 Цель работы
- 20.3 Постановка задачи
- 20.4 Пошаговое выполнение работы
- 20.4.1 Включите ПК
- 20.4.2 Запустите Microsoft Word и Excel
- 20.4.3 Вставьте созданную электронную таблицу Excel в документ Word различными способами
- 20.4.4 Удалите данные в ячейке G5 во всех таблицах, вставленных в документ Word, и обновите данные
- 20.4.5 Завершение работы
- Copyright
MS EXCEL. Использование электронного табличного процессора excel: построение графиков. Взаимодействие excel с другими приложениями windows
Microsoft Excel (также иногда называется Microsoft Office Excel) — программа для работы с электронными таблицами, созданная корпорацией Microsoft для Microsoft Windows, Windows NT и Mac OS. Она предоставляет возможности экономико-статистических расчетов, графические инструменты и, за исключением Excel 2008 под Mac OS X, язык макропрограммирования VBA Microsoft Excel входит в состав Microsoft Office и на сегодняшний день Excel является одним из наиболее популярных приложений в мире. Ценной возможностью Excel является возможность писать код на основе Visual Basic для приложений (VBA). Этот код пишется с использованием отдельного от таблиц редактора. Управление электронной таблицей осуществляется посредством объектно-ориентированной модели кода и данных. С помощью этого кода данные входных таблиц будут мгновенно обрабатываться и отображаться в таблицах и диаграммах (графиках). Таблица становится интерфейсом кода, позволяя легко работать изменять его и управлять расчётами. В Excel имеются средства для создания графиков и диаграмм, с помощью которых вы сможете в наглядной форме представить зависимости и тенденции, отраженные в числовых данных. Кнопки построения графиков и диаграмм находятся в группе Диаграммы на вкладке Вставка .Выбирая тип графического представления данных (график, гистограмму, диаграмму того или иного вида), руководствуйтесь тем, какую именно информацию нужно отобразить. Если требуется выявить изменение какого-либо параметра с течением времени или зависимость между двумя величинами, следует построить график. Для отображения долей или процентного содержания принято использовать круговую диаграмму. Сравнительный анализ данных удобно представлять в виде гистограммы или линейчатой диаграммы. Для того чтобы построить график сначала нужно сформировать таблицу.Далее просто выделяем нужные нам ячейки и выбираем тип графика который надо построить. В результате мы получи график с которым сможем производить дальнейшие действия
Связь Excel с другими приложениями:Приложения пакета Microsoft Office поддерживают несколько способов обмена данными. Понятие обмен данными у пользователей, знакомых с Windows, как правило, ассоциируется с аббревиатурой OLE. Можно сказать, что использование технологии OLE (Object Linking and Embedding — связывание и внедрение объектов) является одним из наиболее ярких примеров реализации концепции обмена данными между приложениями Microsoft Office. Однако не следует забывать и о буфере обмена, с помощью которого также можно производить обмен данными. Этот способ является самым простым и наиболее распространенным, так как многие пользователи имеют представление только о нем.
Буфер обмена.В Windows обмен данными между приложениями осуществляется в зарезервированной области памяти, называемой буфером обмена. Для занесения данных в буфер обмена применяется команда Edit > Сору (Правка > Копировать) или Edit > Cut (Правка > Вырезать), а для их вставки в нужное место документа — команда Edit ¦ Paste (Правка > Вставить). Пользователи Windows привыкли к тому, что операция копирования или вырезания, выполняемая в любом Windows-приложении, приводит к замене содержимого буфера обмена. Во многих случаях это сопровождается определенными неудобствами. В пакете Microsoft Office существует собственный буфер обмена, в который можно скопировать до 24 блоков информации (объектов). При этом блок, занесенный в буфер первым, не исчезает в результате помещения туда второго информационного блока. В данном случае речь идет не о буфере обмена системы Windows, а о так называемом офисном буфере обмена.
Доступ к офисному буферу обмена обеспечивается из всех приложений Microsoft Office, то есть, работая с этими приложениями, можно помещать объекты в буфер и копировать их оттуда. Объекты размещаются в буфере в той последовательности, в которой они туда заносятся. Копировать же их из буфера можно в любом порядке. Даже если объект помещается в буфер обмена Windows из приложения, которое не входит в пакет Microsoft он все равно автоматически становит-
ся доступным в офисном буфере обмена.
Если в буфере обмена уже содержатся 24 объекта, но пользователь вырезает или копирует еще один, данный объект помещается в буфер, а первый из числа там
находящихся (скопированный раньше других) удаляется из буфера обмена, чтобы освободить место.
Работа с фрагментами:В Excel существует возможность сохранять или передавать данные в виде фрагментов документа. Фрагмент представляет собой отдельный файл, который можно сохранить на жестком диске.
Для того чтобы создать фрагмент, сначала необходимо выделить часть таблицы, которая должва стать его содержимым, щелкнуть на ней правой кнопкой мыши и в появившемся меню выбрать команду Сору (Копировать). Затем с помощью проводника Windows нужно найти папку, где этот фрагмент таблицы будет сохранен в виде файла, щелкнуть на ней правой кнопкой мыши и в появившемся контекстном меню выбрать команду Paste (Вставить). При необходимости вставить данный фрагмент в любое другое приложение Windows операции копирования и вставки следует повторить. Преимущество использования фрагментов по сравнению с применением буфера обмена состоит в том, что при выключении компьютера содержимое буфера обмена теряется, а фрагменты остаются на жестком диске до тех пор, пока не будут удалены пользователем.
Связывание и внедрение данных:При использовании технологии OLE данные Excel вставляются в другие файлы, в том числе и в Word-документы, как объекты; связь с приложением-сервером при этом сохраняется. Чтобы запустить приложение-сервер и получить возможность обработать с его помощью объект, достаточно выполнить двойной щелчок на данном объекте. После завершения работы с приложением-сервером объект в приложении-клиенте обновляется. Конечно же, для этого необходимо, чтобы приложение-клиент поддерживало технологию OLE.Приложения, поддерживающие технологию OLE, подразделяются, как вы теперь понимаете, на приложения-серверы и приложения-клиенты. Приложения-серверы предоставляют определенный объект в распоряжение приложения-клиента. Например, созданные в программе Paint рисунки могут быть вставлены в документ Excel , однако поместить Excel-таблицу в документ, созданный с помощью приложения Paint, невозможно. Таким образом, Excel может выступать и в качестве приложения-сервера, и и качестве приложения-клиента, a Paint — только в качестве приложения-клиента. OLE-объектами могут выступать графические изображения, текст, таблицы, аудио- и видеофайлы.
Связывание Excel с данными другого приложения:Способ обмена данными между Excel и некоторыми другими приложениями с помощью буфера обмена имеет один существенный недостаток: процесс происходит статически. Другими словами, после того как данные из Excel вставляются в приложение-клиент, пользователь лишается возможности применять при их обработке функциональные возможности Excel. Конечно же, данные можно модифицировать с помощью приложения-сервера, а затем опять скопировать их в приложение-клиент, однако такой метод работы: вряд ли можно отнести к числу эффективным
MS. Excel. Какие существуют ошибки в формулах Excel? Что они означают?
Программа Excel входит в пакет Microsoft Office и предназначена для подготовки и обработки электронных таблиц под управлением Windows..
Документом Excel является файл с произвольным именем и расширением .XLS. В терминах Excel такой файл называется рабочей книгой (Workbook). В каждом файле XLS может размещаться от 1 до 255 электронных таблиц, каждая из которых называется рабочим листом (Sheet).
В представлении пользователя электронная таблица Excel состоит из 65536 строк (row) и 256 столбцов (column), размещенных в памяти компьютера. Строки пронумерованы целыми числами от 1 до 65536, а столбцы обозначены буквами латинского алфавита А, В, . Z, АА, АВ, . IV. На пересечении столбца и строки располагается основной структурный элемент таблицы — ячейка (cell). В любую ячейку можно ввести исходные данные — число или текст, а также формулу для расчета производной информации. Ширину столбца и высоту строки можно изменять.
Для указания на конкретную ячейку таблицы мы используем адрес, который составляется из обозначения столбца и номера строки, на пересечении которых эта ячейка находится (например, A1, F8, С24, АА2 и т.д.). В некоторых табличных процессорах ячейка называется клеткой, а адрес — координатами клетки.
Примечание. Буквенные обозначения столбца расположены по алфавиту, обозначение, как и номер, может увеличиваться и уменьшаться. Поэтому далее для простоты мы называем обозначение столбца номером.
Бели при вводе формул или данных допущена ошибка, то в результирующей ячейке появляется сообщение об ошибке. Первым символом всех значений ошибок является символ #. Значения ошибок зависят от вида допущенной ошибки.
Excel может распознать далеко не все ошибки, но те, которые обнаружены, надо уметь исправить.
Ошибка # # # # появляется, когда вводимое число не умещается в ячейке. В этом случае следует увеличить ширину столбца.
Ошибка #ДЕЛ/0! появляется, когда в формуле делается попытка деления на нуль. Чаще всего это случается, когда в качестве делителя используется ссылка на ячейку, содержащую нулевое или пустое значение.
Ошибка #Н/Д! является сокращением термина «неопределенные данные». Эта ошибка указывает на использование в формуле ссылки на пустую ячейку.
Ошибка #ИМЯ? появляется, когда имя, используемое в формуле, было удалено или не было ранее определено. Для исправления определите или исправьте имя области данных, имя функции и др.
Ошибка #ПУСТО! появляется, когда задано пересечение двух областей, которые в действительности не имеют общих ячеек. Чаще всего ошибка указывает, что допущена ошибка при вводе ссылок на диапазоны ячеек.
Ошибка #ЧИСЛО! появляется, когда в функции с числовым аргументом используется неверный формат или значение аргумента.
Ошибка #ССЫЛКА! появляется, когда в формуле используется недопустимая ссылка на ячейку. Например, если ячейки были удалены или в эти ячейки было помещено содержимое других ячеек.
Ошибка #ЗНАЧ! появляется, когда в формуле исп-ся недопустимый тип аргумента или операнда. Например, вместо числового или логического значения для оператора или функции введен текст.
Кроме перечисленных ошибок, при вводе формул может появиться циклическая ссылка.
Циклическая ссылка возникает тогда, когда формула прямо или косвенно включает ссылки на свою собственную ячейку. Циклическая ссылка может вызывать искажения в вычислениях на рабочем листе и поэтому рассматривается как ошибка в большинстве приложений. При вводе циклической ссылки появляется предупредительное сообщение
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Студалл.Орг (0.025 сек.)
Лабораторная работа №20 Совместная работа приложений Excel и Word
Совместная работа приложений Mіcrosoft Excel и Word
20.1 Теоретические сведения
Существует множество различных способов совместного использования данных программами Microsoft Office. Например, Word предоставляет несколько способов вставки данных Microsoft Excel в документ Word. Можно скопировать и вставить электронную таблицу Excel в документ Word. Кроме того, в документ Word можно также вставить электронную таблицу в виде связанного объекта или внедренного объекта.
Основные различия между связыванием и внедрением (встраиванием) объектов заключаются в месте хранения данных и способе обновления данных после помещения их в документ.
Связанный объект – это объект (например, электронная таблица), созданный в одном файле и вставленные в другой файл с поддержкой связи между файлами. Связанный объект может обновляться одновременно с обновлением исходного файла. Связанный объект не является частью файла, в который он вставлен.
Внедренный объект – это объект (например, электронная таблица), вставленный в файл. Будучи внедренным, объект становится частью файла. При двойном щелчке внедренный объект открывается с помощью программы, в которой был создан. Все вносимые во внедренный объект изменения отображаются в содержащем его файле.
Связывание и внедрение можно осуществлять как при помощи буфера обмена, так и при помощи диалогового окна «Вставка объекта», которое вызывается командой Объект в меню Вставка.
Для выполнения этой лабораторной работы необходимо ознакомиться со способами совместного использования данных программами Microsoft Office. Внедрение при помощи диалогового окна «Вставка объекта» изложено в лекционном курсе и в рекомендованных источниках информации.
20.2 Цель работы
Приобретение практических навыков работы с программами Microsoft Excel и Word в процессе создания документов, копирования, связывания и внедрения объекта (электронной таблицы) Microsoft Excel в документ Word.
20.3 Постановка задачи
Для выполнения лабораторной работы выполните следующее:
- создайте документ Word в соответствии с прилагаемым образцом, представленном на Рис 20.1;
- создайте чистую книгу, заполните рабочий лист в соответствии с прилагаемым образцом, представленном на Рис 20.2, и выполните необходимые вычисления;
- вставьте созданную электронную таблицу Excel в документ Word следующими способами:
- в виде таблицы Word;
- в виде внедренного объекта;
- в виде связанного объекта.
После вставки таблицы Excel в документ Word удалите данные в ячейке G5 во всех таблицах и обновите данные.
20.4 Пошаговое выполнение работы
20.4.1 Включите ПК
Нажмите кнопку Power на системном блоке ПК.
20.4.2 Запустите Microsoft Word и Excel
20.4.2.1 Запустите Microsoft Word, используя команду Главного меню.
После запуска Microsoft Word откроется окно приложения «Документ 1 — Microsoft Word«, в котором отображается пустой текстовый документ, основанный на шаблоне Обычный. Создайте документ в соответствии с прилагаемым образцом, представленном на Рис 20.1, и сохраните его.
20.4.2.2 Не закрывая Word, запустите Microsoft Excel.
После запуска Microsoft Excel откроется окно приложения, в котором отображается пустая рабочая книга «Книга 1» с тремя рабочими листами. Создайте новую книгу и заполните рабочий лист в соответствии с прилагаемым образцом, представленном на Рис 20.2. Выполните все расчеты (заполните строки и столбец «Всего» и строку «Итого») в электронной таблице и сохраните файл (рабочую книгу).
20.4.3 Вставьте созданную электронную таблицу Excel в документ Word различными способами
20.4.3.1 Вставьте созданную электронную таблицу Excel в документ Word в виде таблицы Word.
Для этого выполните следующие действия:
- выделите диапазон ячеек таблицы;
- нажмите кнопку Копировать на панели инструментов;
- перейдите в документ Word, выберите место вставки таблицы и нажмите кнопку Вставить на панели инструментов.
20.4.3.2 Вставьте созданную электронную таблицу Excel в документ Word в виде внедренного объекта.
Для этого выполните следующие действия:
- выделите диапазон ячеек таблицы;
- нажмите кнопку Копировать на панели инструментов;
- перейдите в документ Word, выберите место вставки внедренного объекта;
- выберите команду Специальная вставка в меню Правка;
- установите переключатель в положение Вставить;
- В списке «Как:» выберите Лист Microsoft Office Excel (объект) и щелкните на кнопке ОК.
20.4.3.3 Вставьте созданную электронную таблицу Excel в документ Word в виде связанного объекта.
Для этого выполните следующие действия:
- выделите диапазон ячеек таблицы;
- нажмите кнопку Копировать на панели инструментов;
- перейдите в документ Word, выберите место вставки связанного объекта;
- выберите команду Специальная вставка в меню Правка;
- установите переключатель в положение Связать;
- В списке «Как:» выберите Лист Microsoft Office Excel (объект) и щелкните на кнопке ОК.
20.4.4 Удалите данные в ячейке G5 во всех таблицах, вставленных в документ Word, и обновите данные
20.4.4.1 Удалите данные в ячейке G5 (число 128) таблицы Word, созданной способом копирования, и обновите данные во всей таблице.
- удалите число 128 в ячейке G5;
- пересчитайте данные во всей таблице.
20.4.4.2 Удалите данные в ячейке G5 (число 128) таблицы Word, созданной способом внедрения объекта, и обновите данные во всей таблице.
- выполните двойной щелчок на внедренном объекте (таблице), чтобы он открылся с помощью программы Excel, в которой был создан;
- удалите число 128 в ячейке G5;
- данные во всей таблице будут автоматически пересчитаны;
- щелкните вне поля внедренного объекта, чтобы вернуться в Word.
20.4.4.3 Удалите данные в ячейке G5 (число 128) таблицы Word, созданной способом связывания объекта, и обновите данные во всей таблице.
- выполните двойной щелчок на связанном объекте (таблице), откроется окно приложения Excel с открытой рабочей книгой;
- удалите число 128 в ячейке G5;
- данные во всей таблице будут автоматически пересчитаны;
- закройте приложение Excel, чтобы вернуться в Word.
20.4.5 Завершение работы
Сообщите преподавателю о выполненной работе. После разрешения на завершение работы закройте прикладные программы Microsoft Word и Excel , после чего можете приступить к сдаче тестов по выполненной работе.
Copyright
© Обучение в интернет, .
Обратная связь
Связь с другими программами
При
работе с планом проекта может оказаться,
что средств программы Microsoft
Project
вам недостаточно. Например, вам потребуется
произвести вычисления с данными проекта
и построить различные графики. С другой
стороны, может возникнуть
ситуация, когда у заказчика или участника
проекта отсутствует Microsoft
Project.
В
этой главе вы узнаете о связи Microsoft
Project
с другими программами. Обмениваясь
данными с программой Microsoft
Excel
[Майкрософт Эксел], вы можете выполнить
сложные расчеты с данными проекта,
создать разнообразные диаграммы, а
также включить электронную таблицу в
план проекта.
Если
ваш план проекта получился достаточно
большим, может оказаться удобней
работать с данными проекта, используя
базу данных программы Microsoft
Access
[Майкрософт Эксес]. Эту программу также
удобно использовать для пополнения
существующей базы данных информацией
из проекта и, наоборот, для включения
базы данных в план.
Импортировав
план проекта в программу Microsoft
Outlook
[Майкрософт Аутлук], можно
создать механизм напоминания сотрудникам
о необходимости выполнения
определенной работы в заданное время.
Если вы создали в Microsoft
Outlook
список
людей, его можно включить в проект как
дополнительные ресурсы.
Если
экспортировать план проекта в Web-формат
и разместить его на сайте, то с
планом сразу могут познакомиться другие
участники и заказчик, что существенно
повысит эффективность совместной работы
над проектом.
Если
вы экспортируете диаграмму из плана
проекта в изображение, то потом в
графическом редакторе будет возможность
внести изменения или просмотреть
рисунок.
Интеграция с программой Microsoft Excel
При
создании проекта может оказаться, что
у некоторых участников проекта установлена
только программа Microsoft
Excel.
В этом случае следует воспользоваться
возможностью интеграции программ
Microsoft
Project
и Microsoft
Excel.
Кроме того, Microsoft
Excel
полезно использовать для выполнения
сложных расчетов
с данными проекта, создания разнообразных
диаграмм. В этом разделе вы рассмотрите
интеграцию с программой Microsoft
Office
Excel
2003, т.е. узнаем, как
копировать электронную таблицу в план
проекта, перемещать диаграмму Ганта
в документ Microsoft
Excel,
импортировать и экспортировать план
проекта.
Сначала
скопируем ячейки электронной таблицы
в план проекта.
-
Нажмите
кнопку Пуск
(Start)
на Панели
задач (Taskbar)
операционной системы
Windows.
На экране появится основное меню. -
Выберите
команду Все
программы ♦ Microsoft
Office
♦ Microsoft
Office
Excel
2003 (All
Programs
♦ Microsoft
Office
♦ Microsoft
Office
Excel
2003) из основного
меню. На экране появится рабочее окно
программы Microsoft
Excel
(Рис.
7.1).
Рис.
7.1. Рабочее окно программы Microsoft
Excel
-
Нажмите
комбинацию клавиш Alt+F1.
чтобы закрыть Область
задач (Task
Рапе)
в правой части рабочего окна программы
Microsoft
Excel
(Рис. 7.2). -
В
ячейку А1 введите слово Microsoft.
Рис.
7.2. Область задач (Task
Pane)
скрыта
-
В
ячейку А2 введите слово Project
(Рис. 7.3).
Рис.
7.3. Заполненные ячейки
-
Установите
указатель мыши на ячейку А1. -
Нажмите
и удерживайте левую кнопку мыши. -
Не
отпуская левую кнопку мыши, переместите
мышь к ячейке А2. -
Отпустите
левую кнопку мыши. Диапазон ячеек А1
:А2 будет выделен. -
Нажмите
кнопку копировать
на панели инструментов Стандартная
(Standard).
Выделенный
диапазон ячеек будет скопирован в буфер
обмена. -
Щелкните
мышью на кнопке с программой Microsoft
Project
на Панели
задач (Taskbar)
для перехода к данной программе. -
Нажмите
кнопку создания нового документа на
панели инструментов Стандартная
(Standard),
чтобы открыть
новый документ. -
Щелкните
мышью на первой ячейке столбца Название
задачи (Task
Name). -
Нажмите
кнопку вставить
на панели инструментов Стандартная
(Standard).
В окне программы
Microsoft
Project
появится список задач (Рис. 7.4).
Рис.
7.4. Вставленные данные из электронной
таблицы
Иными
словами, программа Microsoft
Project
интерпретировала вставленные из
электронной
таблицы данные как список задач.
-
Выберите
команду меню Файл
♦ Закрыть (File
♦ Close).
На экране появится диалог
с вопросом о сохранении документа (Рис.
7.5).
Рис.
7.5. Диалог с вопросом о сохранении
документа
-
Нажмите
кнопку Нет
(No),
чтобы закрыть диалог и не сохранять
документ.
Теперь
скопируем диаграмму Ганта в программу
Microsoft
Excel.
-
Выберите
команду меню Вид
♦ Диаграмма Ганта (View
♦ Gantt
Chart)
для перехода
к диаграмме Ганта в нашем плане проекта. -
Перетащите
мышью полоску, разделяющую список задач
и диаграмму Ганта, в крайнее левое
положение, чтобы весь экран занимала
диаграмма (Рис. 7.6).
Рис.
7.6. Диаграмма Ганта
-
Выберите
команду меню Правка
♦ Копировать рисунок (Edit
♦
Сору
Picture).
На экране появится диалог Копирование
рисунка (Copy
Picture)
(Рис.
7.7).
Рис.
7.7. Диалог Копирование
рисунка (Copy
Picture)
-
Если
в группе элементов управления
Преобразовать
изображение (Render
image)
не установлен переключатель для
отображения на экране (For
screen),
то установите его, чтобы скопировать
рисунок в буфер обмена. -
Убедитесь,
что в группе Копировать
(Сору)
установлен переключатель отображаемые
строки (Rows
on
screen)
для копирования всего содержимого
рабочего
окна программы. -
Если
в группе Шкала
времени (Timescale)
не установлен переключатель как
на
экране (As
shown
on
screen),
то установите его, чтобы при копировании
сохранить
шкалу времени неизменной. -
Нажмите
кнопку ОК, чтобы закрыть диалог
Копирование
рисунка (Сору
Picture).
Диаграмма Ганта будет скопирована в
буфер обмена. -
С
помощью мыши верните полоску, разделяющую
список задач и диаграмму Ганта,
в прежнее центральное положение. -
Щелкните
мышью на кнопке с программой Microsoft
Excel
на Панели
задач (Taskbar)
для перехода к данной программе. -
Щелкните
мышью на ячейке A3. -
Выберите
команду меню Правка
♦ Вставить (Edit
♦ Insert).
В электронную таблицу
будет вставлена диаграмма Ганта (Рис.
7.8).
Рис.
7.8.
Диаграмма
Ганта в Excel
Сейчас
импортируем план проекта из Microsoft
Excel
в Microsoft
Project.
-
Нажмите
кнопку создания нового документа на
панели инструментов Стандартная
(Standard),
чтобы открыть новый документ в Microsoft
Excel. -
Если
в рабочем окне программы Microsoft
Excel
отсутствует панель Область
задач
(Task
Pane),
то выберите команду меню Вид
♦ Панели инструментов ♦ Область
задач (View
♦ Toolbars
♦ Task
Pane).
В правой части рабочего окна программы
Microsoft
Excel
появится панель Область
задач (Task
Pane)
(Рис. 7.1). -
Из
открывающегося списка в верхней части
Области
задач (Task
Pane)
выберите
Создание
книги (New
Workbook).
Вид панели Область
задач (Task
Pane)
изменится (Рис. 7.9).
Рис.
7.9. Панель Создание
книги (New
Workbook)
-
В
разделе Шаблоны
(Templates)
на панели Создание
книги (New
Workbook)
щелкните
мышью на ссылке На
моем компьютере (On
my
computer),
чтобы открыть
диалог Шаблоны
(Templates). -
Выберите
вкладку Решения
(Spreadsheet
Solutions) (Рис.
7.10).
Р
7.10. Вкладка
Решения
(Spreadsheet
Solutions) диалога
Шаблоны
(Templates)
-
Щелкните
мышью на значке с надписью Шаблон
импорта
списка
задач
Microsoft
Project (Microsoft
Project Task List Import Template). -
Нажмите
кнопку OK,
чтобы закрыть диалог Шаблоны
(Templates). -
В
окне программы Microsoft
Excel
выберите лист Таблица_задач
(TaskJTable)
(Рис. 7.11).
Р
7.11. Шаблон для списка задач
Обратите
внимание, что названия столбцов шаблона
практически совпадают с названиями
полей списка задач Microsoft
Project.
-
В
ячейку А2 введите номер задачи 1.
-
В
ячейку В2 введите название работы
Обустройство
двора. -
В
ячейку С2 введите длительность задачи
5
дней (5
days). -
Выберите
команду меню Файл
♦ Сохранить как (File
♦ Save
As).
На экране появится
диалог Сохранение
документа (Save
As)
(Рис. 7.12).
Рис.
7.12. Диалог Сохранение
документа
(Save
As)
-
В
открывающемся списке Папка
(Save
in)
выберите диск для документа. -
В
списке файлов и каталогов выберите
папку, в которой будет сохранен документ. -
Убедитесь,
что в открывающемся списке Тип
файла (Save
as
type)
выбрана строка
Книга
Microsoft
Office
Excel
(Microsoft
Office
Excel
Workbook)
для сохранения
документа в виде электронной таблицы. -
В
поле ввода Имя
файла (File
name)
введите имя создаваемого файла
Импорт-таблица.
Расширение
.xls
будет
присвоено имени файла автоматически. -
Нажмите
кнопку Сохранить
(Save),
чтобы закрыть диалог Сохранение
документа
(Save
As).
Документ будет сохранен на диске. -
Щелкните
мышью на кнопке с программой Microsoft
Project
на Панели
задач (Taskbar)
для перехода к данной программе. -
Нажмите
кнопку Открыть на панели инструментов
Стандартная
(Standard).
На экране
появится диалог Открытие
документа (Open)
(Рис. 7.13).
Рис.
7.13. Диалог Открытие
документа (Open)
-
В
открывающемся списке Папка
(Look
in)
выберите диск, на котором хранится
документ Импорт-таблица. -
В
списке файлов и каталогов выберите
папку с документом. -
В
открывающемся списке Тип
файла (File
of
type)
выберите строку Книги
Microsoft
Excel
(Microsoft
Excel
Workbooks)
для загрузки электронной таблицы. -
Щелкните
мышью на имени файла Импорт-таблица
в
списке каталогов. -
Нажмите
кнопку Открыть
(Open).
Диалог Открытие
документа (Open)
будет закрыт,
а на экране появится первый диалог
мастера импорта (Рис. 7.14).
Рис.
7.14. Первый диалог мастера импорта
-
Нажмите
кнопку Далее
(Next).
На экране появится второй диалог мастера
импорта
(Рис. 7.15). В английской версии программы
этому диалогу предшествует диалог
выбора формата данных.
Рис.
7.15. Второй диалог мастера импорта
-
Установите
переключатель Создать
новую схему (New
map)
для создания новой
схемы импорта. -
Нажмите
кнопку Далее
(Next).
На экране появится третий диалог мастера
импорта
(Рис. 7.16).
Рис.
7.16. Третий диалог мастера импорта
-
Если
не установлен переключатель Создать
новый проект (As
a
new
project),
то установите его, чтобы при импорте
документа был создан новый проект. -
Нажмите
кнопку Далее
(Next).
На экране появится четвертый диалог
мастера импорта (Рис. 7.17).
Рис.
7.17. Четвертый диалог мастера импорта
-
В
группе элементов управления Выберите
тип данных для импорта (Select
the
types
of
data
you
want
to
import)
установите флажок Задачи
(Tasks)
для импорта
задач. -
Нажмите
кнопку Далее
(Next).
На экране появится пятый диалог мастера
импорта (Рис. 7.18).
Рис.
7.18. Пятый диалог мастера импорта
В
столбцах Из:
поле Excel
(From:
Excel
Fields)
и В:
поле Microsoft
Project
(To:
Microsoft
Office
Project
Field)
центральной таблицы диалога отображаются
названия
полей программ Microsoft
Excel
и Microsoft
Project,
которые будут соответствовать
друг другу при импорте. Эти поля можно
изменить, но предлагаемый
по умолчанию вариант является приемлемым.
-
Нажмите
кнопку Далее
(Next).
На экране появится последний диалог
мастера импорта (Рис. 7.19).
Рис.
7.19. Последний диалог мастера импорта
-
Нажмите
кнопку Готово
(Finish),
чтобы завершить работу мастера импорта.
В
окне программы Microsoft
Project
появится импортированный план проекта
(Рис. 7.20).
Рис.
7.20. Импортированный план проекта
-
Выберите
команду меню Файл
♦ Закрыть (File
♦ Close).
На экране появится диалог с предложением
сохранить документ (Рис. 7.21).
Рис.
7.21. Диалог с предложением сохранить
документ
-
Нажмите
кнопку Нет
(No),
чтобы отказаться от сохранения
импортированного документа на диске.
Диалог закроется, а в окне программы
снова появится план
проекта строительства дома.
Давайте
экспортируем план проекта из программы
Microsoft
Project
в Microsoft
Excel.
-
В
Microsoft
Project
выберите команду меню Файл
♦ Сохранить как (File
♦Save
As).
На экране появится диалог Сохранение
документа (Save
As)
(Рис.
7.22).
Рис.
7.22.
Диалог
Сохранение
документа (Save
As)
-
В
открывающемся списке Папка
(Save
in)
выберите диск для документа. -
В
списке файлов и каталогов выберите
папку, в которой будет сохранен документ. -
В
открывающемся списке Тип
файла (Save
as
type)
выберите строку Книга
Microsoft
Excel
(Microsoft
Excel
Workbook)
для экспорта документа в электронную
таблицу. -
В
поле ввода Имя
файла (File
name)
введите имя создаваемого файла
Экспорт-
таблица.
Расширение
.xls
будет
присвоено имени файла автоматически. -
Нажмите
кнопку Сохранить
(Save),
чтобы закрыть диалог Сохранение
документа
(Save
As).
На экране появится первый диалог мастера
экспорта (Рис. 7.23).
Рис.
7.23.Первый диалог мастера экспорта
-
Нажмите
кнопку Далее
(Next).
На экране появится второй диалог мастера
экспорта
(Рис. 7.24).
Рис.
7.24. Второй диалог мастера экспорта
-
Установите
переключатель Шаблон
проекта (Excel)
(Project
Excel
Template),
чтобы
использовать шаблон проекта программы
Microsoft
Excel
при экспорте. -
Нажмите
кнопку Готово
(Finish)
для завершения работы мастера экспорта. -
Щелкните
мышью на кнопке с программой Microsoft
Excel
на Панели
задач (Taskbar)
для перехода к данной программе. -
Нажмите
кнопку Открыть
на панели инструментов Стандартная
(Standard).
На
экране появится диалог Открытие
документа (Open)
(Рис. 7.25).
Рис.
7.25. Диалог Открытие
документа (Open)
-
В
открывающемся списке Папка
(Look
in)
выберите диск, на котором хранится
документ Экпорт-таблица. -
В
списке файлов и каталогов выберите
папку с документом. -
Щелкните
мышью на имени файла Экпорт-таблица
в
списке файлов и каталогов. -
Нажмите
кнопку Открыть
(Open).
Диалог Открытие
документа (Open)
будет закрыт,
а в окне программы Microsoft
Excel
на листе Таблица_задач
(Task_Table)
появится экспортированный из Microsoft
Project
список задач плана
проекта (Рис. 7.26).
Обратите
внимание, что формат представления
экспортированного плана проекта похож
на исходный вариант плана в Microsoft
Project.
Рис.
7.26. Экспортированный в Microsoft
Excel
список задач
-
Щелкните
мышью на ярлыке листа Таблица_ресурсов
(Resource_Table).
В
окне программы появится экспортированный
из Microsoft
Project
список ресурсов
плана проекта (Рис. 7.27).
Рис.
7.27. Экспортированный в Microsoft
Excel
список ресурсов
-
В
Microsoft
Excel
выберите команду меню Файл
♦ Выход (File
♦ Exit).
На экране
появится диалог с предложением сохранить
документ (Рис. 7.28).
Рис.
7.28. Диалог с предложением сохранить
документ
-
Нажмите
кнопку Нет
(No),
чтобы отказаться от сохранения
экспортированного
документа на диске. Диалог закроется,
и работа программы Microsoft
Excel
будет завершена.
Следует
отметить, что вы можете экспортировать
в Microsoft
Excel
часть
созданного плана, а также использовать
импортированные из Excel
данные для добавления в существующий
план.
Соседние файлы в папке лабы Project
- #
- #
- #
- #
- #
- #
- #
- #
Excel для Microsoft 365 Word для Microsoft 365 PowerPoint для Microsoft 365 Excel для Интернета Word для Интернета OneNote для Интернета PowerPoint для Интернета Еще…Меньше
С помощью Microsoft 365 легко работать с другими пользователями, в том числе с пользователями, у которых нет Microsoft Office, так как вы можете отправлять ссылки на документы вместо отправки вложенных файлов, которые они могут просматривать (и редактировать, если это разрешено) в Microsoft 365 для Интернета. Это не только экономит место на диске, но и избавляет вас от необходимости согласовывать несколько версий одного документа.
Сохранение документа в OneDrive
Добавьте свои документы в OneDrive, а затем предоставьте к ним общий доступ.
Чтобы отправить ссылку, нажмите кнопку общий доступ в верхней части окна Microsoft 365 ной программы:

Когда другой человек щелкнет ссылку, которую вы отправили, документ откроется в его браузере.

Для редактирования они будут щелкать команду для редактирования в программе Office в Интернете.

Работа с другими пользователями в Microsoft 365
При редактировании файла в Office может появиться уведомление о том, что другие пользователи также работают с этим файлом. Для совместной работы над документом не существует особого приема. Вы редактируете, как обычно, и если другие пользователи редактируют документ, Office предупреждает вас о присутствии и показывает, где они работают.

Пользователи могут работать в Office 2010, Office для Mac 2011 и более поздних версий.
Примечания:
-
Поскольку Microsoft 365 автоматически сохраняет изменения для всех участников, команды «отменить» и «вернуть» могут не работать должным образом.
-
В Excel, когда один пользователь изменяет порядок сортировки или данные фильтров, представление изменяется для всех пользователей, редактирующих книгу. Поэтому старайтесь не использовать сортировку и фильтрацию, пока другие работают с книгой.
Работа с другими пользователями в OneNote
В записной книжке, доступной для редактирования, можно работать вместе с другими людьми. Эта возможность полезна при сборе данных (например, при записи идей во время мозгового штурма или группового проекта). Такая записная книжка используется в качестве вики-сайта, в который любой пользователь может внести свои изменения. Кроме того, вы можете узнать, какие изменения кто внес, или восстановить предыдущую версию страницы.

Если вы или другие люди разработали OneNote 2010 или более поздней версии, вы можете работать в приложениях OneNote для настольных систем, Интернет-и мобильных устройств, пока другие пользователи работают с одной и той же записной книжкой. Вы можете поделиться записной книжкой в OneDrive, как в Excel, Word и в документах PowerPoint, но вы также можете поделиться записной книжкой в OneNote 2010 или более поздней версии.
Откройте вкладку Файл и на вкладке Сведения щелкните Пригласить пользователей в эту записную книжку под названием записной книжки.
См. также
Что такое автосохранение?
Просмотр предыдущих версий файлов Office
Совместная работа над документом в Word Online
Одновременная работа нескольких пользователей над книгами Excel с помощью функции совместного редактирования
Совместная работа над презентацией
Нужна дополнительная помощь?
Хитрости »
24 Февраль 2012 91487 просмотров
Иногда бывает необходимо перенести что-то из Excel в другое приложение. Я возьму для примера Word. Например скопировать ячейки и вставить. Обычно мы это так и делаем — скопировали в Excel, открыли Word — вставили. Но сделать это при помощи кода чуть сложнее, хотя если разобраться никаких сложностей нет. Ниже приведен пример кода, который открывает Word, открывает в нем определенный документ, копирует данные из Excel и вставляет в открытый документ Word.
Sub OpenWord() Dim objWrdApp As Object, objWrdDoc As Object 'создаем новое приложение Word Set objWrdApp = CreateObject("Word.Application") 'Можно так же сделать приложение Word видимым. По умолчанию открывается в скрытом режиме 'objWrdApp.Visible = True 'открываем документ Word - документ "Doc1.doc" должен существовать Set objWrdDoc = objWrdApp.Documents.Open("C:Doc1.doc") 'Копируем из Excel диапазон "A1:A10" Range("A1:A10").Copy 'вставляем скопированные ячейки в Word - в начала документа objWrdDoc.Range(0).Paste 'закрываем документ Word с сохранением objWrdDoc.Close True ' False - без сохранения 'закрываем приложение Word - обязательно! objWrdApp.Quit 'очищаем переменные Word - обязательно! Set objWrdDoc = Nothing: Set objWrdApp = Nothing End Sub
Скачать пример:

В файле-примере, приложенном к данной статье, в комментариях к коду есть несколько добавлений. Например, как вставить текст из ячеек в определенные закладки Word-а и как добавить новый документ, а не открывать уже имеющийся. Так же так есть код проверки — открыто ли приложение Word в данный момент. Порой это тоже может пригодиться, чтобы работать с запущенным приложением Word, а не создавать новое:
Sub Check_OpenWord() Dim objWrdApp As Object On Error Resume Next 'пытаемся подключится к объекту Word Set objWrdApp = GetObject(, "Word.Application") If objWrdApp Is Nothing Then 'если приложение закрыто - создаем новый экземпляр Set objWrdApp = CreateObject("Word.Application") 'делаем приложение видимым. По умолчанию открывается в скрытом режиме objWrdApp.Visible = True Else 'приложение открыто - выдаем сообщение MsgBox "Приложение Word уже открыто", vbInformation, "Check_OpenWord" End If End Sub
В принципе, активировать или вызвать(если закрыто) другое приложение Офиса можно одной строкой:
Sub Open_AnotherApp() Application.ActivateMicrosoftApp xlMicrosoftWord End Sub
но данный метод может пригодиться только в том случае, если Вам необходимо действительно лишь активировать другое приложение, но дальше обращаться к этому приложению Вы уже не сможете.
По сути, методами CreateObject и GetObject можно обратиться к любому стороннему приложению(например Internet Explorer). Куда важнее при обращении к этим объектам знать объектную модель того приложения, к которому обращаетесь. Чтобы увидеть свойства и методы объектной модели приложения, можно в редакторе VBA подключить необходимую библиотеку, объявить переменную, назначив ей тип приложения. Покажу на примере того же Word-а.
Для начала открываем меню Tools -References:
Подключаем библиотеку:
Затем объявляем переменную и присваиваем ей тип нужного приложения:
Sub OpenWord() Dim objWrdApp As Word.Application Set objWrdApp = New Word.Application objWrdApp.Visible = True End Sub
Если теперь в редакторе, внутри этой процедуры в любом месте ниже объявления переменной набрать objWrdApp и точку, то сразу после ввода точки выпадет меню, в котором будут перечислены все доступные методы и свойства этого приложения.
Так же можно нажать F2 и через поиск найти Word и просмотреть все методы и свойства данного приложения.
Метод установки ссылки на библиотеку приложения через Tools—References называют еще ранним связыванием. Подобный метод позволяет создать ссылку на приложение быстрее и, как описано выше, предоставляет разработчику доступ к визуальному отображению свойств и методов объекта. Но есть существенный минус: если в своем коде Вы установите ссылку на Word 12 Object Libbary(Word 2007), то на ПК с установленным Word 2003 получите ошибку MISSING, т.к. Word 2003 относится к библиотеке Word 11 Object Libbary. Подробнее можно прочитать в статье Ошибка — Cant find project or library.
Метод же CreateObject еще называется методом позднего связывания. Применяя его не возникнет проблем с MISSING, очень часто возникающих при раннем связывании. Поэтому я рекомендовал бы при разработке использовать раннее связывание для удобства использования свойств и методов(если Вы их не знаете), а перед распространением приложения в коде заменить все именованные константы(типа wdLine) на числовые константы(для wdLine это 5) и применить позднее связывание. Посмотреть числовое значение константы можно просто записав её в коде, начать выполнение кода через F8 и навести курсор мыши на эту константу. Всплывающая подсказка покажет числовое значение. Так же можно отобразить окно Immediate(View —Immediate Window или сочетание клавиш Ctrl+G), записать вопросительный знак и вставить эту константу и нажать Enter:
?wdLine
ниже будет выведено числовое представление этой константы.
А заменять эти константы их числовыми значениями в случае с поздним связыванием необходимо, т.к. Excel не знает их значений.
Попробую пояснить поподробнее про эти константы и почему их надо заменять какими-то числами: при подключении библиотеки Wordа(Word 12 Object Libbary) мы так же подключаем и все свойства, методы и константы, которые доступны из Wordа. И их использование напрямую становится доступно из Excel и мы можем смело написать что-то вроде wbLine и Excel поймет эту константу. При позднем же связывании мы уже не подключаем библиотеки Word(во избежание ошибок совместимости) и как следствие — методы, свойства и константы Wordа для Excel становятся чем-то неизвестным и не документированным и мы получим ошибку «Variable not defined»(если включена директива Option Explicit) при попытке назначить свойство через wdLine. Если же Option Explicit не включена — то хоть ошибки не будет, но и код будет работать неверно, т.к. для неизвестной для Excel переменной wbLine будет назначено значение 0(Empty). Поэтому и надо все константы другого приложения заменять их числовыми значениями.
Главная ошибка новичка
И хочу так же упомянуть про ошибку, которую очень часто совершают при обращении к одному приложению из другого. Допустим, необходимо скопировать из Word все данные в Excel. Часто начинающие делают это так:
Sub OpenWord() Dim objWrdApp As Object, objWrdDoc As Object 'создаем новое приложение Word Set objWrdApp = CreateObject("Word.Application") 'Можно так же сделать приложение Word видимым. По умолчанию открывается в скрытом режиме 'objWrdApp.Visible = True 'открываем документ Word - документ "Doc1.doc" должен существовать Set objWrdDoc = objWrdApp.Documents.Open("C:Doc1.doc") 'Копируем из Word все данные, обращаясь к объекту Range документа Range.Copy 'вставляем скопированное в ячейку А1 активного листа Excel ActiveSheet.Paste 'закрываем документ Word без сохранения objWrdDoc.Close False 'закрываем приложение Word objWrdApp.Quit 'очищаем переменные Word - обязательно! Set objWrdDoc = Nothing: Set objWrdApp = Nothing End Sub
На строке Range.Copy обязательно получите ошибку от VBA, указывающую, что нужен аргумент для объекта. Можно попробовать добавить этот аргумент: Range(1).Copy. Но все равно получим ошибку. Можно, конечно, указать даже ячейки: Range(«A1»).Copy. Но это приведет к тому, что скопирована будет ячейка А1 активного листа Excel.
Все дело в том, что мы хотим скопировать данные из Word-а, выполняя при этом код из Excel. А у Excel тоже есть объект Range с другими аргументами. И если не указать какому приложению, листу или документу принадлежит Range, то по умолчанию он будет отнесен к тому приложению, из которого выполняется код. Т.е. к Excel. Если совсем кратко об этом — всегда надо указывать какому приложению или объекту принадлежит используемый объект или свойство. Правильно код должен выглядеть так:
Sub OpenWord() Dim objWrdApp As Object, objWrdDoc As Object 'создаем новое приложение Word Set objWrdApp = CreateObject("Word.Application") 'Можно так же сделать приложение Word видимым. По умолчанию открывается в скрытом режиме 'objWrdApp.Visible = True 'открываем документ Word - документ "Doc1.doc" должен существовать Set objWrdDoc = objWrdApp.Documents.Open("C:Doc1.doc") 'Копируем из Word все данные, обращаясь к объекту Range документа 'при этом перед Range явно указываем откуда его брать - из документа Word -objWrdDoc("C:Doc1.doc") objWrdDoc.Range.Copy 'вставляем скопированное из Word в активную ячейку активного листа Excel ActiveSheet.Paste 'закрываем документ Word без сохранения objWrdDoc.Close False 'закрываем приложение Word objWrdApp.Quit 'очищаем переменные Word - обязательно! Set objWrdDoc = Nothing: Set objWrdApp = Nothing End Sub
Вместо Range ту же ошибку делают и с Selection(потому что Selection часто присутствует в записанных макрорекордером макросах), т.к. этот объект есть и в Excel и в Word и без явного указания приложения будет относится к приложению, в котором записано.
В приложенном файле код немного отличается от представленных выше — в нем можно посмотреть как вставить текст из ячеек в определенные(созданные заранее) закладки Word-а. Это удобно для создания бланков в Word и заполнения их через Excel
Скачать пример:

А в архиве ниже — практически готовое решение заполнения всевозможных бланков Word из Excel. Как это работает. У нас есть таблица Excel с данными для заполнения бланков заявлений на пособия:
Обращаю внимание, что в первой строке расположены метки. Они нужны для того, чтобы код мог понять значения какого столбца в какое место шаблона Word должны попасть. А в самом шаблоне Word мы должны проставить эти самые метки:
Фигурные скобки сделаны для того, чтобы код 100% искал и заменял только метку в шаблоне, исключая при этом замену случайного текста вне скобок(ведь слово «Должность» может встречаться и само по себе).
А здесь я схематично привел то, как будут происходить замены:
Сначала программа создаст новую папку, в которую и будет сохранять создаваемые файлы(имя папки состоит из даты и времени запуска кода). Далее программа циклом пройдется по каждой строке таблицы, создаст на основании шаблона Word(«Шаблон.doc») новый файл для этой строки, заполнит этот шаблона данными на основании меток, и сохранит созданный файл под новым именем. Сам файл шаблона при этом не изменяется — все метки в нем сохраняются как были настроены до запуска кода. Конкретно в приложенном коде значение для имени нового файла берется из первого столбца «ФИО с инициалами». Но это можно изменить в коде при необходимости. Делается это в этой строке:
'считываем фамилию с инициалами
sWDDocName = .Cells(lr, 1).Value
Что еще важно: файл шаблона Word должен находиться в той же папке, что и файл с кодом. Название файла в приложенном к статье файле должно быть «Шаблон.doc». Но его так же можно изменить, не забыв изменив его в коде в этой строке:
'имя шаблона Word с основным текстом и метками Const sWDTmpl As String = "Шаблон.doc"
В общем-то, если хоть чуть-чуть разбираетесь, то поменять можно многое. А для тех, кто не разбирается достаточно будет просто создавать метки в файле Word и обозначать ими столбца в таблице Excel. Количество столбцов и строк в таблице код определяет автоматически и при изменении размеров таблицы ничего изменять не надо. Главное, чтобы метки находились в первой строке, вторая строка — заголовок(необязательно), а с третьей строки начинаются данные, которые и используются для наполнения шаблонов.
Скачать пример:

Примеры работы с тем же Outlook можно посмотреть в моих статьях:
Как отправить письмо из Excel?
Сохранить вложения из Outlook в указанную папку
Статья помогла? Поделись ссылкой с друзьями!
Видеоуроки
Поиск по меткам
Access
apple watch
Multex
Power Query и Power BI
VBA управление кодами
Бесплатные надстройки
Дата и время
Записки
ИП
Надстройки
Печать
Политика Конфиденциальности
Почта
Программы
Работа с приложениями
Разработка приложений
Росстат
Тренинги и вебинары
Финансовые
Форматирование
Функции Excel
акции MulTEx
ссылки
статистика
































