Autocad программа excel не найдена

Содержание

Не возвращайтесь к файлу AutoCAD, выберите всю таблицу и щелкните значок «Загрузить из источника». Вы можете найти его на вкладке «Аннотации» в разделе «Таблицы». Это позволит извлечь новую информацию из файла Excel и обновить ее в файле САПР.

Как обновить ссылку на данные Excel в AutoCAD?

Изменение ссылки на данные для таблицы извлечения данных

  1. Щелкните правой кнопкой мыши таблицу извлечения данных и выберите Извлечение данных Изменить параметры извлечения данных.
  2. Перейдите к мастеру извлечения данных, чтобы отобразилась страница «Уточнить данные», и нажмите «Связать внешние данные».
  3. Щелкните Запустить диспетчер каналов передачи данных.
  4. Нажмите «Создать новую ссылку на данные Excel».

Как я могу редактировать файл Excel в AutoCAD?

Чтобы отредактировать встроенные объекты, начните с открытия документа Excel, содержащего встроенные объекты AutoCAD Architecture. Дважды щелкните встроенные объекты, чтобы запустить программу ACA, отобразить объекты и изменить их по мере необходимости. Сохраните изменения во внедренных объектах, щелкнув меню «Файл» и выбрав «Обновить».

excel to autocad without any program

ЭТО ИНТЕРЕСНО: Как разбить внешнюю ссылку в автокаде?

Как обновить OLE в AutoCAD?

Обновление ссылок OLE вручную

  1. Щелкните меню «Правка» «Ссылки OLE».
  2. В диалоговом окне «Ссылки» выберите ссылки, которые вы хотите обновить.
  3. Щелкните Обновить сейчас.

Как связать Excel с AutoCAD 2020?

С помощью диалогового окна «Связать внешние данные» вы можете:

  1. Укажите ссылку на данные, выбрав файл XLS, с которым будут связаны извлеченные данные из чертежа.
  2. Сопоставьте извлеченные данные чертежа и данные электронной таблицы.
  3. Выберите столбцы в файле XLS для объединения с извлеченными данными чертежа.

Как импортировать данные Excel в AutoCAD?

Импорт таблиц электронных таблиц Excel в продукты на основе AutoCAD

  1. В Microsoft Excel выберите область электронной таблицы, которую вы хотите импортировать, и скопируйте ее в буфер обмена.
  2. В AutoCAD в меню «Правка» выберите «Специальная вставка».
  3. В диалоговом окне «Специальная вставка» выберите параметр «Объекты AutoCAD». Это создаст таблицу AutoCAD, которую можно отформатировать в соответствии с типом линии и стилем текста.

Как отредактировать таблицу в AutoCAD?

Вы можете щелкнуть любую линию сетки на столе, чтобы выбрать ее, а затем изменить ее с помощью палитры свойств или ручек. При изменении высоты или ширины таблицы изменится только строка или столбец, прилегающие к выбранной вами ручке. Таблица сохранит свою высоту или ширину.

Как удалить ссылку на данные из Excel в AutoCAD?

Щелкните правой кнопкой мыши выбранную ячейку и выберите «Связи данных» «Отключить связь данных». Ссылка данных на электронную таблицу Microsoft Excel или файл с разделителями команд удаляется из таблицы.

Источник: powerpointmaniac.com

Таблицы из Автокада в Эксель и наоборот

AutoCAD: Связь с внешними данными

  1. Сам себя рисует (но не Custom object*)
  2. Имеет собственные данные и следит за их актуальностью
  3. Умеет импортировать/экспортировать себя в XML
Читайте также:
Сколько часов содержит программа обучения работающего населения не входящего в состав нфго насф

В AutoCAD’е у программиста есть несколько инструментов для хранения собственных данных в чертеже, это – XData и XRecord. Но это весьма ограниченные инструменты и доступ к этим данным имеется только из AutoCAD. Поэтому мы будем использовать внешний источник данных, а связывать их с примитивами в чертеже, через Handle.

Наш объект будет рисовать круг, а также текстовую метку содержащую радиус этого круга, но данный метод позволяет создавать любые примитивы (на пример Solid3d или NurbSurface) – лишь бы у них был Handle. Нам понадобятся методы для отрисовки Объекта и Метки. Но самое главное нам понадобится метод для отслеживания изменения объекта, обработчик события, который мы повесим на событие Modified. Также нам понадобятся методы для обновления примитивов и экспорта в XML. Ну хватит, меньше слов — больше кода.

Class MyCircle

Imports System.Xml Imports Autodesk.AutoCAD.DatabaseServices Imports Autodesk.AutoCAD.EditorInput Imports Autodesk.AutoCAD.Geometry Public Class MyCircle Private fCenter As Point3d Private fRadius As Double Private OID As ObjectId Private textID As ObjectId Public Sub New(cp As Point3d, r As Double, db As Database) Me.fCenter = cp Me.fRadius = R ‘ Me.DrawMe(db) Me.DrawLebel() End Sub Public Sub New(MyCircleData As XmlElement, db As Database) Dim wHandle As New Handle(Long.Parse(MyCircleData.GetAttribute(«Handle»), Globalization.NumberStyles.HexNumber)) OID = New ObjectId Me.fCenter = Me.ParsePoint(MyCircleData.GetAttribute(«Center»)) Me.fRadius = MyCircleData.GetAttribute(«Radius») If db.TryGetObjectId(wHandle, OID) Then Me.UpgradeMe() Else Me.DrawMe(db) End If Me.DrawLebel() End Sub Public Sub UpgradeMe() Using acTrans As Transaction = OID.Database.TransactionManager.StartTransaction() Dim wDBObj As Circle = OID.GetObject(OpenMode.ForWrite) RemoveHandler wDBObj.Modified, AddressOf CirMod wDBObj.Radius = Me.fRadius wDBObj.Center = Me.fCenter wDBObj.UpgradeOpen() AddHandler wDBObj.Modified, AddressOf CirMod acTrans.Commit() End Using End Sub Public Sub UpgradeLabel() Using acTrans As Transaction = OID.Database.TransactionManager.StartTransaction() Dim acText As DBText = textID.GetObject(OpenMode.ForWrite) acText.Position = Me.fCenter acText.TextString = Me.fRadius acText.UpgradeOpen() acTrans.Commit() End Using End Sub Public Sub DrawMe(db As Database) Using acTrans As Transaction = db.TransactionManager.StartTransaction() Dim cNewCircle As New Circle(Me.fCenter, New Vector3d(0, 0, 1), Me.fRadius) ‘получаем текущее пространство чертежа (может быть модель или лист) Dim btrCurrSpace As BlockTableRecord = acTrans.GetObject(db.CurrentSpaceId, OpenMode.ForWrite) ‘добавляем в текущее пространство наш созданный примитив OID = btrCurrSpace.AppendEntity(cNewCircle) acTrans.AddNewlyCreatedDBObject(cNewCircle, True) AddHandler cNewCircle.Modified, AddressOf CirMod ‘завершаем транзакцию acTrans.Commit() End Using End Sub Public Sub DrawLebel() If textID.IsNull Then Using acTrans As Transaction = OID.Database.TransactionManager.StartTransaction() Dim acBlkTbl As BlockTable acBlkTbl = acTrans.GetObject(OID.Database.BlockTableId, OpenMode.ForRead) Dim acBlkTblRec As BlockTableRecord acBlkTblRec = acTrans.GetObject(acBlkTbl(BlockTableRecord.ModelSpace), OpenMode.ForWrite) Dim acText As New DBText() acText.SetDatabaseDefaults() acText.Position = Me.fCenter acText.Height = 2 acText.TextString = Me.fRadius textID = acBlkTblRec.AppendEntity(acText) acTrans.AddNewlyCreatedDBObject(acText, True) acTrans.Commit() End Using End If End Sub Public Sub EraseLebel() If Not textID.IsNull Then Using acTrans As Transaction = OID.Database.TransactionManager.StartTransaction() Dim wDBObj As DBText = textID.GetObject(OpenMode.ForWrite) wDBObj.Erase() wDBObj.UpgradeOpen() acTrans.Commit() End Using End If End Sub Public Sub CirMod(ByVal senderObj As Object, ByVal evtArgs As EventArgs) Using acTrans As Transaction = OID.Database.TransactionManager.StartTransaction() Dim wDBObj As Circle = OID.GetObject(OpenMode.ForRead) Me.fCenter = wDBObj.Center Me.fRadius = wDBObj.Radius UpgradeLabel() acTrans.Commit() End Using End Sub Private Function ParsePoint(wStr As String) As Point3d wStr = wStr.Replace(«(«, «») wStr = wStr.Replace(«)», «») Dim Arr() As String = wStr.Split(«,») Return New Point3d(Double.Parse(Arr(0)), Double.Parse(Arr(1)), Double.Parse(Arr(2))) End Function Public Property Center As Point3d Get Return Me.fCenter End Get Set(value As Point3d) Me.fCenter = value Me.UpgradeMe() End Set End Property Public Sub Print(wEditor As Editor) Using acTrans As Transaction = OID.Database.TransactionManager.StartTransaction() wEditor.WriteMessage(«Handle: » Environment.NewLine) Dim wDBObj As Circle = OID.GetObject(OpenMode.ForRead) wEditor.WriteMessage(«Radius: » Environment.NewLine) wEditor.WriteMessage(«Center: » Environment.NewLine) End Using End Sub Public Function ToXML(wDoc As XmlDocument) As XmlElement Dim res As XmlElement = wDoc.CreateElement(«MyCircle») Using acTrans As Transaction = OID.Database.TransactionManager.StartTransaction() res.SetAttribute(«Handle», Me.OID.Handle.ToString) Dim wDBObj As Circle = OID.GetObject(OpenMode.ForRead) res.SetAttribute(«Radius», wDBObj.Radius) res.SetAttribute(«Center», wDBObj.Center.ToString) End Using Return res End Function End Class
Imports Autodesk.AutoCAD.DatabaseServices Imports Autodesk.AutoCAD.EditorInput Imports Autodesk.AutoCAD.Geometry

Не забыли подключить cmgd.dll, acdbmgd.dll, accoremgd.dll (AcAd >= 2013)?

Private fCenter As Point3d Private fRadius As Double

Собственные данные объекта, да это свойства примитива, но это же пример.

Private OID As ObjectId ‘Круг Private textID As ObjectId ‘Метка

Ссылки на примитивы чертежа.

Public Sub DrawMe(db As Database) Using acTrans As Transaction = db.TransactionManager.StartTransaction() Dim cNewCircle As New Circle(Me.fCenter, New Vector3d(0, 0, 1), Me.fRadius) ‘получаем текущее пространство чертежа (может быть модель или лист) Dim btrCurrSpace As BlockTableRecord = acTrans.GetObject(db.CurrentSpaceId, OpenMode.ForWrite) ‘добавляем в текущее пространство наш созданный примитив OID = btrCurrSpace.AppendEntity(cNewCircle) acTrans.AddNewlyCreatedDBObject(cNewCircle, True) AddHandler cNewCircle.Modified, AddressOf CirMod ‘завершаем транзакцию acTrans.Commit() End Using End Sub

Рисуем сам объект, а заодно запоминаем ссылку на примитив и главное — вешаем обработчик на изменение объекта.

Public Sub CirMod(ByVal senderObj As Object, ByVal evtArgs As EventArgs) Using acTrans As Transaction = OID.Database.TransactionManager.StartTransaction() ‘Dim acText As DBText = textID.GetObject(OpenMode.ForWrite) Dim wDBObj As Circle = OID.GetObject(OpenMode.ForRead) Me.fCenter = wDBObj.Center Me.fRadius = wDBObj.Radius UpgradeLabel() acTrans.Commit() End Using End Sub

Обрабатываем изменение объекта — получаем новые знаения свойств объекта, обнавляем Метку.

Public Sub DrawLebel() If textID.IsNull Then Using acTrans As Transaction = OID.Database.TransactionManager.StartTransaction() Dim acBlkTbl As BlockTable acBlkTbl = acTrans.GetObject(OID.Database.BlockTableId, OpenMode.ForRead) Dim acBlkTblRec As BlockTableRecord acBlkTblRec = acTrans.GetObject(acBlkTbl(BlockTableRecord.ModelSpace), OpenMode.ForWrite) Dim acText As New DBText() acText.SetDatabaseDefaults() acText.Position = Me.fCenter acText.Height = 2 acText.TextString = Me.fRadius textID = acBlkTblRec.AppendEntity(acText) acTrans.AddNewlyCreatedDBObject(acText, True) acTrans.Commit() End Using End If End Sub

Рисуем Метку объекта.

Public Sub New(MyCircleData As XmlElement, db As Database) Dim wHandle As New Handle(Long.Parse(MyCircleData.GetAttribute(«Handle»), Globalization.NumberStyles.HexNumber)) OID = New ObjectId Me.fCenter = Me.ParsePoint(MyCircleData.GetAttribute(«Center»)) Me.fRadius = MyCircleData.GetAttribute(«Radius») If db.TryGetObjectId(wHandle, OID) Then Me.UpgradeMe() Else Me.DrawMe(db) End If Me.DrawLebel() End Sub Public Function ToXML(wDoc As XmlDocument) As XmlElement Dim res As XmlElement = wDoc.CreateElement(«MyCircle») Using acTrans As Transaction = OID.Database.TransactionManager.StartTransaction() res.SetAttribute(«Handle», Me.OID.Handle.ToString) Dim wDBObj As Circle = OID.GetObject(OpenMode.ForRead) res.SetAttribute(«Radius», wDBObj.Radius) res.SetAttribute(«Center», wDBObj.Center.ToString) End Using Return res End Function

Импорт/экспорт в XML.

Ну конечно, нам понадобятся команды в AutoCAD’е, для работы с нашим классом.

Класс команд

Imports Autodesk.AutoCAD.Runtime Imports AppServ = Autodesk.AutoCAD.ApplicationServices Imports Autodesk.AutoCAD.DatabaseServices Imports Autodesk.AutoCAD.EditorInput Imports Autodesk.AutoCAD.Geometry Imports System.Windows.Forms Imports System.Xml Public Class CommandClass Dim wList As List(Of MyCircle) = Nothing _ Public Sub CrMyCircle() If wList Is Nothing Then wList = New List(Of MyCircle) Dim acDoc As AppServ.Document = AppServ.Application.DocumentManager.MdiActiveDocument Dim acCurDb As Database = acDoc.Database Dim pPtRes As PromptPointResult = acDoc.Editor.GetPoint(«Укажите центр: «) If (pPtRes.Status = PromptStatus.OK) Then Dim wPrmtDistOpt As New PromptDistanceOptions(«Укажите радиус: «) wPrmtDistOpt.BasePoint = pPtRes.Value wPrmtDistOpt.UseBasePoint = True Dim pDistRes As PromptDoubleResult = acDoc.Editor.GetDistance(wPrmtDistOpt) If (pDistRes.Status = PromptStatus.OK) Then wList.Add(New MyCircle(pPtRes.Value, pDistRes.Value, acCurDb)) End If End If End Sub _ Public Sub SaveToXML() Dim nDialog As New SaveFileDialog nDialog.Filter = «XML|*.xml» Dim wDoc As New XmlDocument wDoc.LoadXml(«») If wList IsNot Nothing Then wList.ForEach(Sub(obj) wDoc.DocumentElement.AppendChild(obj.ToXML(wDoc))) If nDialog.ShowDialog = DialogResult.OK Then wDoc.Save(nDialog.FileName) End If End Sub _ Public Sub LoadFromXML() Dim nDialog As New OpenFileDialog nDialog.Filter = «XML|*.xml» Dim wDoc As New XmlDocument Dim done As Boolean = False If nDialog.ShowDialog = DialogResult.OK Then wDoc.Load(nDialog.FileName) done = True End If If done Then If wList Is Nothing Then wList = New List(Of MyCircle) Dim acDoc As AppServ.Document = AppServ.Application.DocumentManager.MdiActiveDocument Dim acCurDb As Database = acDoc.Database For Each ch In wDoc.DocumentElement.ChildNodes wList.Add(New MyCircle(ch, acCurDb)) Next End If End Sub _ Public Sub DrawLabel() If wList IsNot Nothing Then wList.ForEach(Sub(obj) obj.DrawLebel()) End Sub _ Public Sub EraseLabel() If wList IsNot Nothing Then wList.ForEach(Sub(obj) obj.EraseLebel()) End Sub End Class
_ Public Sub CrMyCircle() If wList Is Nothing Then wList = New List(Of MyCircle) Dim acDoc As AppServ.Document = AppServ.Application.DocumentManager.MdiActiveDocument Dim acCurDb As Database = acDoc.Database Dim pPtRes As PromptPointResult = acDoc.Editor.GetPoint(«Укажите центр: «) If (pPtRes.Status = PromptStatus.OK) Then Dim wPrmtDistOpt As New PromptDistanceOptions(«Укажите радиус: «) wPrmtDistOpt.BasePoint = pPtRes.Value wPrmtDistOpt.UseBasePoint = True Dim pDistRes As PromptDoubleResult = acDoc.Editor.GetDistance(wPrmtDistOpt) If (pDistRes.Status = PromptStatus.OK) Then wList.Add(New MyCircle(pPtRes.Value, pDistRes.Value, acCurDb)) End If End If End Sub

Читайте также:
Как часто нужно менять программу

Команда CrMyCircle рисует наши объекты.

_ Public Sub SaveToXML() Dim nDialog As New SaveFileDialog nDialog.Filter = «XML|*.xml» Dim wDoc As New XmlDocument wDoc.LoadXml(«») If wList IsNot Nothing Then wList.ForEach(Sub(obj) wDoc.DocumentElement.AppendChild(obj.ToXML(wDoc))) If nDialog.ShowDialog = DialogResult.OK Then wDoc.Save(nDialog.FileName) End If End Sub

Сохраняем в XML.

_ Public Sub LoadFromXML() Dim nDialog As New OpenFileDialog nDialog.Filter = «XML|*.xml» Dim wDoc As New XmlDocument Dim done As Boolean = False If nDialog.ShowDialog = DialogResult.OK Then wDoc.Load(nDialog.FileName) done = True End If If done Then If wList Is Nothing Then wList = New List(Of MyCircle) Dim acDoc As AppServ.Document = AppServ.Application.DocumentManager.MdiActiveDocument Dim acCurDb As Database = acDoc.Database For Each ch In wDoc.DocumentElement.ChildNodes wList.Add(New MyCircle(ch, acCurDb)) Next End If End Sub

Загружаем из XML.

Вот так просто, и не принуждённо создаётся класс способный связать данные чертежа с данными из внешнего источника (XML). Его довольно просто доработать, для взаимодействя с внешней БД.

Источник: habr.com

Почему вставляя через OLE документ Excel — он отображется не полностью?

Форумы CADUser → Autodesk → AutoCAD → Почему вставляя через OLE документ Excel — он отображется не полностью?

Страницы 1

Чтобы отправить ответ, вы должны войти или зарегистрироваться

Сообщения 20

#1 Тема от Петя Сенокур 10 февраля 2006г. 10:09:40

Тема: Почему вставляя через OLE документ Excel — он отображется не полностью?

Т.е. всего какая часть листа Excel’a. Даже если растигиваешь — всё равно, просто изменяется пропорционально эта часть.

#2 Ответ от Valery Brelovsky 10 февраля 2006г. 14:41:40

  • Valery Brelovsky
  • Активный участник
  • Откуда: Израиль / Север Израиля / Кирь
  • На форуме с 3 июня 2005г.
  • Сообщений: 2,359
  • Спасибо: 19

Re: Почему вставляя через OLE документ Excel — он отображется не полностью?

Вставляй через буфер.

#3 Ответ от Кипятильник 10 февраля 2006г. 16:18:12

Re: Почему вставляя через OLE документ Excel — он отображется не полностью?

> Valery Brelovsky
Это прикол?
А OLE через что вставляется?

#4 Ответ от Петя Сенокур 10 февраля 2006г. 17:32:56

Re: Почему вставляя через OLE документ Excel — он отображется не полностью?

через буфер — тоже усекается документ.

#5 Ответ от Valery Brelovsky 10 февраля 2006г. 17:43:44

  • Valery Brelovsky
  • Активный участник
  • Откуда: Израиль / Север Израиля / Кирь
  • На форуме с 3 июня 2005г.
  • Сообщений: 2,359
  • Спасибо: 19

Re: Почему вставляя через OLE документ Excel — он отображется не полностью?

Откройте Excel выделите площадь таблицы которую хотите вставить скопируйте в буфер. Потом из буфера вставте в Автокад.

#6 Ответ от 10 февраля 2006г. 17:56:14

Re: Почему вставляя через OLE документ Excel — он отображется не полностью?

> Сенокур Петя
Большие таблицы будут усекатся, это известный глюк AutoCAD и поделать с этим что либо сложно.
А вы сделайте вот что. Выделите и скопируйте нужный диапазон в Excel. Потом Edit>Paste Special. В диалоге выберите строчку AutoCAD Еntities. Таблица вставится не как OLE-объект, а как обычные линнии и текст.

Посмотрите где «оборвалось» и вставьте следующий блок. Так по крайней мере можно всё красиво состыковать:)

#7 Ответ от Forma 10 февраля 2006г. 18:03:00

Re: Почему вставляя через OLE документ Excel — он отображется не полностью?

>
Не получается так напрямую в AutoCAD. Увы. А получается тогда когда вставляешь в какой либо 16 разрядный векторный редактор. А уж из него через dxf импортируешь в AutoCAD. Да и то кусочками.

#8 Ответ от Valery Brelovsky 10 февраля 2006г. 18:25:34

  • Valery Brelovsky
  • Активный участник
  • Откуда: Израиль / Север Израиля / Кирь
  • На форуме с 3 июня 2005г.
  • Сообщений: 2,359
  • Спасибо: 19

Re: Почему вставляя через OLE документ Excel — он отображется не полностью?

Я сейчас вставил таблицу 185*450. ни чего не усекалось. Попробовал двумя способами. В первом взял пустую, площадь она усекалась. Во втором поле с расчерченной таблицей и в это случае не усекалась, вставилась нормально по ранее приведенным размерам.

#9 Ответ от Valery Brelovsky 10 февраля 2006г. 18:34:50

  • Valery Brelovsky
  • Активный участник
  • Откуда: Израиль / Север Израиля / Кирь
  • На форуме с 3 июня 2005г.
  • Сообщений: 2,359
  • Спасибо: 19

Re: Почему вставляя через OLE документ Excel — он отображется не полностью?

Добавляю. Всиавил таблицу 200*800

#10 Ответ от 11 февраля 2006г. 01:15:50

Re: Почему вставляя через OLE документ Excel — он отображется не полностью?

Forma пишет:

Читайте также:
Осуществляет функции записи и редактирования исходного текста программы

Не получается так напрямую в AutoCAD. Увы. А получается тогда когда вставляешь в какой либо 16 разрядный векторный редактор. А уж из него через dxf импортируешь в AutoCAD. Да и то кусочками.

Ничего честно говоря не понял. Что получается так или не так? У меня через Paste Special всё прекрасно получается. Но не OLE:(

> Valery Brelovsky
Какой AutoCAD? У меня в 2004-м больше 60-ти с чем то строк вставить как OLE не получается, причём не только у меня одного. Завтра попробую в новых версиях, сегодня уже нет сил эсперементировать. Ночь, все люди спят.

#11 Ответ от Forma 11 февраля 2006г. 01:39:32

Re: Почему вставляя через OLE документ Excel — он отображется не полностью?

>
Прошу прощения. Это я ветку перепутал.
Мне надо было поместить в «Как в acad 2006 вставить таблицу из Excel в виде текста и линий а не как таблицу?». Запутался уже.

#12 Ответ от Forma 11 февраля 2006г. 01:46:14

Re: Почему вставляя через OLE документ Excel — он отображется не полностью?

>
Кстати, нет худа без добра 🙂 Может, то что вставляется таблица кусочками- это не особенность AutoCAD, а Excel или OS ? Я вставляю таблицу в другой CAD и тоже только кусочками.

#13 Ответ от Valery Brelovsky 11 февраля 2006г. 09:31:07

  • Valery Brelovsky
  • Активный участник
  • Откуда: Израиль / Север Израиля / Кирь
  • На форуме с 3 июня 2005г.
  • Сообщений: 2,359
  • Спасибо: 19

Re: Почему вставляя через OLE документ Excel — он отображется не полностью?

>
У меня есть 2006 и 2000. Вчера я делал вставку таблицы в 2006. Сегодня попробовал в 2000 . Вставилась 200 строк и 8 столбцов. Я не тестирую вставку таблиц больших размеров. Но если интересно, то общими усилиями можно как-то вывести на нужный уровень. По двойному клику вошел в Excel добавил надпись и вышел.

Во вставлено таблице допонилась эта запись.

#14 Ответ от 11 февраля 2006г. 10:19:16

Re: Почему вставляя через OLE документ Excel — он отображется не полностью?

> Valery Brelovsky

> Forma
Провёл тесты на таблице 1200*10.
2004-й: Как OLE(из меню) — 72 строки, через буфер 1200 — с большими искажениями, Paste Special. 73 строки
2005-й: Как OLE(из меню) — 72 строки, через буфер 1200 — с большими искажениями, Paste Special. 1200 строк (как таблица).
2006-й: Как OLE(из меню) — 72 строки, через буфер 1200 — в нормальном виде. Paste Special. 1200 строк (как таблица).
Однако у меня запало в память как я сам пытался это сделать на прошлом месте работы, ни через буфер ни меню у меня таблица полностью не вставлялась. В чём тут дело не знаю.

#15 Ответ от Valery Brelovsky 11 февраля 2006г. 10:29:42

  • Valery Brelovsky
  • Активный участник
  • Откуда: Израиль / Север Израиля / Кирь
  • На форуме с 3 июня 2005г.
  • Сообщений: 2,359
  • Спасибо: 19

Re: Почему вставляя через OLE документ Excel — он отображется не полностью?

> (2006-02-11
10:19:16)
Как понимать с большими искажениями? 1200 это я понимаю количество строк. Высота стандартной строки8-10 мм. На формат А0 841*890 есть возможность вставить не более 80 — 100 строк.

#16 Ответ от 11 февраля 2006г. 11:15:18

Re: Почему вставляя через OLE документ Excel — он отображется не полностью?

Valery Brelovsky пишет:

Как понимать с большими искажениями?

Понимать так что строчки настолько узенькие что прочитать в них ничего не возможно, несмотря на то что в свойствах Scale Height и Width 100%. Приходится растягивать вручную или подбирать размеры в диалоге свойств.

1200 это я понимаю количество строк. Высота стандартной строки 8-10 мм. На формат А0 841*890 есть возможность вставить не более 80 — 100 строк.

Да это понятно. Но это ведь тест на то сколько можно за один раз вставить.

#17 Ответ от Valery Brelovsky 11 февраля 2006г. 11:41:35

  • Valery Brelovsky
  • Активный участник
  • Откуда: Израиль / Север Израиля / Кирь
  • На форуме с 3 июня 2005г.
  • Сообщений: 2,359
  • Спасибо: 19

Re: Почему вставляя через OLE документ Excel — он отображется не полностью?

>
Дело не только в том, сколько можно вставить, но и чтобы прилично и читаемо смотрелось после печати. Я рассматриваю что, как писал в предыдущем сообщении под ширина плоттера 900. Потом 1200 строк по10мм это 12 метров. Такая таблица не будет читаемая.
Я сейчас не занят и занимаюсь тестирование вставки таблицы в 2006 из Excel. Как я понимаю нужно создать прототип чертежа с таблицами. Таблицу после вставки, конечно, необходимо согласовать в размерах.

#18 Ответ от ASHAS 11 февраля 2006г. 15:47:20

Re: Почему вставляя через OLE документ Excel — он отображется не полностью?

В 2005-2006 экселевская таблица вставляется и как объект TABLE, а уж потом, по настроению, и расчленить (бр-р-р!) моно.

#19 Ответ от Valery Brelovsky 11 февраля 2006г. 17:40:21

  • Valery Brelovsky
  • Активный участник
  • Откуда: Израиль / Север Израиля / Кирь
  • На форуме с 3 июня 2005г.
  • Сообщений: 2,359
  • Спасибо: 19

Re: Почему вставляя через OLE документ Excel — он отображется не полностью?

> ASHAS
Таблица, которая, вставляется как объект TABLE ACAD похожа на таблицу Excel, но очень далека от удобства работы с аналогичной таблицей в Excel. Я пытался написать формулы элементарного сложения в Excel, а потом вставить в TABLE ACAD не работает. Соответственно написание сложных формул в TABLE довольно сложная задача без списка как это организовано Excel. У меня маленькие таблицы.

Не знаю, может у Вас другое мнение по этому поводу. Но всё-таки хотелось иметь, более управляемую таблицу.
Попробовал ещё раз создать таблицу. После расчленения она превращается в море отдельных горизонтальных и вертикальных линий.

Источник: www.caduser.ru

Рейтинг
( Пока оценок нет )
Загрузка ...
EFT-Soft.ru