Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Excel
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 23.12.2012, 21:57   #1
Antoshkaswimm
Новичок
Джуниор
 
Регистрация: 17.12.2012
Сообщений: 2
По умолчанию Диалоговое окно

Добрый вечер. Помогите решить проблему, пишу макрос для autocad работающий с документом Excel. необходимо реализовать диалоговое окно для выбора фала Excel,
Код:
 FileEx = Application.GetOpenFilename("Excel Files (*.xls), *.xls")
В результате получаю ошибку : Object doesn't support this property or method . Помогите пожалуйста
Antoshkaswimm вне форума Ответить с цитированием
Старый 23.12.2012, 22:45   #2
IgorGO
Новичок
СтарожилДжуниор
 
Аватар для IgorGO
 
Регистрация: 05.02.2008
Сообщений: 9,487
По умолчанию

а Application это у Вас кто? Автокад иди Ексел? полагаю Автокад и полагаю у него нет метода GetOpenFilename.
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете
IgorGO вне форума Ответить с цитированием
Старый 23.12.2012, 22:48   #3
doober
Старожил
 
Аватар для doober
 
Регистрация: 02.05.2009
Сообщений: 3,907
По умолчанию

Игорь,ты прав.
Только так можно окно вызвать.
Код:
Private Type OPENFILENAME
    lStructSize As Long
    hwndOwner As Long
    hInstance As Long
    lpstrFilter As String
    lpstrCustomFilter As String
    nMaxCustFilter As Long
    nFilterIndex As Long
    lpstrFile As String
    nMaxFile As Long
    lpstrFileTitle As String
    nMaxFileTitle As Long
    lpstrInitialDir As String
    lpstrTitle As String
    flags As Long
    nFileOffset As Integer
    nFileExtension As Integer
    lpstrDefExt As String
    lCustData As Long
    lpfnHook As Long
    lpTemplateName As String
End Type

Private Declare Function GetOpenFileName Lib "comdlg32.dll" Alias "GetOpenFileNameA" (pOpenfilename As OPENFILENAME) As Long
Function OpenFile()
    Dim ofn As OPENFILENAME
    ofn.lStructSize = Len(ofn)
    
    ofn.lpstrFilter = "Excel Files (*.xls*)" + Chr$(0) + "*.xls*"
    ofn.lpstrFile = Space$(254)
    ofn.nMaxFile = 255
    ofn.lpstrFileTitle = Space$(254)
    ofn.nMaxFileTitle = 255
    ofn.lpstrInitialDir = CurDir
    ofn.lpstrTitle = "Ищем входной файл"
    ofn.flags = 0
    Dim a
    a = GetOpenFileName(ofn)
    
    If (a) Then
       OpenFile = Trim$(ofn.lpstrFile)
    Else
        
    End If
End Function
Анализ,обработка данных Недорого
doober вне форума Ответить с цитированием
Старый 23.12.2012, 23:01   #4
Antoshkaswimm
Новичок
Джуниор
 
Регистрация: 17.12.2012
Сообщений: 2
По умолчанию

Спасибо большое!
Antoshkaswimm вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Диалоговое окно ServerSocket1 aank10 C++ Builder 7 12.04.2012 13:59
Диалоговое окно из ресурса Bludodey Visual C++ 0 12.10.2011 06:39
Диалоговое окно Busine2009 Microsoft Office Word 0 01.08.2009 09:15
Диалоговое окно Михаил Юрьевич Общие вопросы Delphi 11 01.06.2009 20:31
Диалоговое окно Beggins Общие вопросы C/C++ 3 09.05.2008 05:03