На главную страницу
Русский English
 


Поддержка
Форум
Техподдержка
Закрытый разделПерсональная

Авторизация

Запомнить меня на этом компьютере
  Забыли свой пароль?
  Регистрация



Поиск по сайту


Подписка

Изменение параметров

Hits 66985855
4442
Hosts 3541118
702
Visitors 53213246
3075

10


Главная / Поддержка / Форумы / Макро

Форум «Макро»

Версия для печати Версия для печати

Список форумов
Новые темы
Список тем
Поиск по форумам
Помощь
Войти
Регистрация

Сообщения 1 - 25 из 41
Начало | Пред. | 1 2 | След. | Конец 

Тема: «Rastr и Excel » в форуме: Макро   Просмотров: 41674
 
Михаил Одинцов
Постоянный посетитель
 
Всего сообщений: 148
Дата регистрации: 22.07.2008
Создано: 15.10.2008 19:05:52
 
 
Возникла проблема с загрузкой файлов растра через эксель. Функция Rastr.Load не хочет загружать файл, Rastr.Save работает нормально причем что на других компах этот макос работает. Вопрос, собственно, в том, это локальная проблема конкретного компа? И как с ней бороться, если кто сталкивался.
Загружал так: Rastr.Load 1, File1, shabl1, File1-имя файла, shabl1=prdir & "SHABLON\" & sha1, соответсвенно шаблон .rg2
 
Профиль
Наверх
Михаил Одинцов
Постоянный посетитель
 
Всего сообщений: 148
Дата регистрации: 22.07.2008
Создано: 15.10.2008 19:12:04
 
 
Заранее прошу прощения за создание трех одинаковых тем, инет подтормозил.....
 
Профиль
Наверх
Владимир Неуймин
Администратор
 
Всего сообщений: 268
Дата регистрации: 13.03.2007
Создано: 15.10.2008 23:07:26
 
 
prdir при работе под екслем откуда берется ?
Ведь функция SendCommandMain живет только в родной оболочке...
 
Профиль
Наверх
Михаил Одинцов
Постоянный посетитель
 
Всего сообщений: 148
Дата регистрации: 22.07.2008
Создано: 16.10.2008 19:37:44
 
 
prdir = "C:\Program Files\RastrWin\"
Директория Растра прописывалась вручную..... Проблема решилась после переустановки Растра, так как выяснилось, что из него самого не загружались файлы. С учетом того, что работа велась полностью в Экселе, сразу этого выяснить не удалось.
 
Профиль
Наверх
Михаил Реутов
Постоянный посетитель
 
Всего сообщений: 224
Дата регистрации: 21.11.2007
Создано: 07.11.2008 12:17:37
 
 
Я в экселе делаю так
Код

Dim file_name As String, rastr
Const shabl = "C:Program FilesRastrWinSHABLONрежим­.rg2"
file_name = "D:мой_режим.rg2"
Set rastr = CreateObject("Astra.Rastr­")
rastr.Load 1, file_name, shabl
...

И далее работайте с объектом rastr. У меня все работает.
зы: в начале модуля в экселе незабудь написать Option Explicit
 
Профиль
Наверх
Михаил Реутов
Постоянный посетитель
 
Всего сообщений: 224
Дата регистрации: 21.11.2007
Создано: 07.11.2008 12:19:26
 
 
Форум все наклонные удалил из предыдущего сообщения.
 
Профиль
Наверх
Андрей
Посетитель
 
Всего сообщений: 16
Дата регистрации: 24.11.2009
Создано: 27.10.2010 12:15:00
 
 
Здравствуйте, постоянно сталкиваюсь с проблемой коррекции большого объёма параметров в режимном файле, групповая коррекция в этом случае не подходит.
Вопрос к разработчикам Растра: есть ли возможность "зашить" в программу функцию чтения данных из таблиц эксель, например так, как это организовано в программе "ДАКАР". Как видно из сообщений форума, многие сталкиваются с этой проблемой, а писать макросы может не каждый, так что данная функция будет весьма полезной.
 
Профиль
Наверх
Евгений Машалов
Администратор

 
Всего сообщений: 1046
Дата регистрации: 23.04.2007
Создано: 27.10.2010 22:18:00
 
 
С удовольствием. Только как быть с идентификацией столбцов в Растре и Экселе ? Можно ли использовать программу "ДАКАР" в качестве эталона ? В смысле ознакомиться как это в ней организовано ?

А пока прямого обмена Растра с Экселем нет, можно порекомендовать запись csv в Экселе и чтение в Растре.

UPD: Все, нашел где смотреть....
 
Профиль
Наверх
Иван Трофимович
Постоянный посетитель
 
Всего сообщений: 76
Дата регистрации: 12.04.2008
Создано: 02.11.2010 23:56:04
 
 
работать прямо из екселя с растром неудобно - отлаживать сложно. удобнее создать макрос в растре, потом запускать его из екселя (или Word, или Visio как когда необходимо)
Set rastr = CreateObject("Astra.Rastr­")
ret = rastr.execmacropath(<путь­ к макросу>)
проблема в том что периодически эта схема отказывается работать. до перезапуска офиса.
вот такую ошибку выбрасывает
Пользователь добавил изображение

Uploaded with ImageShack.us
как это отладить ?
 
Профиль
Наверх
Бекжан Мукатов
Посетитель
 
Всего сообщений: 17
Дата регистрации: 06.01.2010
Создано: 21.10.2011 13:44:18
 
 
Здравствуйте!
Помогите пожалуйста в следующем:
Мне необходимо экспортировать данные о ветвях в excel. Не могу вывести в excel параметры ветвей. Записал формулу для вывода R:
=ДРВ("Rastr.RTD";"";"V";"­$1";"vetv"; "r"; "ip="&$A2 & "iq="&B2)
Но не знаю как использовать логическое "И", в результате получаю для всех ветвей начинающихся на p="&$A2 одинаковые значения (видимо первой попавшейся под условие p="&$A2 строки )
 
Профиль
Наверх
Евгений Машалов
Администратор

 
Всего сообщений: 1046
Дата регистрации: 23.04.2007
Создано: 22.10.2011 02:35:39
 
 
В выборке RastrWin "И" соответствует амперсанд "&".
ДРВ будет выглядеть так:

Код
=ДРВ("Rastr.RTD";"";"V";"­?$1";"vetv"; "r"; "ip="&$A2 & "&iq="&B2)


Если Вы вводите ДРВ вручную, предварительно полезно и удобно проверять работу выборки в RastrWin в контекстном меню соответствующей таблицы - пункт "Выборка".
 
Профиль
Наверх
Иван
Постоянный посетитель
 
Всего сообщений: 76
Дата регистрации: 12.04.2008
Создано: 20.03.2012 03:11:56
 
 
все еще актуален мой вопрос выше. не могу запустить ряд макросов из под екселя - потому что не запускается растр. ошибку - см. выше.
видимо из-за того что рустаб установил. что делать кроме как все переставлять заново несколько раз ?
 
Профиль
Наверх
Михаил Реутов
Постоянный посетитель
 
Всего сообщений: 224
Дата регистрации: 21.11.2007
Создано: 20.03.2012 08:18:56
 
 
Цитата
Иван Трофимович пишет:
как это отладить ? все еще актуален мой вопрос выше

По Вашему вопросу мало информации, чтобы Вам можно было бы хоть как то помочь.

Если был установлен Рустаб, то попобуйте в папке Растра запустить reset.bat
 
Профиль
Наверх
Иван
Постоянный посетитель
 
Всего сообщений: 76
Дата регистрации: 12.04.2008
Создано: 22.03.2012 02:19:23
 
 
попробовал. удалил все (стоял рустаб на диске D). поставил последнюю версию Rustab в директорию по умолчанию.
запускаю из под екселя вот такой вот макрос
Set rastr = CreateObject("Astra.Rastr­")
'sha1 = "режим.rg2"
'prdir = "D:\EDUCATION\RastrWin\" ' директория с Rastr
shabl1 = "C:\Program Files\RastrWin\SHABLON\ре­жим.rg2"

rastr.NewFile shabl1

Path = ThisWorkbook.Path & "\" & script
Debug.Print "запущен скрипт " & Path
ret = rastr.execmacropath(Path)­ ', "ExWb_path=""" & ThisDocument.Path & """")
получаю ошибку - см. выше. сам скрипт растровский рабочий - в самом растре работает безошибочно. в чем дело и что можно предпринять ? как это отладить вообще ?
 
Профиль
Наверх
Александр Александров
Администратор
 
Всего сообщений: 657
Дата регистрации: 31.05.2008
Создано: 22.03.2012 11:31:24
 
 
Экселевский макрос лучше всего отлаживается отладчиком Экселя. Ставите точки останова и смотрите в пошаговом режиме, что куда передаётся.
 
Профиль
Наверх
Иван
Постоянный посетитель
 
Всего сообщений: 76
Дата регистрации: 12.04.2008
Создано: 22.03.2012 15:27:56
 
 
так падает макрос вот на этом
ret = rastr.execmacropath(Path)­
Path при этом корректный. на что смотреть ?
 
Профиль
Наверх
Александр Александров
Администратор
 
Всего сообщений: 657
Дата регистрации: 31.05.2008
Создано: 22.03.2012 15:50:13
 
 
попробуйте прислать мне все ваши файлы
ustas( sob ) niipt-ems.ru.
 
Профиль
Наверх
Иван
Постоянный посетитель
 
Всего сообщений: 76
Дата регистрации: 12.04.2008
Создано: 16.04.2012 02:35:27
 
 
неделю промаялся ( но похоже эмпирически нашел в чем дело.
макрос для расчета динамики - соответсвенно используем функции рустаба, а не растра. собственно именно на загрузке таблиц оборудования для расчета динамики макрос и падает.

Set rastr = CreateObject("Astra.Rastr­")

вот как вместо растра создать рустаб ?
 
Профиль
Наверх
Александр Александров
Администратор
 
Всего сообщений: 657
Дата регистрации: 31.05.2008
Создано: 16.04.2012 10:31:47
 
 
Пришлите макрос на мое мыло приведенное выше.
 
Профиль
Наверх
Иван
Постоянный посетитель
 
Всего сообщений: 76
Дата регистрации: 12.04.2008
Создано: 16.04.2012 14:55:31
 
 
отправил.
 
Профиль
Наверх
Кирилл
Заглянувший
 
Всего сообщений: 8
Дата регистрации: 01.06.2020
Создано: 01.06.2020 14:08:50
 
 
Добрый день.
При написании макроса потребовалось перенести результаты расчетов из RastrWin в Excel с точностью до 3 знаков. Подскажите пожалуйста, каким образом это сделать? Вот, что нужно перенести в Excel:
for col = 39 to 42
spXL.Worksheets(2).Cells(­1,col - 30) = tVetv.Cols(col).Prop(FL_Z­ag)
for row = 0 to tVetv.Size - 1 spXL.Worksheets(2).Cells(­2 + row,col - 30) = tVetv.Cols(col).ZS(row) next
 
Профиль
Наверх
Евгений Машалов
Администратор

 
Всего сообщений: 1046
Дата регистрации: 23.04.2007
Создано: 01.06.2020 16:04:42
 
 
Здравствуйте Кирилл,
Вместо ZS(row) попробуйте Z(row). ZS передает строку, Z - вариант. Если в нем double - будет передана полная точность и выбрать количество знаков можно будет в XL.
 
Профиль
Наверх
Кирилл
Заглянувший
 
Всего сообщений: 8
Дата регистрации: 01.06.2020
Создано: 01.06.2020 16:14:19
 
 
Z(row) тоже пробовал - получается много знаков после запятой
 
Профиль
Наверх
Евгений Машалов
Администратор

 
Всего сообщений: 1046
Дата регистрации: 23.04.2007
Создано: 01.06.2020 16:20:51
 
 
Ну так поставьте свойство ячейки в XL "Числовой" и укажите сколько надо знаков. Либо в UI либо в макросе.

Можно точность в текстовом представлении прямо в RastrWin поставить на нужное поле
Код
tVetv.Cols(col).Prop(FL_P­REC) = 3

или поменять "точность" в шаблоне
и пользоваться по-прежнему ZS(). При этом RastrWin тоже будет показывать double в этой точности.
 
Профиль
Наверх
Кирилл
Заглянувший
 
Всего сообщений: 8
Дата регистрации: 01.06.2020
Создано: 01.06.2020 16:27:15
 
 
Спасибо вам большое. Теперь все показывает как надо.
 
Профиль
Наверх


Сообщения 1 - 25 из 41
Начало | Пред. | 1 2 | След. | Конец 

Читают тему
гостей: 1, пользователей: 0, из них скрытых: 0


Список форумов
Новые темы
Список тем
Поиск по форумам
Помощь
Войти
Регистрация







Программный комплекс «RasrWin»
Программный комплекс «RastrWin»
© «RastrWin», 1988-2019