|
||
| Правила | Регистрация | Пользователи | Сообщения за день | | Поиск | | Справка по форуму | Файлообменник | |
|
![]() |
Поиск в этой теме |
![]() |
#1 | |
Исходные данные в excel - набор чертежей (VB.net)
Регистрация: 23.07.2009
Сообщений: 35
|
||
Просмотров: 9862
|
|
||||
Продуман Регистрация: 22.02.2007
Питер
Сообщений: 2,839
|
Делается БД - в простом случае экселевская таблица, в ней прописываються имена блоков и все возможные атрибуты (координаты углы - если блоки динамические - то их атрибуты и т.д.) Ну и все собственно - далее програмка читает эксель и вставляет блоки.
__________________
Когда в руках молоток все вокруг кажется гвоздями. |
|||
![]() |
|
||||
Регистрация: 23.07.2009
Сообщений: 35
|
Цитата:
Или я чего-то не понимаю. |
|||
![]() |
|
||||
Продуман Регистрация: 22.02.2007
Питер
Сообщений: 2,839
|
Мы по моему на разных языках говорим - чтоб автокад мог создать что-либо "нажатием одной кнопки" ему нужны исходные данные - та самая спецификация, в каком виде ее будет вбивать пользователь решать только Вам - нужно разработать формат, который будет понятен пользователю и который компьютер может расшифровать и перевсети в блоки и их координаты. Если формат Вы сами можете представить и понимаете что нужно - постарайтесь его описать, если нет, а задачу решить нужно - то могу посоветывать только раздел "поиск исполнителей".
__________________
Когда в руках молоток все вокруг кажется гвоздями. |
|||
![]() |
|
||||
Регистрация: 23.07.2009
Сообщений: 35
|
Вот весь вопрос как раз и состоит в том, что как перейти от пользовательской спецификации к тому, с чем автокад сможет работать.
Нужен метод. Или каким-то образом сопоставлять исходную таблицу с эталонной, в которой прописаны координаты и прочее (все, что нужно для автокада) или же прописывать все необходимое в теле программы, основываясь на исходной спецификации. |
|||
![]() |
|
||||
специалист по околачиванию грушевых деревьев Регистрация: 14.09.2004
Pietari, Venäjä
Сообщений: 811
|
Для начала нужно научится читать данные
Небольшой пример (из 2-х столбцов первого листа) Измени имена файлов Код:
Последний раз редактировалось Олег (jr.), 01.11.2009 в 13:10. Причина: добавлена процедура |
|||
![]() |
|
||||
Регистрация: 23.07.2009
Сообщений: 35
|
Олег (jr.)
спасибо. Опробую. был в отпуске, так что пока не успел. Буду думать что и как делать. Dim workSheet As Excel.Worksheet = DirectCast(workBook.Worksheets.get_Item(1), Excel.Worksheet) Пишет, что: "get_Item" не является членом "Microsoft.Office.Interop.Excel.Sheets" Последний раз редактировалось Bart, 18.11.2009 в 16:27. |
|||
![]() |
|
||||
специалист по околачиванию грушевых деревьев Регистрация: 14.09.2004
Pietari, Venäjä
Сообщений: 811
|
Цитата:
см. рис. ~'J'~ |
|||
![]() |
|
||||
Регистрация: 23.07.2009
Сообщений: 35
|
Откуда брать ссылку на excel и office?
У меня добавлена Microsoft.Office.Interop.Excel. Это не то? И вот с этим я не справился пока If ds <> Nothing Then Оператор "<>" для типов "System.Data.DataSet" и "System.Data.DataSet" не определен. Последний раз редактировалось Bart, 18.11.2009 в 16:26. |
|||
![]() |
|
||||
специалист по околачиванию грушевых деревьев Регистрация: 14.09.2004
Pietari, Venäjä
Сообщений: 811
|
Цитата:
Ошибка машинного конвертора кода (в реальности код написан на C#) Нужно: If Not ds Is Nothing Then Насчет References: На вкладке COM: Microsof Excel 11.0 Object Library Microsoft Office 11.0 Object Library Переделал пример на VB.NET - на моей машине работает (A2008, Visual Studio2005) ~'J'~ Последний раз редактировалось Олег (jr.), 18.11.2009 в 20:51. Причина: добавлен файл |
|||
![]() |
|
||||
Регистрация: 23.07.2009
Сообщений: 35
|
Ага. Все дело было в том, что
workBook.Worksheets.get_Item(1) надо было заменить на workBook.Worksheets.Item(1). У меня Visual Studio2008 и office 2007, так что я поправил еще ряд ошибок. Но еще кое-что осталось, так что пока прога не работает. Видимо, с VS2005 к VS2008 произошли изменения и данные методы немного не пашут. Например вот тут: Dim workBook As Excel.Workbook = app.Workbooks.Open(Path, 0, True, 5, "", "", _ True, Excel.XlPlatform.xlWindows, vbTab, False, False, 0, _ True, 1, 0) Пишет, что старый метод. Причина найдена - баг! You run an English version of Excel. However, the regional settings for the computer are configured for a non-English language. http://support.microsoft.com/default...b;EN-US;320369 Последний раз редактировалось Bart, 20.11.2009 в 13:24. |
|||
![]() |
|
||||
Регистрация: 23.07.2009
Сообщений: 35
|
|
|||
![]() |
|
||||
специалист по околачиванию грушевых деревьев Регистрация: 14.09.2004
Pietari, Venäjä
Сообщений: 811
|
Цитата:
Как бы в продолжение темы ~'J'~ |
|||
![]() |
|
||||
Регистрация: 23.07.2009
Сообщений: 35
|
А как, используя ADO, осуществлять поиск и выбор нужных значений в eсxel таблице?
Например: находим строку с определенным значением (столбец 1), далее присваиваем переменной значение следующего столбца (столбец 2) в этой строке. Последний раз редактировалось Bart, 26.11.2009 в 16:30. |
|||
![]() |
|
||||
специалист по околачиванию грушевых деревьев Регистрация: 14.09.2004
Pietari, Venäjä
Сообщений: 811
|
Цитата:
Я не в форме пока на несколько дней Поправлюсь - продолжим Тут несколько вариантов: через SQL запросы в таблице либо методом Find самого Эксель Примеров готовых нет ~'J'~ |
|||
![]() |
![]() |
|
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Подскажите, существуют ли практические руководства по Lisp? | vn | LISP | 261 | 26.11.2015 13:27 |
Ищу исходные данные для диплома. | Yulia88 | Поиск литературы, чертежей, моделей и прочих материалов | 10 | 06.10.2009 22:41 |
Исходные данные для расчета теплообменника и вентилятора. | Pavel Samofalov | Отопление | 10 | 02.05.2009 21:06 |
Scad исходные данные из текстового фала. | FOXPRO | SCAD | 2 | 21.03.2008 09:34 |