|
Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » VBA - Добавление лиска в книгу excel 2007 в языке VBA и её запись |
|
VBA - Добавление лиска в книгу excel 2007 в языке VBA и её запись
|
Старожил Сообщения: 187 |
Профиль | Отправить PM | Цитировать Как добавить лист во вновь созданую книгу 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 |
|