Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - VBA

Страница: 1 |

 

  Вопрос: ImportEx и Import Добавлено: 05.05.06 21:01  

Автор вопроса:  ofile | ICQ: 11750095 
Необходимо в Corel'е импортировать рисунок на лист, делается это так:
    
    Dim a As ImportFilter
    Set a = ActiveLayer.ImportEx("C:\рисунок.jpg")
    a.Finish

Проблема в том, что при этом необходимо, чтобы человек сам выбрал импортируемый файл (без скриптов это делается так: File - Import), то есть надо сделать процедуру для кнопки, которая вызывала бы окно для выбора импортируемого файла.

Для примера скажу, что для открытия файла (векторного файла Corel, File - Open) все происходит следующим образом:

    Dim doc1 As Document
    Set doc1 = OpenDocument("С:\рисунок.cdr")

При этом открывается рисунок.cdr
Если вместо пути к рисунку укзать пустые кавычки,

    Dim doc1 As Document
    Set doc1 = OpenDocument("")

то скрипт открывает окошко для выбора открываемого файла
Для импорта, как мы видим выше используется метод ImportEx или практически аналогичный ему метод Import, которые на простое указывание кавычек начинают грязно материться.

Может быть кто-нить что-нить скажет по этому поводу...
Есть ли другие методы, позволяющие импортировать файл?

Замечу, что конечный результат должен представлять собой не сам файл, а только путь к нему, записанный в TextBox.
То есть сам импортируемый файл я все равно потом с листа удалю, а вот путь к нему нужно прописать (для дальнейшей работы макроса) Кстати, это надо сделать как можно проще и нагляднее, чтобы юзер этого макроса ниоткуда этот путь не копировал (что в принципе решает проблему =)), а просто выбирал файл.

Тому, кто дочитал все это - уже спасибо, долго читали =), думаю, что достаточно подробно все объяснил,
надеюсь на помощь =Ъ

Ответить

  Ответы Всего ответов: 2  

Номер ответа: 1
Автор ответа:
 Дмит



Вопросов: 11
Ответов: 160
 Web-сайт: dimit.pochta.ru
 Профиль | | #1
Добавлено: 06.05.06 10:38
Я незнаю Corel, но шестое чувство подсказывает что:
str=Application.GetOpenFilename()
поможет

Ответить

Номер ответа: 2
Автор ответа:
 ofile



ICQ: 11750095 

Вопросов: 5
Ответов: 15
 Профиль | | #2 Добавлено: 06.05.06 16:38
урррря, народ, вот сделал сам:


Private Sub CommandButton3_Click()
Dim cst As Object
 Dim FilePath As String
 Set cst = CorelScriptTools
 FilePath = cst.GetFileBox()
 If FilePath <> "" Then
  If cst.FileAttr(FilePath) = 0 Then
   MsgBox "Некорректное имя файла"
  Else
 TextBox4 = FilePath
 End If
 End If
End Sub


подозреваю, что данный способ работает и в экселе, пользуйтесь

Ответить

Страница: 1 |

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам