Разное - Как получить доступ программными средствами к внедрённой в doc excel таблице?
-
ivanhoe75
Разное - Как получить доступ программными средствами к внедрённой в doc excel таблице?
Как получить доступ программными средствами к внедрённой в doc excel таблице? (к данным)
-
ivanhoe75
Re: Разное - Как получить доступ программными средствами к внедрённой в doc excel таблице?
Нужны некие программные фишки, зависящие от языка программирования и прочих нюансов. Я вот точно знаю, что компилятор Фортрана
Экспортируйте таблицу Эксель в виде текст-файла, в любом доступном формате. Дальше разбирайтесь. Это намного проще будет.
Silverfrost FTN95
(при некоммерческом использовании бесплатный) имеет доступ к таблицам Эксель (через виджет "Браузер"). Но я никогда эту фишку даже не пробовал использовать. А нафига?Экспортируйте таблицу Эксель в виде текст-файла, в любом доступном формате. Дальше разбирайтесь. Это намного проще будет.
-
Iska
Re: Разное - Как получить доступ программными средствами к внедрённой в doc excel таблице?
Цитата ivanhoe75:
Как получить доступ программными средствами к внедрённой в doc excel таблице? (к данным)
Например, так (пример для Microsoft Office 2003):
Код:
Как получить доступ программными средствами к внедрённой в doc excel таблице? (к данным)
Разное - Как получить доступ программными средствами к внедрённой в doc excel таблице?
Например, так (пример для Microsoft Office 2003):
Код:
Код: Выделить всё
Option Explicit
Sub Sample()
Dim objInlineShape As InlineShape
Dim objWorkbook As Object
For Each objInlineShape In ThisDocument.InlineShapes
If objInlineShape.Type = wdInlineShapeEmbeddedOLEObject Then
If objInlineShape.OLEFormat.ProgID = "Excel.Sheet.8" Then
objInlineShape.OLEFormat.Activate
Set objWorkbook = objInlineShape.OLEFormat.Object
MsgBox objWorkbook.Worksheets.Item(1).Cells(1, 1).Value
Set objWorkbook = Nothing
End If
End If
Next
End Sub-
ivanhoe75
Re: Разное - Как получить доступ программными средствами к внедрённой в doc excel таблице?
2 XPEHOMETP Экспортрование исключается. Документы уже готовы такие с внедрёнными оле-объектами.
2 [url=http://javascript:PrintUserName('Iska')]Iska[/url]
спасибо!
2 [url=http://javascript:PrintUserName('Iska')]Iska[/url]
-
ivanhoe75
Re: Разное - Как получить доступ программными средствами к внедрённой в doc excel таблице?
Вот дописал до такого состояния
запись не работает. спотыкается на FileFormat все перепробовал - не проходит
Dim objShape As Word.InlineShape
Dim objOLE As Word.OLEFormat
Dim objWorkbook As Object 'Рабочая книга Excel
Dim objWorksheet As Object 'Рабочий лист
Dim objDiapazon As Object 'Диапазон ячеек
For Each objShape In ActiveDocument.InlineShapes
Set objOLE = objShape.OLEFormat
If Not objOLE Is Nothing Then
If objOLE.ProgID Like "Excel.Sheet*" Then
objOLE.Activate
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
'xlExcel9795 xlNormal xlCSV xlXMLSpreadsheet
objWorkbook.SaveAs FileName:= _
"\\cad\...\userdata\...\Рабочий стол\sklad.csv", FileFormat:= _
xlXMLSpreadsheet, CreateBackup:=False, Local:=True
Set wb = Workbooks.Add(xlWBATWorksheet)
With wb.ActiveSheet.Cells(1, 1)
.PasteSpecial Paste:=xlPasteColumnWidths
.PasteSpecial Paste:=xlPasteValues
.PasteSpecial Paste:=xlPasteFormats
End With
запись не работает. спотыкается на FileFormat все перепробовал - не проходит
Dim objShape As Word.InlineShape
Dim objOLE As Word.OLEFormat
Dim objWorkbook As Object 'Рабочая книга Excel
Dim objWorksheet As Object 'Рабочий лист
Dim objDiapazon As Object 'Диапазон ячеек
For Each objShape In ActiveDocument.InlineShapes
Set objOLE = objShape.OLEFormat
If Not objOLE Is Nothing Then
If objOLE.ProgID Like "Excel.Sheet*" Then
objOLE.Activate
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
'xlExcel9795 xlNormal xlCSV xlXMLSpreadsheet
objWorkbook.SaveAs FileName:= _
"\\cad\...\userdata\...\Рабочий стол\sklad.csv", FileFormat:= _
xlXMLSpreadsheet, CreateBackup:=False, Local:=True
Set wb = Workbooks.Add(xlWBATWorksheet)
With wb.ActiveSheet.Cells(1, 1)
.PasteSpecial Paste:=xlPasteColumnWidths
.PasteSpecial Paste:=xlPasteValues
.PasteSpecial Paste:=xlPasteFormats
End With
-
Iska
Re: Разное - Как получить доступ программными средствами к внедрённой в doc excel таблице?
Что Вы хотели получить данным кодом?
-
Iska
Re: Разное - Как получить доступ программными средствами к внедрённой в doc excel таблице?
задача была найти екселевскую таблицу в вордовском файле и сохранить в отдельный файл. Это я надёргал и пытаюсь заставить работать