![]() |
Внимание, важное сообщение: Дорогие Друзья!
В ноябре далекого 2001 года мы решили создать сайт и форум, которые смогут помочь как начинающим, так и продвинутым пользователям разобраться в операционных системах. В 2004-2006г наш проект был одним из самых крупных ИТ ресурсов в рунете, на пике нас посещало более 300 000 человек в день! Наша документация по службам Windows и автоматической установке помогла огромному количеству пользователей и сисадминов. Мы с уверенностью можем сказать, что внесли большой вклад в развитие ИТ сообщества рунета. Но... время меняются, приоритеты тоже. И, к сожалению, пришло время сказать До встречи! После долгих дискуссий было принято решение закрыть наш проект. 1 августа форум переводится в режим Только чтение, а в начале сентября мы переведем рубильник в положение Выключен Огромное спасибо за эти 24 года, это было незабываемое приключение. Сказать спасибо и поделиться своей историей можно в данной теме. С уважением, ваш призрачный админ, BigMac... |
|
Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » VBA - Добавление лиска в книгу excel 2007 в языке VBA и её запись |
|
VBA - Добавление лиска в книгу excel 2007 в языке VBA и её запись
|
Старожил Сообщения: 187 |
Как добавить лист во вновь созданую книгу excel 2007 в языке VBA?
такой код спотыкается на xlWBATWorksheet ****** пишет нет такого терма. Помогите Set objWorkbook = objOLE.Object 'Set objWorksheet = objWorkbook.Worksheets(1) Set objWorksheet = objWorkbook.Worksheets("Лист1") Set objDiapazon = objWorksheet.Range("A1:J15") Exit For End If End If ' копирование таблицы в новый документ 'Dim wb As Workbook Dim wb As Object Dim ActiveSheet As Object Application.ScreenUpdating = False ActiveSheet = objWorkbook ActiveSheet.Range ("A1:J15") ActiveSheet.Select ActiveSheet.Copy 'ActiveSheet.UsedRange.Copy Set wb = Workbooks.Add(xlWBATWorksheet) **************** With wb.ActiveSheet.Cells(1, 1) .PasteSpecial Paste:=xlPasteColumnWidths .PasteSpecial Paste:=xlPasteValues .PasteSpecial Paste:=xlPasteFormats End With 'здесь код сохранения книги взятый у Вас без проверки ChDir "\\cad\...\userdata\...\Рабочий стол" wb.SaveAs FileName:= _ "\\cad\...\userdata\...\Рабочий стол\sklad.csv", FileFormat:= _ xlCSV, CreateBackup:=False, Local:=True wb.Close False Application.CutCopyMode = False Application.ScreenUpdating = True |
|
Отправлено: 10:49, 18-11-2013 |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать ivanhoe75, у Вас приведённый код далеко выходит за рамки заголовка. Простейшим кодом для:
Цитата ivanhoe75:
|
|
Отправлено: 13:16, 18-11-2013 | #2 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Старожил Сообщения: 187
|
Профиль | Отправить PM | Цитировать так книга себя перезаписывает? Файлов новых не появляется
|
Отправлено: 15:58, 18-11-2013 | #3 |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать Цитата ivanhoe75:
|
|
Отправлено: 16:03, 18-11-2013 | #4 |
Старожил Сообщения: 187
|
Профиль | Отправить PM | Цитировать В вордовом документе находится ексельная книга и записывается отдельно на диск в этой же директории.(По идее если их несколько - то следующая так же в отдельный файл).
|
|
Отправлено: 11:49, 19-11-2013 | #5 |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать Т.е., то же, что здесь: Как получить доступ программными средствами к внедрённой в doc excel таблице?? К сожалению, у меня пока никак не получилось добиться корректной работы по сохранению встроенного объекта Microsoft Excel во внешний файл: периодически возникает ошибка при сохранении (или копировании — если использовать копирование листов во внешнюю рабочую книгу). При этом при отладке, если приостановить исполнение макроса, а затем ничего не меняя продолжить его исполнение — чаще всего объект корректно сохраняется во внешний файл. Причины такого поведения мне пока непонятны.
|
Отправлено: 12:48, 19-11-2013 | #6 |
Старожил Сообщения: 187
|
Профиль | Отправить PM | Цитировать сбрось мне код плз. Помучаем(ся) вместе
Ты перед сохранением копируешь в новую книгу? Попробуй сохранить в других форматах лишь бы таблица читалась |
Отправлено: 13:00, 19-11-2013 | #7 |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать Option Explicit
Sub Sample()
Dim objInlineShape As InlineShape
Dim objWorkbook As Excel.Workbook
Dim strFileName As Variant
For Each objInlineShape In ThisDocument.InlineShapes
If objInlineShape.Type = wdInlineShapeEmbeddedOLEObject Then
If objInlineShape.OLEFormat.ProgID = "Excel.Sheet.8" Then
objInlineShape.OLEFormat.Activate
With objInlineShape.OLEFormat.Object
'strFileName = objWorkbook.Application.GetSaveAsFilename
strFileName = "c:\Sample.xls"
'If strFileName <> False Then
.SaveAs FileName:=strFileName, FileFormat:=xlWorkbookNormal
'End If
End With
End If
End If
Next
End Sub
|
Отправлено: 14:08, 19-11-2013 | #8 |
Старожил Сообщения: 187
|
Профиль | Отправить PM | Цитировать Вот такая штука работает с выводом окна на сохранение документа, работает только с 1-ой таблицей, тоже вылетает через раз.
|
Отправлено: 21:40, 19-11-2013 | #9 |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать ivanhoe75, я всё это пробовал. И Workbook, и Worksheet, и копирование в новую книгу… Потому и пишу: не удаётся добиться корректной работы.
|
Отправлено: 00:34, 20-11-2013 | #10 |
![]() |
Участник сейчас на форуме |
![]() |
Участник вне форума |
![]() |
Автор темы |
![]() |
Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
VBA - VBA Добавление слова и форматирование ячейки. | sakova | Программирование и базы данных | 2 | 19-06-2012 01:13 | |
Разное - Задача Excel VBA | JON4 | Microsoft Office (Word, Excel, Outlook и т.д.) | 8 | 12-12-2010 18:40 | |
2007 - [решено] Нужно ли удалять office 2007 перед установкой office 2007 на другом языке | Civo | Microsoft Office (Word, Excel, Outlook и т.д.) | 5 | 22-02-2010 11:27 |
|